我有一个数据仓库,它使用内部代理键和类型2缓慢变化的维度。在清算过程中,我们只有来自erp系统的业务密钥,如下所示:

在数据仓库中,我们希望使用代理键(注意:商品价格从500美元改为1000美元,物品在可能的情况下使用代理键,这里只供制造商使用)。

如果我们只是使用业务密钥,那么只需比较、更新旧条目、插入新条目就可以了。但用代孕钥匙做这件事的最好方法是什么?
从数据仓库中获取现有in (0或-1表示尚未存在),然后比较条目?

将业务密钥保存在数据仓库中,比较它们并更新Ids,然后在数据仓库中更新?

发布于 2014-08-30 17:01:26
为了能够在加载表时进行查找--就像在加载产品时引用制造商时一样,您必须在DWH中存储自然/业务密钥。根据我的经验,这件事总是可以做到的。
但是,您应该只将源实体的业务密钥存储在目标实体中。让我澄清一下,制造商的业务密钥只应出现在您的DWH中的制造商表中,而不应出现在其他地方。当您需要引用不同表中的制造商(如项目)时,可以使用制造商的代理密钥。
所以,你在第二张截图中拍到了。
然后,当您加载条款表,并需要知道制造商是否更改了特定项目时,首先根据制造商的业务密钥查找制造商的代理密钥,并将代理密钥与条款表中的密钥进行比较。这是通常的做法。
https://stackoverflow.com/questions/21827308
复制相似问题