monster-s 2019-02-21 15:56 采纳率: 0%
浏览 896

spark 出现很严重的数据倾斜,跑批时间很长,有时候会报错

目前在开发一个统计指标的脚本,跑批出现了严重的数据倾斜,
图片说明

有时候报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分布不均导致的,请教各位大神,这是什么原因导致的?

  • 写回答

1条回答 默认 最新

  • shiter 人工智能领域优质创作者 2019-02-21 16:49
    关注

    你会不会是,某个物理节点物理空间满了?导致这个增多或者减少的问题

    找到下面这个链接似乎靠谱点:

    https://www.cnblogs.com/cssdongl/p/6594298.html

    可以尝试调整并行度,将节点资源变大或者减小

    评论

报告相同问题?

悬赏问题

  • ¥20 iqoo11 如何下载安装工程模式
  • ¥15 flask项目,怎么使用AJAX传数据库数据到echarts图表的data里,实现异步加载数据。
  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题