Spark
configurations page提到了大量可调设置。但是,如here所述,SparkSubmitOptionParser
属性的Spark
属性名称可能与该属性的名称不同 EM>
例如,spark.executor.cores
在--executor-cores
中作为spark-submit
传递。
我在哪里可以找到Spark
的所有调整参数的详尽列表(及其SparkSubmitOptionParser
属性名称),可以通过spark-submit
传递命令?
答案 0 :(得分:3)
虽然 @ suj1th 的有价值的输入确实解决了我的问题,但我正在回答我自己的问题以直接解决我的问题。
您无需查找SparkSubmitOptionParser
的属性名称,即可获得给定Spark
属性(配置设置)。两者都会做得很好。但请注意,使用情况之间存在细微差别,如下所示:
spark-submit --executor-cores 2
spark-submit --conf spark.executor.cores=2
上面显示的两个命令都会产生相同的效果。第二种方法采用格式为--conf <key>=<value>
。
将值括在引号中(如果这不正确/不完整,请更正我)
(i)价值不必用任何类型的引号(单''
或双""
)括起来(如果你愿意,你还可以)。
(ii)如果该值具有space
字符,请将整个内容括在""
的双引号"<key>=<value>"
中,如here所示。
对于可以与spark-submit
一起传递的所有配置的综合列表,只需运行spark-submit --help
在 @ suj1th 提供的this link中,他们说:
在SparkConf上显式设置的配置值最高 优先级,然后传递给spark-submit的标志,然后是值中的值 默认文件。
如果您不清楚配置选项的来源, 您可以通过运行打印出细粒度的调试信息 使用--verbose选项进行spark-submit。
以下来自Spark
文档的两个链接列出了很多配置:
答案 1 :(得分:0)
在您的情况下,您应该实际从文件加载配置,如document中所述,而不是将它们作为标记传递给spark-submit
。这减轻了将SparkSubmitArguments
映射到Spark配置参数的开销。引用上述文件:
以这种方式加载默认Spark配置可以避免对
spark-submit
的某些标志的需要。例如,如果设置了spark.master属性,则可以安全地省略--master
中的spark-submit
标记。通常,在SparkConf
上显式设置的配置值采用最高优先级,然后传递给spark-submit
的标志,然后是默认文件中的值。