为什么驱动程序内存不在我的 Spark 上下文配置中?
Why driver memory is not in my Spark context configuration?
当我运行以下命令时:
spark-submit --name "My app" --master "local[*]" --py-files main.py --driver-memory 12g --executor-memory 12g
在我的 main.py
中使用以下代码:
sc = SparkContext.getOrCreate()
print(sc.getConf().getAll())
驱动程序内存和执行程序内存未出现在配置中。即使我处于本地模式,我想我至少应该在配置中包含驱动程序内存。
知道为什么不是这样吗?
您的提交命令不正确。 confs 应该出现在 .py
文件之前。见 Launching Applications with spark-submit:
./bin/spark-submit \
--class <main-class> \
--master <master-url> \
--deploy-mode <deploy-mode> \
--conf <key>=<value> \
... # other options
<application-jar> \
[application-arguments]
[...] For Python applications, simply pass a .py
file in the place of <application-jar>
instead of a JAR, and add Python .zip
, .egg
or .py
files to the search path with --py-files
.
这么说,你的命令应该是这样的:
spark-submit --name "My app" \
--master "local[*]" \
--driver-memory 12g \
--conf spark.executor.memory=12g \
/path_to/main.py
当我运行以下命令时:
spark-submit --name "My app" --master "local[*]" --py-files main.py --driver-memory 12g --executor-memory 12g
在我的 main.py
中使用以下代码:
sc = SparkContext.getOrCreate()
print(sc.getConf().getAll())
驱动程序内存和执行程序内存未出现在配置中。即使我处于本地模式,我想我至少应该在配置中包含驱动程序内存。
知道为什么不是这样吗?
您的提交命令不正确。 confs 应该出现在 .py
文件之前。见 Launching Applications with spark-submit:
./bin/spark-submit \ --class <main-class> \ --master <master-url> \ --deploy-mode <deploy-mode> \ --conf <key>=<value> \ ... # other options <application-jar> \ [application-arguments]
[...] For Python applications, simply pass a
.py
file in the place of<application-jar>
instead of a JAR, and add Python.zip
,.egg
or.py
files to the search path with--py-files
.
这么说,你的命令应该是这样的:
spark-submit --name "My app" \
--master "local[*]" \
--driver-memory 12g \
--conf spark.executor.memory=12g \
/path_to/main.py