hive group by


group by 操作:

1,Map端聚合:Map端进行部分聚合

hive.map.aggr用于设定是否在Map端进行聚合,默认hive.map.aggr=true,version:0.10.0

另外,hive.groupby.mapaggr.checkinterval=100000用于设定Map端进行聚合的操作条目

2,数据倾斜:

hive.groupby.skewdata设定是否在数据分布不均衡,即发生倾斜时进行负载均衡,当选项为hive.groupby.skewdata=true时,生成的查询计划会有两个MapReduce,在第一个MapReduce中,Map的输出结果会随机地分不到Reduce中,对Reduce做部分聚合操作并输出结果,是相同的Group by key有可能分发到

不同的reduce中,从而达到负载均衡的目的,第二个MapReduce任务在根据预处理的数据按照Group by key分不到Reduce中(保证Group by key 分布同一个Reduce),最后完成最终的聚合操作


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值