LoginSignup
2
1

More than 5 years have passed since last update.

spark-assembly-*.jarがspark 2.0で廃止されたが、spark 2.0でも以前と同様にspark自身の配信をyarnを通して行う方法

Last updated at Posted at 2016-11-27

1.6の時に存在した spark-assembly-1.6.2-hadoop2.6.0.jar のような事前に準備されたuber jarは廃止された模様。
また、spark.yarn.jar パラメータも廃止された模様

その代わり、以下の設定を行う

  • spark.yarn.archive に jarが含まれているhdfsのパスを記述する
  • または、spark.yarn.jars に jar ファイルのリストを記述する

優先順位としては
1. spark.yarn.archive
2. spark.yarn.jars
の順序であり
上記のいずれも設定されていない場合は $SPARK_HOME/jars 内のファイルをzip化して勝手にhdfs上にアップロードして配信してくれる。
但し、毎回アップロードが走るため少し無駄が多い。
あらかじめ、事前にhdfs上にアップロードしておくことができればこの無駄な時間を削減できるが、それを行うのが spark.yarn.archivespark.yarn.jars であると言える。

例えば hdfs:///spark にsparkのjarをアップロードする場合。

事前準備
# spark jarのアップロード
$hdfs dfs -put $SPARK_HOME/jars /spark

# アップロードされていることの確認
$hdfs dfs -ls /spark
方法1 spark.yarn.archive に jarのパスを書く
$SPARK_HOME/conf/spark-defaults.conf
spark.yarn.archive hdfs:///spark 
方法2 spark.yarn.jars に jarファイルのリストを記述する
$SPARK_HOME/conf/spark-defaults.conf
spark.yarn.jars hdfs:///spark/*

動作確認(SparkPi)

$SPARK_HOME/bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode cluster \
$SPARK_HOME/examples/jars/spark-examples*.jar \
10

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1