spark-submit을 사용하여 Spark 작업에 JAR 파일 추가
모호한 세부정보
다음 세부정보는 이전에 명확하지 않거나 생략되었습니다. ~에 문서:
-
ClassPath: --driver-class-path 및 --conf Spark.driver.extraClassPath는 드라이버 클래스 경로에 영향을 주고 --conf Spark.executor.extraClassPath는 드라이버 클래스 경로에 영향을 줍니다. Executor 클래스 경로.
-
구분 문자: Linux는 콜론(:)을 사용하고 Windows는 세미콜론(;).
-
배포:
- 클라이언트 모드: JAR은 드라이버 노드의 서버에 의해 HTTP를 통해 배포됩니다.
- 클러스터 모드: JAR은 HDFS를 통해 작업자 노드에서 수동으로 사용할 수 있도록 설정해야 합니다. 유사합니다.
-
URI: "file:/" 구성표는 드라이버 HTTP 서버에서 제공되는 반면 "hdfs", "http", "ftp" 풀 파일은 URI에서 직접. "local:/"은 파일이 이미 각 작업자 노드에 있다고 가정합니다.
-
파일 위치: JAR은 각 작업자 노드의 작업 디렉터리(일반적으로 /var/run/spark/work)에 복사됩니다. ).
영향을 받음 옵션
우선순위가 가장 높은 것에서 가장 낮은 것까지의 옵션:
- 코드에 직접 설정된 SparkConf 속성
- spark-submit에 전달된 플래그
- 옵션 Spark-defaults.conf
옵션 분석
-
--jars 대 SparkContext.addJar: 이는 추가와 동일합니다. JAR 종속성.
-
SparkContext.addJar 대 SparkContext.addFile: 종속성을 위한 addJar, 임의 파일을 위한 addFile.
-
DriverClassPath 옵션: --driver-class-path 및 --conf Spark.driver.extraClassPath는 별칭입니다.
-
DriverLibraryPath 옵션: --driver-library-path 및 --conf Spark.driver.extraLibraryPath는 java.library.path를 나타내는 별칭입니다.
-
Executor ClassPath: --conf 종속성에 대한 Spark.executor.extraClassPath
-
실행자 라이브러리 경로: --conf JVM 라이브러리용 Spark.executor.extraLibraryPath path.
JAR 파일 추가를 위한 안전한 연습
클라이언트 모드의 단순성을 위해 세 가지 주요 옵션을 모두 함께 사용하는 것이 안전합니다.
spark-submit --jars additional1.jar,additional2.jar \
--driver-class-path additional1.jar:additional2.jar \
--conf spark.executor.extraClassPath=additional1.jar:additional2.jar \
--class MyClass main-application.jar
로그인 후 복사
클러스터 모드에서는 HDFS를 통해 작업자 노드에 외부 JAR을 수동으로 추가해야 합니다.
위 내용은 Spark-Submit을 사용하여 Spark 작업에 JAR 파일을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!