gpt4 book ai didi

python - Databricks异常: Total size of serialized results is bigger than spark. driver.maxResultsSize

转载 作者:行者123 更新时间:2023-12-03 02:43:15 27 4
gpt4 key购买 nike

我正在 Azure 上的 Apache Spark 中运行一段代码,该代码将超过 300 万个 XML 文件转换为一个 CSV 文件。当我想要执行此操作时,出现以下错误:

org.apache.spark.SparkException:作业因阶段故障而中止:1408098 个任务的序列化结果的总大小 (4.0 GB) 大于 Spark.driver.maxResultSize (4.0 GB)

我知道该错误的一般含义,但我不知道它在我的情况下意味着什么,并且我不明白如何解决此问题。

代码是:

加载所有 XML 文件:

df = spark.read.format('com.databricks.spark.xml').option("rowTag", "ns0:TicketScan").load('LOCATION/*.xml')

所有加载的文件都会放入 CSV 文件中:

 def saveDfToCsv(df, tsvOutput):
tmpParquetDir = "dbfs:/tmp/mart1.tmp.csv"
dbutils.fs.rm(tmpParquetDir, True)
df.repartition(1).write.format("com.databricks.spark.csv").option("header", "true").save(tmpParquetDir)
src = filter(lambda x: "part-00000" in x.name, dbutils.fs.ls('dbfs:/tmp/mart1.tmp.csv'))[0].path
dbutils.fs.mv(src, tsvOutput)

saveDfToCsv(df, 'LOCATION/database.csv')

我希望我的问题足够清楚。如果没有,请允许我进一步解释。

希望有人能帮助我。

致以诚挚的问候。

最佳答案

您需要在集群配置中更改此参数。进入集群设置,在“高级”下选择“spark”并粘贴 spark.driver.maxResultSize 0(无限制)或任何适合您的值。不建议使用 0。您应该通过重新分区来优化作业。

关于python - Databricks异常: Total size of serialized results is bigger than spark. driver.maxResultsSize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53067556/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com