1 个回答
如果在hive中使用Group By导致出现数据倾斜的问题,我们可以设置这两个参数来优化数据倾斜:
set hive.map.aggr = true
set hive.groupby.skewindata=true
发布于:2年前 (2023-03-17) IP属地:四川省
Hive在底层使用group by的时候会生成两个 MapReduce Job,启用groupby的负载均衡。
MapReduce1:Map 输出结果集随机分布到 每个Reduce 中,并在每个Reduce 部分聚合输出结果。导致相同的 Key 可能被分布到不同的 Reduce 中,从而达到负载均衡目的;
MapReduce2:基于预处理结果,根据GroupBy的 Key 分布到 Reduce 中,这过程保证相同的GroupBy Key被分布到同一个Reduce中,最后完成最终的聚合操作。
发布于:2年前 (2023-03-17) IP属地:四川省
我来回答
您需要 登录 后回答此问题!