数仓中如何设计事实表与维度表的最小粒度?

如果粒度过小汇总起来会比较麻烦,粒度过大当有细粒度需求时无法满足。怎么样跟迅速确定粒度呢?显示全部

如果粒度过小汇总起来会比较麻烦,粒度过大当有细粒度需求时无法满足。怎么样跟迅速确定粒度呢?

收起
参与12

返回amu0722的回答

amu0722amu0722  CEO , 打毛党

其实你知道怎么设计事实表 跟维度表,这事基本就解决了。因为你关心的那些本身就是这个数仓模式下的火候点甚至说是争论点,这也是这几年敏捷BI大行其道的原因之一。
就是数仓模型或者BI模型无法快速的支撑业务灵活的变化。
任何抛开数据量来谈数仓设计都是耍流氓啊。因为设计要考虑数仓落地产品,还要考虑数据质量。我举个例子
假如你的事实表有一亿条常用明细数据,你有三个维度表,三个维度表数据几千到几十万不等,不考虑效率影响的情况下,我直接事实表关联三个维度表 就可以满足我基本的业务需求以及多变的维度以及粒度需求。如果考虑运行效率,那么就有两个方向了
1.强有力的数仓产品,支持大数据量的cube模型创建或者查询,从最细粒度到高聚合响应迅速,那么你的数仓设计就可以考究比较明细的建模。但要求数据质量比较高。
2.如果是一般的软硬件投入,那么速度肯定受影响,那么就得坐下来好好做主题分类划分,这个主题划分就比较考究了,比如你可以想象成树状模型划分,高汇总,多个维度分别下发细的粒度,比如你看某省某个群体的一年消费,这涉及地理,人员,时间三个主维度。那么就得再做三个分支小的汇总,比如某省男士一年的消费,某省某市男士一个月的消费。通过模型间的下放来完善颗粒度的及时响应。
3.传统做法,就是有需求就加维度 前台改报表,个人愚见。。。仅供参考。

生活生产服务其它 · 2019-09-18
浏览4325

回答者

amu0722
CEO打毛党
擅长领域: 大数据商业智能数据库

amu0722 最近回答过的问题

回答状态

  • 发布时间:2019-09-18
  • 关注会员:2 人
  • 回答浏览:4325
  • X社区推广