ホームページ >Java >&#&チュートリアル >Spark-Submit を使用して JAR ファイルを Spark ジョブに追加する方法とクラスパスはどのように機能しますか?

Spark-Submit を使用して JAR ファイルを Spark ジョブに追加する方法とクラスパスはどのように機能しますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-11 04:34:02253ブラウズ

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 spar.driver.extraClassPath: ドライバーのクラスパスに JAR を追加します。
  • --conf spak.driver.extraLibraryPath: 外部へのパスを追加しますドライバーのライブラリ。
  • --conf spar.executor.extraClassPath: JAR をワーカー クラスパスに追加します。
  • --conf spar.executor.extraLibraryPath : ワーカーの外部ライブラリへのパスを追加します。

優先度

SparkConf に直接設定された値は、フラグや Spark-submit オプションよりも優先されます。

わかりやすくするために

クライアント モードでは、次のコマンドを使用してドライバーとワーカーの両方に 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 を使用して JAR ファイルを Spark ジョブに追加する方法とクラスパスはどのように機能しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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