相关链接: 记录一次企业级数据倾斜发现、分析、处理和解决的实操
此次数据倾斜原因与上次case大差不大过程就不多叙述了, 直接上优化成果
可以看到任务调度从近6小时 -> 13分钟
例子:
-- 原关联sql
on undone.source_order_id = order_d.qunar_order_id
-- 修改后的关联sql `order_id是不重复的id`
on if(undone.source_order_id = '', concat('sql_hive', undone.order_id), undone.source_order_id) = order_d.qunar_order_id -- 处理数据倾斜