2016-11-12 1 views
0

인 경우 스파크 제출을 사용하여 arugments로 작업을 실행합니다. 인수 args.foreach (println)를 인쇄하려고하면 "PROD"를 건너 뛰고 "/ tmp"와 "A-1"만 출력합니다.spark-submit 명령 줄 arugments이

아이디어가 있으십니까? 감사합니다

spark-submit \ 
--class "com.Main" \ 
--master yarn-client \ 
--num-executors 4 \ 
--driver-memory 16g \ 
--executor-cores 10 \ 
--executor-memory 6g \ 
--jars main.jar PROD /tmp A-1 2>&1 | tee ./log 

감사합니다. 당신이 당신의 클러스터에 main.jar를 전송하려는 촉발했다 --jars 국기와 함께

+1

질문에 코드를 게시 할 수 있습니까? – Shankar

답변

0

(나는 main.jar 당신의 불꽃 응용 프로그램입니다 가정).

spark-submit를 사용하여, 자동 클러스터로 전송됩니다 --jars 옵션에 포함 어떤 항아리와 함께 응용 프로그램 항아리 . --jars 뒤에 제공된 URL은 쉼표로 구분해야합니다.

스파크는 아마도 응용 프로그램으로 PROD을 가정하므로이 인수를 건너 뜁니다. 당신이 인수 여전히 문제 (슬래시, 파이프 라인과 같은 이상한 문자가 ...)이있는 경우 따옴표를 사용하려고 할 수

spark-submit \ 
--class "com.Main" \ 
--master yarn-client \ 
--num-executors 4 \ 
--driver-memory 16g \ 
--executor-cores 10 \ 
--executor-memory 6g \ 
main.jar PROD /tmp A-1 2>&1 | tee ./log 

을 :

대신이 시도 main.jar PROD "/tmp" "A-1 2>&1 | tee ./log"을하고 main에가 있어야한다 :

args(0) -- PROD 
args(1) -- /tmp 
args(2) -- A-1 2>&1 | tee ./log 
+0

제거됨 - jar, 효과가있었습니다. 감사 – user1615666