sparkの5:プロファイル

2262 ワード

sparkの5:プロファイル


@(ブログ記事)[spark]

一、sparkのパラメータ設定方式


1、sparkプロファイルのロード順序


sparkは、(1)ユーザコードでset()メソッド設定を明示的に呼び出すオプション(2)spark-submitで渡されるパラメータ(3)プロファイルの値(4)sparkのデフォルト値
以下、それぞれの方法をご紹介します.

2、set()方法


val conf = new SparkConf() conf.set(“spark.app.name”, “ljh_test”) conf.set(“spark.master”,”yarn-client”) val sc = new SparkContext(conf)

3、spark-submit方式


bin/spark-submit –class com.lujinhong.MyTest –master yarn-client –name “ljh_test” myTest.jar

4、プロファイルの方式


(1)spark-defaults.conf


主にconf/spark-defaultsを指す.conf、例えば:
# For monitoring
spark.eventLog.enabled           true
spark.eventLog.dir               hdfs://mycluster/tmp/spark-events
spark.history.fs.logDirectory    hdfs://mycluster/tmp/spark-events
spark.yarn.historyServer.address 10.1.1.100:18080
spark.ui.showConsoleProgress     true
spark.history.kerberos.enabled   true
spark.history.kerberos.principal hadoop/[email protected]
spark.history.kerberos.keytab    /home/hadoop/conf/spark/spark.keytab

# For executor
spark.cores.max                  300
spark.driver.memory              2g
spark.executor.memory            6g
spark.executor.cores             6
spark.driver.extraJavaOptions -XX:PermSize=512M -XX:MaxPermSize=2048M

ファイルにはスペースで区切られたキー値のペアがあり、conf/spark-defaultsがデフォルトでロードされます.confは、spark-submitで–properties-fileでパスを指定することもできます.

(2)spark-env.sh


主に環境変数、特にYARN関連ディレクトリを指定するために使用されます.
#!/usr/bin/env bash
export SPARK_HOME=/home/hadoop/spark
export SPARK_LOG_DIR=/home/hadoop/logs
export SPARK_PID_DIR=/home/hadoop/pids
export YARN_CONF_DIR=/home/hadoop/conf
export HADOOP_CONF_DIR=/home/hadoop/conf

# for exporting for enviroment, such as lib/native
export JAVA_LIBRARY_PATH=$JAVA_LIBRARY_PATH:/home/hadoop/hadoop/lib/native
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/hadoop/hadoop/lib/native

(3)その他


他のプロファイルにはlog 4 jもある.properties, metircs.propertiesなど.

5、sparkのデフォルト