【发布时间】:2014-03-09 19:15:45
【问题描述】:
一位客户正在更改地址,比如说 5 次。
如何使用渐变维度类型 3 实现 CUSTOMER 维度?
【问题讨论】:
标签: data-warehouse scd
一位客户正在更改地址,比如说 5 次。
如何使用渐变维度类型 3 实现 CUSTOMER 维度?
【问题讨论】:
标签: data-warehouse scd
客户至少更改了 5 次地址。我认为使用SCD Type-3 跟踪更改不是一个好主意,(因为它不是一个缓慢变化的维度,它属于快速变化的维度类别,那是另一个话题,但我必须说你应该看看它。 ) 这意味着您要在客户表中添加至少 5 列,我不擅长数学。但我想如果你的数据库中有 100 条记录,你将添加 5 列,每列长度为200 character,考虑到一个字符为 1 个字节,你将增加你的表200*5*100 byte。而且这种情况很少见,其他 99 位客户免费添加了 5 列。跟踪它的最佳方法是通过SCD Type-2 更改。我相信你知道如何使用SCD Type-2
现在如何使用 SCD Type-3 进行此操作
Step 1:
Add another column old_address
Step 2:
rename previous address column to address_n
Step 3:
update the affected customer data (old_address = address_n WHERE KEY = You_Customer_Key)
Step 4:
Update the address_n with new address
对于 5 次地址更改,请继续迭代 5 次。在address_n 中,n 是您的迭代。
【讨论】:
【讨论】: