spark.conf.set("spark.driver.maxResultSize", '6g') 没有更新默认值 - PySpark

0 人关注

我试图将 spark.driver.maxResultSize 的值更新为 6g,但该值没有得到更新。

spark.conf.set("spark.driver.maxResultSize", '6g')

注意:我是在Azure Databricks Notebook中运行这个命令。

1 个评论
如果我的答案对你有帮助,你可以接受它作为答案(点击答案旁边的复选标记,将其从灰色变为填入)。这对其他社区成员来说是有益的。谢谢你。
apache-spark
pyspark
azure-databricks
Kiruparan Balachandran
Kiruparan Balachandran
发布于 2020-07-15
3 个回答
napoleon_borntoparty
napoleon_borntoparty
发布于 2020-07-15
0 人赞同

Spark 2.0以上版本 中,你应该能够使用 SparkSession.conf.set 方法来在运行时设置一些配置选项,但它主要限于SQL配置。由于你试图更新 spark.driver conf ,你需要 SparkSession.builder.getOrCreate 用你的新 conf 创建新的会话(如果你有一个正在运行)。比如说。

import pyspark
sc = spark.sparkContext
conf = pyspark.SparkConf().setAll([("spark.driver.maxResultSize", '6g')])
# here you stop the old spark context with old conf
sc.stop()
sc = pyspark.SparkContext(conf=conf)

另外,你可以直接用预定义的配置来getOrCreate新的会话,例如从YAML文件或代码中获取。然后你可以用以下方法检查新的配置文件

sc.getConf().getAll()
CHEEKATLAPRADEEP-MSFT
CHEEKATLAPRADEEP-MSFT
发布于 2020-07-15
0 人赞同

你在单一配额中使用了不正确的数值声明,应该是双引号。

spark.conf.set("spark.driver.maxResultSize", '6g') 

请把它改成。

spark.conf.set("spark.driver.maxResultSize", "6g")
dsk
dsk
发布于 2020-07-15
0 人赞同

你可以试试这个方法,看看你的驱动程序的当前最大尺寸

sqlContext.getConf("spark.driver.maxResultSize")