Spark參數設置的方式


可以通過以下幾種方式設置:

1)bin/spark-submit 可以直接讀取conf/spark-defaults.conf文件

每一行為一個key和value
spark.master            spark://5.6.7.8:7077
spark.executor.memory   4g
spark.eventLog.enabled  true
spark.serializer        org.apache.spark.serializer.KryoSerializer
Spark之參數介紹

2)在spark-submit or spark-shell運行時指定參數

2.1)--conf     PROP=VALUE     固定的spark配置屬性

./bin/spark-submit --name "My app" --master local[4] --conf spark.eventLog.enabled=false
  --conf "spark.executor.extraJavaOptions=-XX:+PrintGCDetails -XX:+PrintGCTimeStamps" myApp.jar

2.2)--properties-file     FILE     加載額外屬性的文件

如果要使用--properties-file的話,在--properties-file中定義的屬性就不必要在spark-sumbit中再定義了,比如在conf/spark-defaults.conf 定義了spark.master,就可以不使用--master了。
關於Spark屬性的優先權為:SparkConf方式 > 命令行參數方式 >文件配置方式,最終的參數為3者的merge

3)編碼方式:SparkConf中指定

3.1)硬編碼方式:

var conf =new SparkConf()
conf.set("spark.eventLog.enabled","true")
val sc = new SparkContext()
備注:可以創建空conf

3.2)spark-submit ... --application-arguments方式:

./bin/spark-submit \
  --class <main-class>
  --master <master-url> \
  --deploy-mode <deploy-mode> \
  --conf <key>=<value> \
  ... # other options
  <application-jar> \
  [application-arguments]

備注:application-arguments可以指定具體的參數值,也可以指定具體的配置文件。


參考:

https://blog.csdn.net/hjw199089/article/details/72716607
https://www.jianshu.com/p/9b243c0a7410
http://blog.javachen.com/2015/06/07/spark-configuration.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM