浅谈grouping sets 使用及特点,最近工作中因业务需求,需提供多维度自定义联动,结合之前对with_cubes 的使用及思考记录相关内容。
grouping sets 使用注意点
一 : group by 中字段才能组合,建议算法中除表关联,关联条件外,其它部分去除别名,避免grouping sets 使用中识别失败。
二 :使用中,如遇到grouping sets 涉及字段,需要在插入中再做函数如:count(case when 条件 then a end) 情况时,会导致字段a在grouping sets 使用中失败,解决思路清洗中对插入字段重命名。
三 :若grouping sets 使用中只需要做一次聚合应写为,group by a,b,c,d grouping sets ((a,b)),因为单一括号是为 group by a union all group by b ,双括号则视为一个维度。
四 :若grouping sets 字段中有不规范数据和null值,会导致数据上浮,需要提前处理。
with_cube,当前使用hive版本经测试,维度超过4个则会报错,使用需注意。with cube 从模型角度更类似于普通魔方,三维立体。
工作中使用这2个函数较少,并没有细究原由,仅做记录在做探查。
浅谈hive之grouping sets 使用技巧
最新推荐文章于 2024-05-31 18:05:52 发布