美文网首页
hive grouping sets 实现原理

hive grouping sets 实现原理

作者: 姜小嫌 | 来源:发表于2020-01-02 13:38 被阅读0次

    先下结论:

    看了hive 1.1.0 grouping sets 实现(从源码及执行计划都可以看出与kylin实现不一样),(前提是可累加,如sum函数)他并没有像kylin一样先按照group by 全字段聚合再上卷。
    hive实现就是无脑复制,可以理解成是 group by grouping sets 所有组合 然后 在union 起来(grouping sets会比后者少扫描grouping sets组合份原始数据。
    tez和sparksql grouping sets之所以快可能是跟kylin实现差不多,先汇总再上卷来减少数据无脑复制成本,这个spark实现有空可以看看)


    从执行计划就可以看出 hive grouping sets 实现相当于就一个stage,是做不到先聚合再上卷的。其实就是把原始数据复制grouping sets 组合份

    image

    相关文章

      网友评论

          本文标题:hive grouping sets 实现原理

          本文链接:https://www.haomeiwen.com/subject/wnxooctx.html