>  기사  >  Java  >  Spark-Submit을 사용하여 Spark 작업에 JAR 파일을 추가하려면 어떻게 해야 하며 클래스 경로는 어떻게 작동합니까?

Spark-Submit을 사용하여 Spark 작업에 JAR 파일을 추가하려면 어떻게 해야 하며 클래스 경로는 어떻게 작동합니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-11 04:34:02245검색

How do I Add JAR Files to a Spark Job with Spark-Submit and How Does the Classpath Work?

Spark-Submit을 사용하여 Spark 작업에 JAR 파일 추가

ClassPath 효과

사용 extraClassPath 또는 --driver-class-path는 드라이버 노드에 대한 클래스 경로를 설정하고, Spark.executor.extraClassPath는 작업자 노드에 대해 이를 설정합니다. JAR이 두 가지 모두에 영향을 미치게 하려면 두 구성 모두에서 이를 지정하십시오.

구분 문자

사용되는 구분 기호는 운영 체제에 따라 다릅니다.

  • Linux: 콜론(:)
  • Windows: 세미콜론(;)

파일 배포

클라이언트 모드에서 파일은 다음을 통해 배포됩니다. HTTP 서버. 클러스터 모드에서는 HDFS 또는 기타 공유 저장소를 통해 작업자가 사용할 수 있어야 합니다.

URI 유형

허용되는 URL 구성표는 다음과 같습니다.

  • file: - 드라이버의 HTTP 서버에서 제공
  • hdfs:, http:, https:, ftp: - 직접 파일 가져오기
  • local: - 파일이 각 작업자 노드에 있다고 가정

영향을 받는 옵션

  • --jars(또는 SparkContext.addJar): 클래스 경로를 수정하지 않고 JAR을 추가합니다.
  • --conf Spark.driver.extraClassPath: 드라이버 클래스 경로에 JAR을 추가합니다.
  • --conf Spark.driver.extraLibraryPath: 외부 경로에 경로를 추가합니다. 드라이버용 라이브러리.
  • --conf Spark.executor.extraClassPath: 작업자 클래스 경로에 JAR을 추가합니다.
  • --conf Spark.executor.extraLibraryPath : 작업자를 위한 외부 라이브러리에 경로를 추가합니다.

우선순위

SparkConf에 직접 설정된 값은 플래그 또는 Spark 제출 옵션보다 우선합니다.

단순성을 위해

클라이언트 모드에서는 다음을 사용하여 드라이버와 작업자 모두에 대한 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

클러스터 모드에서 그러나 공유 스토리지 시스템을 통해 JAR에 액세스할 수 있는지 확인하세요.

위 내용은 Spark-Submit을 사용하여 Spark 작업에 JAR 파일을 추가하려면 어떻게 해야 하며 클래스 경로는 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.