0

我们没有任何现有的数据仓库,但我们有客户(在 OLTP 中)与我们在一起多年并进行了购买。如何填充客户维度,然后“重播”多年来发生的所有年龄更新,以便类型 2 维度将包含这些客户的所有更新。

因为我想用销售额填充事实表并参考 DimCustomerFK。但是当我们的客户查询数据时,我希望这些客户有正确的年龄。因为如果我不做任何更改,客户现在和 10 年前下第一个订单时的年龄相同。

任何想法如何做到这一点?

4

1 回答 1

0

有趣的问题帕特里克。

一些选项:-

1) 设计 SQL 来解析您的客户/交易 OLTP 数据,以创建客户更新的每日平面文件。因此,您最终会得到数千个相当小的文件(显然取决于您拥有的客户数量和日期范围)。将它们命名为 Customeryyyymmdd.csv。然后创建一个 ETL 套件,以向前日期顺序读取平面文件,并将类型 2 更改应用到 DWH。

2) 构建一个非常复杂的 SQL 查询(我在这里挥手,因为我不知道您的数据结构,所以无法建议这将是多么复杂)创建一个有序的客户更改列表,您可以通过 ETL SCD 组件记录传递通过记录。

鉴于您之前所说的,这两种方法在逻辑上似乎都是可行的,但这可能会给您一些想法来考虑,这可能会给您一个更具体的解决方案。

克/升

标记。

于 2012-08-23T15:19:43.367 回答