3

我在 emr 中使用 Jupyter notebook 来处理大量数据。在处理数据时,我看到了这个错误:

An error occurred while calling z:org.apache.spark.api.python.PythonRDD.collectAndServe.
: org.apache.spark.SparkException: Job aborted due to stage failure: Total size of serialized results of 108 tasks (1027.9 MB) is bigger than spark.driver.maxResultSize (1024.0 MB)

看来我需要更新 spark 配置中的 maxResultsSize 。如何从 jupyter notebook 设置 spark maxResultsSize。

已经查看了这篇文章:Spark 1.4 increase maxResultSize memory

另外,在 emr notebook 中,已经给出了 spark 上下文,有没有办法编辑 spark 上下文并增加 maxResultsSize

任何线索都会非常有帮助。

谢谢

4

1 回答 1

8

您可以在 spark 会话开始时设置 livy 配置请参阅https://github.com/cloudera/livy#request-body

将其放在代码的开头

%%configure -f
{"conf":{"spark.driver.maxResultSize":"15G"}}

通过在下一个单元格中打印来检查会话设置:

print(spark.conf.get('spark.driver.maxResultSize'))

这应该可以解决问题

于 2020-05-21T01:34:00.710 回答