Scala 如何阻止Spark加载默认值?
当我执行spark提交时,会找到spark_主目录中设置的默认配置,并将其加载到系统属性中 我想停止加载defaults conf,只获取命令行参数,以便在创建spark上下文之前重新排序spark的配置方式Scala 如何阻止Spark加载默认值?,scala,apache-spark,Scala,Apache Spark,当我执行spark提交时,会找到spark_主目录中设置的默认配置,并将其加载到系统属性中 我想停止加载defaults conf,只获取命令行参数,以便在创建spark上下文之前重新排序spark的配置方式 这可能吗?有几种方法可以修改配置 根据spark文档,您可以在运行时使用标志()修改配置: Spark shell和Spark submit工具支持两种加载方式 动态配置。第一个是命令行选项,例如 as--master,如上所示。spark submit可以接受任何spark 属性使用--
这可能吗?有几种方法可以修改配置
./bin/spark-submit --conf spark.eventLog.enabled=false --conf "spark.executor.extraJavaOptions=-XX:+PrintGCDetails -XX:+PrintGCTimeStamps" myApp.jar
spark defaults.conf
,而不必在spark submit命令中传递其他标志以下是我认为可以接受的解决方案: 创建一个空白的“blank.conf”文件,并使用--properties将其提供给spark
${SPARK_HOME}/bin/spark-submit --master local --properties-file "blank.conf" # etc
Spark将在其配置中使用conf,而不是查找默认conf。如果需要,您可以在创建SparkContext之前手动加载默认conf。您可以修改
Spark env.sh
和Spark defaults.conf
谢谢。不幸的是,这些对我来说不合适。我想让我们的程序通过这些属性、属性文件或默认配置(按该顺序)来配置spark。我想在spark提交之后处理属性文件(在我的主文件中)。最后,清除默认值也不会起作用,因为这是繁忙集群的默认值。spark shell应继续使用这些设置。。我更确定的是,如果不进行黑客攻击或修改源代码,“我想在spark提交后处理属性文件”--你是说你想在工作中更改spark配置属性吗?根据我的测试,似乎你可以按照你的意愿配置SparkConf。一旦你用SparkConf创建了你的SparkContext,就这样了,它就变成了石头。当然。。。你可以做你想做的,但是你必须担心什么时候——一旦一个上下文被实例化,这个上下文就会一直保持这种状态,直到你杀死它并实例化一个新的上下文,AFAIK