> Java > java지도 시간 > 본문

Spark-submit을 사용하여 Spark 작업에 JAR 파일을 추가하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-11-09 22:59:02
원래의
540명이 탐색했습니다.

How to add JAR files to a Spark job using spark-submit?

spark-submit을 사용하여 Spark 작업에 JAR 파일을 추가하는 방법

배경:

Spark-submit은 Spark 애플리케이션을 제출하는 데 사용되는 명령줄 도구입니다. 이를 통해 사용자는 애플리케이션의 클래스 경로에 JAR 파일을 추가하는 등 다양한 옵션을 지정할 수 있습니다.

클래스 경로 및 JAR 배포:

  • ClassPath: 다음을 통해 추가된 JAR 파일 Spark-submit 옵션(--driver-class-path, --conf Spark.driver.extraClassPath, --conf Spark.executor.extraClassPath)은 드라이버 또는 실행기 노드의 클래스 경로를 수정합니다.
  • JAR 배포: --jars 또는 SparkContext.addJar 메소드를 통해 추가된 JAR 파일은 작업자 노드에 자동으로 배포됩니다.

옵션 분석:

1. --jars vs SparkContext.addJar

  • 이 두 옵션 모두 애플리케이션의 클래스 경로에 JAR 파일을 추가하는 동일한 기능을 수행합니다. 그러나 이들은 다른 컨텍스트에서 사용됩니다.

    • --jars: Spark-submit 명령줄 중에 사용됩니다.
    • SparkContext.addJar: Spark 애플리케이션 내에서 프로그래밍 방식으로 사용됩니다.

2. SparkContext.addJar 대 SparkContext.addFile

  • SparkContext.addJar: 애플리케이션 코드에서 사용하는 종속성을 포함하는 JAR 파일을 추가합니다.
  • SparkContext.addFile: 임의 파일을 추가합니다. 애플리케이션 코드에서 직접 사용할 수 없는 파일(예: 구성 파일, 데이터 파일)

3. --driver-class-path 대 --conf Spark.driver.extraClassPath

  • 드라이버 노드의 클래스 경로에 추가 JAR 파일을 지정하는 별칭.

4. --driver-library-path 대 --conf Spark.driver.extraLibraryPath

  • 드라이버 노드의 추가 라이브러리에 대한 경로를 지정하는 별칭.

5. --conf Spark.executor.extraClassPath

  • 실행기 노드의 클래스 경로에 추가 JAR 파일을 지정합니다.

6. --conf Spark.executor.extraLibraryPath

  • 실행기 노드의 추가 라이브러리에 대한 경로를 지정합니다.

동시에 여러 옵션 사용:

충돌하지 않는 한 여러 JAR 파일 추가 옵션을 동시에 사용해도 안전합니다. 그러나 JAR 파일은 클래스 경로에 있어야 하는 경우에만 extraClassPath 옵션에 포함되어야 합니다.

예:

다음 명령은 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
로그인 후 복사

추가 고려 사항:

  • --jars 또는 SparkContext.addJar를 사용하여 추가된 JAR 파일은 각 실행기 노드의 작업 디렉터리에 복사됩니다.
  • 작업 디렉터리의 위치는 일반적으로 /var/run/spark/work입니다. .
  • 불필요한 리소스 소비를 방지하려면 다양한 옵션에서 JAR 참조를 중복하지 마세요.

위 내용은 Spark-submit을 사용하여 Spark 작업에 JAR 파일을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!