您提供了以下代码。
spark = SparkSession.builder .master("local[2]") .appName("test") .config("spark.driver.memory", "9g") # This will work (Not recommended) .getOrCreate()sc = spark.sparkContextfrom pyspark.sql import SQLContextsqlContext = SQLContext(sc)此配置不得
SparkConf直接通过
表示您可以设置驱动程序内存,但是不建议在 RUN TIME设置
。因此,如果使用进行设置
spark.driver.memory,它将接受更改并覆盖它。但是,不建议这样做。因此,该注释不得直接通过SparkConf设置此配置在文档中不适用。您可以使用告诉JVM用
9g驱动程序内存实例化自身(JVM)
SparkConf。
现在,如果您按此行进行操作( Spark可以使用此方法 )
相反,请通过–driver-memory进行设置,这意味着
当您尝试针对提交
Spark作业时
client,可以使用
--driver-memory标志设置驱动程序内存,例如
spark-submit --deploy-mode client --driver-memory 12G
现在,该行以以下短语结尾
或默认属性文件中。
你可以告诉
SPARK你的环境中读取默认设置
SPARK_CONF_DIR或
$SPARK_HOME/conf在
driver-memory可配置。
Spark也可以。
回答第二部分
如果文档正确,是否有正确的方法可以在配置后检查spark.driver.memory。我尝试了spark.sparkContext._conf.getAll()以及Spark
Web UI,但似乎导致了错误的答案。”
我想说的是正确的文档。您也可以使用或最终检查您指定的
spark.sparkContext._conf.getAll()工作原理来检查驱动程序内存。
>>> sc._conf.get('spark.driver.memory')u'12g' # which is 12G for the driver I have used总结一下文档。您可以在界面中设置“ spark.driver.memory”
spark-shell
,Jupyter Notebook
或已经初始化的任何其他环境Spark
( 不推荐 )。spark-submit
命令(推荐)SPARK_CONF_DIR
或SPARK_HOME/conf
(推荐)- 您可以先
spark-shell
指定
spark-shell --driver-memory 9G
有关更多信息,请参考
默认Spark属性文件



