为什么groupByKey操作总是有200个任务?

2023-12-11

每当我做一个groupByKey在 RDD 上,即使原始表非常大,它也会分为 200 个作业,例如2k 个分区和数千万行。

此外,该操作似乎陷入了最后两个任务,这两个任务的计算时间非常长。

为什么是200?如何增加它,会有帮助吗?


这个设置来自spark.sql.shuffle.partitions,这是分组时要使用的分区数,并且有一个默认设置为 200,但可以增加。这可能会有所帮助,它将依赖于集群和数据。

最后两个任务花费很长时间将是由于数据倾斜,这些键包含更多值。你能用吗reduceByKey / combineByKey而不是groupByKey,或者以不同的方式并行化问题?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么groupByKey操作总是有200个任务? 的相关文章

随机推荐