数据仓库中维度表缓慢变化的高级处理技术
1. 星型模式设计中的数据变更响应
在星型模式设计里,确定源数据的变更如何在维度表中体现是关键环节。每个维度属性的变更响应模式要与业务需求精准匹配。常见的处理技术有:
- 类型1 :当数据元素的历史不重要时使用。源数据元素变更时,对应维度属性会被覆盖,之前记录的事实会与变更后的值关联,旧值不会留下痕迹。
- 类型2 :需要保留事实相对于变化数据元素的历史上下文时使用。源数据元素变更时,维度表会添加新行,旧版本保持不变,之前记录的事实仍与旧版本关联,新事实与变更后版本关联。
不过,在某些情况下,上述两种技术无法满足需求,下面介绍另外三种技术:
- 时间戳维度 :用于支持对维度值进行时间点分析,不考虑关联事实。
- 类型3变更 :用户想使用新值或旧值研究数据元素变更前后记录的所有事实时采用。
- 混合技术 :需求冲突,需要多种响应方式时使用。
2. 时间戳维度的引入
类型2缓慢变化维度是处理源数据变更最常用的方式。若对历史数据需求不确定,选择类型2是安全的,因为它能保留历史维度值与事实表中记录事实的关联,不会丢弃信息。
但类型2有明显不足,它无法告知维度在任意时间点的状态。在维度数据仓库架构或独立数据集市中,这是个突出问题,因为维度模型同时作为粒度数据的集成存储库。而在企业信息工厂中,由于有企业数据仓库存储历史信息,在维度数据集市中维护完整历史的重要性相对较低。 <
超级会员免费看
订阅专栏 解锁全文
11

被折叠的 条评论
为什么被折叠?



