hive union底层原理,union与union all再group by的性能对比

本文对比了hive中union与union all后再group by的性能。测试显示,union all结合group by在MR任务上减少了两次reduce操作,拥有更少的总任务数(862个),相比union的1488个任务数,性能更优。因此,当需要合并去重时,使用union all再group by的方式更为高效。
摘要由CSDN通过智能技术生成

union:将多个结果集合并为一个结果集,结果集去重。

union all:将多个结果集合并为一个结果集,结果集不去重。

本次测试将四份数据去重合并,其中一份数据使用了grouping sets,所以这份数据是单独进行了一次reduce。

两种写法:一种是采用union的方法,另一种是采用union all再进行group by的方法(将不去重的结果集利用group by去重)。

接下来直接看执行逻辑图和map、reduce个数。

第一种写法union:

第二种写法union all再group by:

首先从执行逻辑图就可以看出来union all再group by转换为mr后的执行步骤要少了两次reduce。再对比map、reduce个数,map个数是一样

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值