我正在尝试开发一个合适的BI解决方案,其中维度和事实表格具有1:1的关系。
举例来说:
Fact_UserData
Dim_User
Dim_Location
Dim_Occupation
在此示例中,假设Fact_UserData和Dim_User通过用户ID始终具有1:1的关系。
主要是让我失望的是1:1的关系 - 我应该有一个专用的用户维度,还是应该将这些属性合并到事实表中?我对合并犹豫不决,因为根据Kimball,退化维度应保留给操作控制数。我也想知道将职业作为一个专门的维度是否有意义 - 从业务的角度来看职业分组是至关重要的,这就是为什么我最初把它作为自己的维度。
作为对职业维度问题的概括,处理尺寸只有两个字段的情况的最佳实践方法是什么:ID和名称? (可以将其视为典型的Customers维度,期望它只有客户ID和客户名称字段。)假设维度有10个以上的条目,并且没有任何层次结构。
答案 0 :(得分:1)
好吧,考虑到一个人可以改变职业和位置,我也希望在事实表中有一个DateKey
。如果您将职业和/或位置拉入用户维度,您将最终得到类型2维度,因此必须跟踪那里的时间变化。
将维度与Key, BusinessKey
一起使用没有任何问题 - 随着时间的推移,事情会发生变化,你最终会添加一些内容。