1、业务背景

最近接到的一个比较刁的体系建设需求,需求背景简述:一个功能有新老两个版本,每个功能可以通过AB两个方式进到功能中使用,其中A方式又可以细分成A1、A2、A3三个口子。

拆分方式是按三层来拆,按第一层是新老的拆分的同时,也能按第一层是进入方式来拆 以拆分维度日活为例
具体的拆分方式可见下表:

2、解决方法介绍

目前的想到的可以用的解决方案是通过group setings中的with cube来获取
展开之前,笔者先介绍下grouping setings的使用笔记,不足之处,望多多指正。

  • 一句话概括:group seting的使用方式是多个group by进行union all操作的简单表达;
  • 常见的使用语法:
-- 使用方法1
group seting(a,b)、
-- 等价于
group by a union all group by b--WITH ROLLUP使用方法(类似取含a的所有排列组合)
select a, b, c from table group by a, b, c WITH ROLLUP;
-- 等价于
select a, b, c from table group by a, b, c
GROUPING SETS((a,b,c),(a,b),(a),());-- with cube使用方法(类似取所有的排列组合);
select a, b, c from table group by a, b, c WITH cube;
-- 等价于
select a, b, c from table group by a, b, c
GROUPING SETS((a,b,c),(a,b),(a,c),(b,c),(a),(b),(c),());-- having的使用方法select A,max(b) b1 from t group by A
having b1  > 1000;-- 等价于select t.A,t.b1from (select A,max(b) b1 from t group by A) twhere t.b1 > 1000;

3、解决方案

不妨假设每一层分别为l1 l2 l3 用户为user_id
写法为:

select l1,l2,l3  ,is_ths_user,count(1) as user_cnt  from tablegroup by l1,l2,l3with cube```

大数据hive篇_group seting解决业务问题相关推荐

  1. 大数据hive篇--hive报错return 2 return 3 解决方式

    oozie跑hive脚本报错: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRed ...

  2. 大数据hive篇--return code 3 报错

    问题描述 使用hive跑数时,出现return code 3的错误,但没有报出代码中具体位置的错误. 问题原因 具体原因不是非常清楚,但是网上提到的原因最有可能的是数据倾斜导致的,具体的表现就是任务执 ...

  3. 大数据Hive篇_埋点、日志数据清洗(string类型)

    实习期间处理业务需求不会的总结汇总,主要学习自花花里的前辈带教.与<Hive编程指南>一书,不足之处,望多多指正. 前言 实际的业务处理中,业务方提出的一个临时需求如果找不到对应的取数表, ...

  4. 大数据hive篇--UDF函数

    什么是UDF: 它是User defined Function的简写,意思是用户自定义方法 为什么要用UDF? hive自带了一些函数,比如:max.min 等,但是自带的函数数量有限,所以hive提 ...

  5. 女友问粉丝过万如何庆祝,我发万字长文《保姆级大数据入门篇》感恩粉丝们支持,学姐|学妹|学弟|小白看了就懂

    2021大数据领域优质创作博客,带你从入门到精通,该博客每天更新,逐渐完善大数据各个知识体系的文章,帮助大家更高效学习. 有对大数据感兴趣的可以关注微信公众号:三帮大数据 目录 粉丝破万了 新星计划申 ...

  6. 女友问粉丝过万如何庆祝,我发长文《保姆级大数据入门篇》感恩粉丝们支持,学姐|学弟看了就懂

    文章目录 粉丝破万了 新星计划申请时粉丝数 新星内卷抢热榜之旅 运营整顿新星执行新规 重整旗鼓输出内容为王 女友问粉丝过万如何庆祝 保姆级大数据入门篇 一.学习重点划定 二.Java和大数据关系 三. ...

  7. 大数据基础篇~JavaSE第一章

    大数据基础篇教程分享01 目前计算机专业现状,java开发工程师虽然容易找工作(这个也是在你在大学期间java基础学习的比较好,然后会一些框架,才能找到工作)但是java开发常常熬夜,楼主就是卷不动j ...

  8. 2019尚硅谷大数据Maven篇一 Maven安装和概念

    2019尚硅谷大数据Maven篇一安装和概念 tags: golang 2019尚硅谷 categories: java Maven 安装 依赖 概念 文章目录 2019尚硅谷大数据Maven篇一安装 ...

  9. 2021年大数据Hive(十二):Hive综合案例!!!

    全网最详细的大数据Hive文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 前言 Hive综合案例 一.需求描述 二.项目表的字段 三.进 ...

最新文章

  1. Spring context:component-scan代替context:annotation-config
  2. 《Effective STL》学习笔记(第一部分)
  3. springboot----shiro集成
  4. sqlite3的backup和restore函数的使用
  5. 用JSONObject解析和处理json数据
  6. 移动平台前端开发总结(针对iphone,Android等手机)
  7. 拓端tecdat|机器学习:在SAS中运行随机森林
  8. CANoe软件打不开了怎么办?
  9. 我爱 Ruby 的三十七个理由
  10. VAF,MAF,肿瘤纯度,MCF,CCF的概念和计算方法 (转载)
  11. Mac下Tesseract-OCR文字识别新手使用入门
  12. 使用mock模拟数据,实现图片文字向上的轮播
  13. html/CSS 字体样式表 font-family:中文字体的英文名称
  14. 太强了!Java毕业设计分享—基于Java开发的毕业设计实战项目(含源码+论文)
  15. mac鼠标不能双击打开文件夹的解决方法
  16. 【Python】文件夹的基本操作
  17. MVC5 + EF6 + Bootstrap3 (9) HtmlHelper用法大全(下)
  18. 小议阿里云数加平台对企业有何帮助?
  19. Robust Rank Deficient SLAM
  20. unity5在小米pad上闪退

热门文章

  1. 【clion】Clion安装与配置
  2. 黑客入门(超级详细版)
  3. 15-VulnHub-Raven 1
  4. 远程视频专家系统,指导系统方案整理
  5. 在配有通道的计算机系统中,用户程序需要输出时,引起的中断是,自考计算机系统结构试题_全国2009年7月自考试卷...
  6. 【GANs学习笔记】(一)初步了解GANs
  7. 如何发表期刊方法步骤
  8. Quartus Prime v18.1 standard-QuartusPrimeV18.1标准版安装过程
  9. 软件体系结构与软件架构解析
  10. cesium中测距测面