을 의견에 따라 경찰 : A와 설치 사용 GNU의 병렬 man parallel
종료 상태에서 http://git.savannah.gnu.org/cgit/parallel.git/tree/README
의 설명에 따라 개인 또는 최소 설치
Exit status depends on --halt-on-error if one of these are used: success=X,
success=Y%, fail=Y%.
0 All jobs ran without error. If success=X is used: X jobs ran without
error. If success=Y% is used: Y% of the jobs ran without error.
1-100 Some of the jobs failed. The exit status gives the number of failed jobs.
If Y% is used the exit status is the percentage of jobs that failed.
101 More than 100 jobs failed.
255 Other error.
작업이 실패했는지 여부가 아닌 정확한 오류 코드가 필요하면 --joblog mylog
을 사용하십시오.
당신은 아마 같은 작업을 수행 할 수 있습니다
cat ../path/TableNames.txt |
parallel --colsep '\t' --halt now,fail=1 hive -hiveconf tableName={1} -f ../hive/LoadTables.hql '2>' ../path/LogFile-{1}
fail=1
하나의 작업이 실패 할 경우 새로운 일자리를 산란 중지하고 작업의 종료 코드로 종료됩니다.
now
은 나머지 작업을 종료합니다. 남은 작업을 "자연적인 원인"으로 종료하려면 soon
을 대신 사용하십시오.
GNU 병렬을 사용할 수없는 이유에 대해 자세히 설명해 주실 수 있습니까? 이유는 https://oletange.blogspot.dk/2013/04/why-not-install-gnu-parallel.html에서 다룹니까? –
정보 주셔서 감사합니다. 우리는 gnu를 병렬로 설치해야한다고 생각 했었습니다. (소프트웨어를 설치하는 것은 허용되지 않습니다). 병렬 파일을 복사하여 사용하는 옵션이 있다는 것을 깨닫지 못했습니다. – snate
우리 환경에서 gnu가 병렬로 설치되었습니다. 현재 위의 스크립트는 xargs를 사용합니다. 어떻게 병렬로 바꾸고, 플랫 파일을 구문 분석하고, 각 행에 대해 같은 작업을 수행하고, 종료 상태 캡처와 병렬로 하이브 스크립트를 실행하고 논리를 실패합니다. 감사. – snate