数据仓库维度中的查找代码

时间:2018-05-17 06:29:18

标签: data-modeling lookup data-warehouse dimensional-modeling

上游OLTP系统中的许多核心实体都具有很多特定于域的查找代码,用户熟悉并希望在数据仓库报告中继续使用。像product_category =" SRB6&#34 ;, incentive_scheme =" APP3"这些代码确实有很长的表单描述,但这不是用户熟悉或不想要的。

代码之间的相关性很低,基数通常不会那么低,所以垃圾级别看起来并不正确。核心维度通常是SCD类型II,查找代码不太可能改变。

如何在不使用维度周围的3NF查找表雪花的情况下,对这些查找代码进行最佳建模?

我可以看到的选项包括:

  • 将代码和长格式描述直接放在维度表中
  • 将源系统,代码和描述放在一个全局"查找"具有代理键的维度,并在实体维度中使用该代理键
  • 两者结合;查找dim代理键,维度中的代码和描述以及SCD类型II查找dim
  • 其他?

1 个答案:

答案 0 :(得分:2)

典型的维度建模方法只是将代码和长格式描述直接放在它们所涉及的维度表中。例如。 DimProduct将包含描述产品类别的列,如果需要,还包含代码和描述。

其他系统确实优先考虑查找,规范化等的通用管理,并且会使用您建议的其他选项,但它们不会是维度模型,也不会受益于模型的易读性和减少数量的性能联接。