ホームページ  >  記事  >  Java  >  「spark-submit」を使用して Spark JAR ファイルの依存関係を管理するにはどうすればよいですか?

「spark-submit」を使用して Spark JAR ファイルの依存関係を管理するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-18 04:42:02313ブラウズ

How do I manage Spark JAR file dependencies with

「spark-submit」による Spark JAR ファイル管理について理解する

Spark ジョブへの JAR ファイルの追加

「spark を使用して Spark ジョブを送信する場合」 -submit」の場合、追加の JAR ファイルを追加するための複数のオプションがあります:

ClassPath

「--driver-class-path」や「--spark.executor.extraClassPath」などのオプションが使用されますクラスパスを変更します。 JAR を ClassPath に追加すると、コードでその JAR 内のクラスを検索してロードできるようになります。

区切り文字

ClassPath 設定内の複数の JAR ファイルの区切り文字は、オペレーティング システムによって異なります。 Linux ではコロン (':') ですが、Windows ではセミコロン (';') です。

ファイル配布

「--jars」または「」を介して追加された JAR ファイルSparkContext.addJar()」は、クライアント モードのすべてのワーカー ノードに自動的に配布されます。クラスター モードでは、HDFS や S3 などの外部ソースを介してすべてのノードから JAR ファイルにアクセスできることを確認する必要があります。 「SparkContext.addFile()」は、依存関係のないファイルを配布するのに役立ちます。

受け入れられるファイル URI

「spark-submit」は、ローカル ファイル パス、HDFS などのさまざまな URI スキームを使用して JAR ファイルを受け入れます。 、HTTP、HTTPS、および FTP。

コピー場所

追加の JAR ファイルは、ワーカー ノード上の各 SparkContext の作業ディレクトリ (通常は "/var/run/spark/work. "

オプションの優先順位

SparkConf に直接設定されたプロパティが最も優先され、次に「spark-submit」に渡されるフラグ、次に「spark-defaults.conf」のオプションが続きます。

特定のオプションの役割

  • --jars、SparkContext.addJar(): JAR ファイルを追加しますが、ClassPath は変更しません。
  • --driver-class-path、spark.driver.extraClassPath: JAR ファイルをドライバーの ClassPath に追加します。
  • --driver-library-path、spark.driver。 extraLibraryPath: ドライバーのライブラリ パス設定を変更します。
  • **--conf spar.executor.extraClassPath`: JAR ファイルをエグゼキューターの ClassPath に追加します。
  • **--conf spar.executor。 extraLibraryPath`: エグゼキューターのライブラリ パス設定を変更します。

オプションの組み合わせ

クライアント モードでは、複数のオプションを使用してドライバー ノードとワーカー ノードの両方に JAR ファイルを追加するのが安全です。ただし、クラスター モードでは、すべてのワーカー ノードで JAR ファイルを確実に利用できるようにするために、追加の方法を使用する必要がある場合があります。

以上が「spark-submit」を使用して Spark JAR ファイルの依存関係を管理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。