使用查询维度inSSIS中的SCD2加载事实表

时间:2017-07-22 11:44:53

标签: sql-server ssis-2012

我无法在事实表中使用Datawarehouse Surrogate Key加载维度,例如我正在查找的SCD维度有1002行,2行已更改SCD2,其余行为SCD1。当我在SSIS中使用Lookup转换同时返回两者时,它只会带来1000行,它应该带1002.我正在查找BusinessKey并带回DWH代理键。问题在于因为我使用Business Key作为查找连接以带来DWH Surrogate密钥,我确信Lookup转换会删除重复的Business Key,因为将会有4行重复。有什么方法可以解决问题。这个?或者我完全错了

1 个答案:

答案 0 :(得分:1)

SSIS中的查找只匹配一次,第一次匹配,即使有2次出现。在SSIS中更改此查找行为是不可能的。

在SSIS中加载事实表之前,您可以在SQL级别准备数据,例如使用视图。在查询中,您可以按业务键查找(通过加入维度)您的值,以及可以在开始日期和结束日期之间的额外标准,以获得正确的代理键。