事实表更新,维度变化缓慢

问题描述 投票:3回答:1

搜索关键字有点棘手,所以如果存在这个问题我会道歉。

假设我有一个标准类型2缓慢变化的维度,使用Startdate和Enddate列建模。 NULL Enddate的记录是维度记录的当前版本。

我理解当我从源数据中检测到什么是事实表插入时,它非常简单。基于匹配业务键和Enddate = NULL的维度记录,简单地将新事实表记录插入映射到最新的维度记录。

当在源系统中对度量进行更新时,我在确定要做什么时遇到一些麻烦,在我的事实表中,这将是更新,而不是插入。我似乎只有加入的业务键,事实表中的现有记录可能指向维度记录的先前版本。我不确定如何从维度中获取正确的代理键并执行事实表更新。

如果需要,我可以提供更多细节。

提前致谢。

ssis ssas data-warehouse etl
1个回答
4
投票

你在源表上有任何insertcreate日期吗?你可以用它来做

select * from dim where src_dt 
between dim.startdate and dim.enddate and keys = src.keys 

并返回正确的维度行。如果你使用SCD。

当您进行查找时,您应该使用日期和自然键来获取正确的维度行,而不是为插入和更新选择最新的当前昏暗行。

© www.soinside.com 2019 - 2024. All rights reserved.