有时候报java.lang.IllegalArgumentException: Size exceeds Integer.MAX_VALUE,但是分析sql里用到的key,在之前的商户号作为key的时候,差别也是最多的几百条,最少的几条,但是几百条的居多,以商户号和维度类别作为key的时候,分布如下
key条数正数5个
+---+---------------+--------------+
| 条数| merchant_id|statistic_type|
+---+---------------+--------------+
| 5| null| 5|
| 4|822100047220249| 5|
| 4|303300048120004| 5|
| 4|303450053310001| 5|
| 4|303650058130002| 5|
+---+---------------+--------------+
key条数倒数5个
+---+---------------+--------------+
| 条数| merchant_id|statistic_type|
+---+---------------+--------------+
| 1|822100051310533| 6|
| 1|822100059630118| 6|
| 1|822100052512420| 6|
| 1|822100055411357| 6|
| 1|822100058124973| 6|
+---+---------------+--------------+
,可是再task里,大部分都平均,就有某一个task数据量是其他的1000倍左右,看起来不像我group by的key分布不均导致的,请教各位大神,这是什么原因导致的?
你会不会是,某个物理节点物理空间满了?导致这个增多或者减少的问题
找到下面这个链接似乎靠谱点:
https://www.cnblogs.com/cssdongl/p/6594298.html
可以尝试调整并行度,将节点资源变大或者减小