由于火花偏斜,胶水作业失败

时间:2021-03-15 02:16:34

标签: apache-spark

我的 spark 作业有一个偏斜问题,其中两个分区有十亿多条记录,而其他分区有数百万条记录。如果我删除具有 20 亿条记录的分区,作业运行良好,但会因它们而失败。除了盐渍,还有其他方法可以帮助这里吗?

数据

|合同|计数|


|A| 2205181264|

|B| 2094348180|

|C| 448206125|

|D| 410970798|

如果我删除合同 A 和 B,作业将运行而不会出现任何问题。如果我添加合约 A 和 B,盐化因子为 100 或 500,我会得到错误:大小超过 Integer.MAX_VALUE,这是当 shuffle 块大小大于 2gb 时的错误。 以下是我使用的其他 spark 配置:

--spark.yarn.executor.memoryOverhead=4096

--conf spark.yarn.executor.memory=8g

--conf spark.sql.shuffle.partitions=1600

--conf spark.yarn.driver.memoryOverhead=6g

0 个答案:

没有答案