数据开发
一、任务优化
1.1 数据倾斜原因及解决方法
a. 数据倾斜的表现
任务执行慢、 资源浪费、OOM或任务失败。
b. 数据倾斜产生原因
- 数据本身分布不均匀
- 长尾分布、热点数据
- Key设计不合理
- 基数过低:按照男、女,只有2个key; 按照地区分组, 一线城市 数据量过大,其他城市数据小
- 好的Key设计:高基数、分布均匀、并行度高。
- 空值或特殊值
NUll值倾斜、特殊值倾斜。
- 空值或特殊值
- JOIN操作倾斜
- 大表JOIN大表:
- 数据膨胀。
「5.Group BY 倾斜」
按某个字段分组聚合, 某个Key的数据量特别大。
示例:统计每个用户的行为次数。 普通用户100次;活跃用户:100万次(刷单、爬虫)。 活跃用户的Task特别慢