事实表的数据要反应历史,应该如何设计结构?

1
   我们都知道数据仓库是反应历史变化的。维度表可以设计缓慢变化维来达到这个目的。维度表一般记录少,更新不频繁。但事实表记录多,更新频繁,如果要考虑反应历史,那么每天都要存储一个版本的数据出来,数据量将非常大。如果要设计事实表,是否也要考虑模仿缓慢变化维来进行构造呢?
已邀请:
1

BAO胖子 - 15年BI经验,涉足电力,快消品,医药,信息服务等行业的BI老兵。 2015-09-08 回答

给你一个Link:http://www.kimballgroup.com/19 ... s-up/

这里描述了Rapid Change dimension的解决思路。大部分情况都是增加一个新的维度,将该维度度KEY放到FACT TABLE里面。同时,也有将Dimension Table拆分,对于快速变化的部分单独建表,并分成一张当前表,一张历史表。
4

xpivot - SSAS & Excel &Cube架构师、产品经理 课程地址:http://www.hellobi.com/course/34 2015-08-13 回答

快速变化维的设计如果遵循缓慢变化维,就会如你所料,数据大爆炸
数据仓库反应历史变化,是因为它记录的是变化的过程,而不是把每个时间点的状态都记录下来,举例来说,订单状态由下单变成已支付,数据仓库里记录的是某个时间点哪些订单状态发生了变化,而不是某个时间点所有订单分别是什么状态,那么如果需求想要的是某个时间点所有订单的状态,可以写一个函数,函数接收一个时间点参数,返回这个时间点的所有订单状态,之所以不用view视图,是因为视图不能传参,那么这个函数所做的事情就是以某个时间点从订单状态变化历史表里做一个快照。至此就剩下一个问题了,要实现这个快照事实表,如何传递这个时间点参数,这个可能就要花点心思了,不是每个工具都能有这个扩展性,祝好运
0

fanchaoyun - 从事SQL SERVER和BI 2015-08-12 回答

事实表中的度量值是否应该记录变化过程?

要回复问题请先登录注册