1.应用背景:
实际生产中,各种指标的报表统计,往往都会涉及到多维分析,比如,统计日活数,日会话次数,日回头访客数,日新,日用户平均访问时长,访问深度……都需要从不同维度,各种角度去分析,如果上述维度分析需求,都逐个开发计算sql(逐个去group by聚合),工作繁冗!
那么,如何解决这个问题呢?
2.实现过程:
2.1 关键要点:
- 创建一个统一的目标维度分析聚合结果表,这个表应该包含所有的维度字段
- 利用hive的高阶聚合函数,在一个sql中,即可计算出所有可能的维度组合
2.2 Cube表模型:这种表,在业内通常被称之为: cube (多维数据立方体)
省 |
市 |
区 |
手机型号 |
操作系统 |
App版本 |
下载渠道 |
小时段 |
日活总数 |
江西 |
\n |
\n |
\n |
\n |
\n |
\n |
\n |
1000 |
江苏 |
\n |
\n |
\n |
\n |
\n |
\n |
\n |
1500 |
河南 |
\n |
\n |
\n |