我们正在实施新的dhh解决方案。我有许多维度需要缓慢更改2型属性。我正在考虑在我的维度中实现Type 2和Type 1属性的组合。也就是说,对于某些维度属性,我们通过在暗表(Type2)中插入新行来跟踪历史记录,对于其他属性,我们将仅对现有行进行任何更改(Type1)进行更新
问题:
这是一个好习惯吗?可以在同一个暗处同时使用SCD 1和2吗?
维度中的SCD 2属性数量是否有限制?我的尺寸相当宽,例如300个cols,其中一个用户要求通过scd类型2跟踪大约150个cols。在暗中具有这么多scd2属性是否可以?因此,对多维数据集和仪表板之类的下游报告BI解决方案的性能会有影响吗?
在OLTP系统中,我们维护一个“审核”表来记录所有更新。尽管这不是很容易查询的格式,但是我们可以从中获得与变化有关的大多数问题的答案。我们不需要太多有关数据更改的报告。当然,有一些重要的列,例如Status
,我们肯定需要SCD2,但其余的列,我不确定DWH中许多其他列的历史记录会增加任何价值。我的问题是,当我们在OLTP中拥有此审计表时,如何确定DWH中需要SCD 2的哪些属性?
答案 0 :(得分:0)
好的做法?是。尺寸建模的标准功能经常被忽略。我已经看到了SCD0,SCD1和SCD2的组合尺寸,也没有什么可以防止使用其他SCD类型的。
对列没有限制,但这似乎有点多余。您可能想使用“哈希”方法检测SCD2的更改,在其中计算SCD2列的哈希,然后使用该值检测是否有任何列已更改。
对不起,但我不了解有关审核日志的问题。这些日志是您的数据源吗?