Apache Spark 减少星火任务

pftdvrlh  于 2022-12-30  发布在  Apache
关注(0)|答案(1)|浏览(118)

我正面临一个问题,Spark启动了近2,000个执行器,保存数据需要很长时间,而所有的转换都已经完成了。
在合理的时间范围内完成写入之前显示 Dataframe ,但写入文件需要很长时间。
Spark writedag
我试过改变执行器的数量,集群大小,重新分区,合并。看起来像是写很多小文件的问题。但是,df. coalce(1). write.也需要很长的时间。
有什么东西在达格寻找?

btxsgosb

btxsgosb1#

你只有16个执行者,你有大约2000个任务需要这些执行者完成。你应该看看你是否启用了自适应查询。

spark.databricks.optimizer.adaptive.enabled

Type: Boolean

Non Databricks version
设置("已启用Spark. sql.自适应",真)
这将自动减少写入的文件数量,如果它检测到它们足够小,可以合并(需要配置),或者帮助您处理Skew(需要配置),如果这是一个问题。

相关问题