当我执行spark-submit时,会找到SPARK_HOME目录中设置的默认conf并将其加载到系统属性中。
我想停止加载默认值conf,只是获取命令行参数,这样我就可以在创建spark上下文之前重新排序spark的配置。
这可能吗?
答案 0 :(得分:1)
有几种方法可以修改配置。
Spark shell和spark-submit工具支持两种加载方式 配置动态。第一个是命令行选项,例如 如--master,如上所示。 spark-submit可以接受任何Spark 使用--conf标志的属性... 指定为flags或属性文件中的任何值都将传递给应用程序并与通过SparkConf指定的值合并。
这意味着你可以开始这样的工作:
./bin/spark-submit --conf spark.eventLog.enabled=false --conf "spark.executor.extraJavaOptions=-XX:+PrintGCDetails -XX:+PrintGCTimeStamps" myApp.jar
spark-defaults.conf
,而不必在spark-submit命令中传递其他标记。答案 1 :(得分:0)
这是我认为可以接受的解决方案:
创建一个空白的“blank.conf”文件,并使用--properties
将其提供给spark${SPARK_HOME}/bin/spark-submit --master local --properties-file "blank.conf" # etc
Spark将在其配置中使用conf而不是查找默认值conf。然后,您可以在创建SparkContext之前手动加载默认值conf,如果这是您的愿望。