0

这是我的问题:我想构建简单的 ETL 流程,在数据流中我从我的暂存模式中获取一些数据并将它们加载到其他地方。我还需要在那里实现 SCD2。所以理论上听起来很简单——但 SSIS 中的 SCD 组件总是将记录视为新记录,因此每次我执行任务时,即使源数据没有任何变化,它也会将相同的数据加载到我的目标表中。

在 SCD 组件的配置中,我将 BusinessKey 分配给无法更改的列数据,我选择维度列的其余部分作为 HistoricaAtributes,设置开始日期和结束日期。推断的成员支持未选中。

我正在使用 SSDT 2015,数据库引擎是 SQL Server 2016

这是带有 ETL 的屏幕:

ETL

关于如何解决这个问题的任何建议?

4

1 回答 1

1

使用 SCD 高级编辑器 ( Right Click+ Show Advanced Editor...) 并在组件属性选项卡下检查自定义属性。特别看一下CurrentRowWhere和 SqlCommand SCD 组件属性。这些将让您知道为什么具有相同业务密钥的记录被确定为新的。

于 2019-09-03T21:24:46.813 回答