我有一个关于类型 2 维度的问题。
在我们的人力资源系统中,可以在一个日期雇用一名员工,然后在以后的某个时间点,如果最初输入的日期不正确,可以更改雇用日期。当使用类型 2 维度时,这会变得复杂,因为更改会导致维度表中出现新记录。
所以,我基本上需要一种方式来说明某些更新(例如上面的更新)不应该导致维度表中的新记录。但是,对于其他情况,例如员工调到新职位,那么我肯定需要在维度表中创建一条记录。
我在这里有什么选择?
我有一个关于类型 2 维度的问题。
在我们的人力资源系统中,可以在一个日期雇用一名员工,然后在以后的某个时间点,如果最初输入的日期不正确,可以更改雇用日期。当使用类型 2 维度时,这会变得复杂,因为更改会导致维度表中出现新记录。
所以,我基本上需要一种方式来说明某些更新(例如上面的更新)不应该导致维度表中的新记录。但是,对于其他情况,例如员工调到新职位,那么我肯定需要在维度表中创建一条记录。
我在这里有什么选择?
类型 2 维度不需要应用于维度中的每个属性。您可以选择使某些属性类型 1 覆盖值并丢失历史记录和某些属性类型 2 创建新记录并保留历史记录。
因此,在上面的示例中,您将“职位”属性类型设置为 2,将“雇用日期”类型设置为 1。
查看这个维基百科链接,其中包含不同类型的缓慢变化属性的列表,http ://en.wikipedia.org/wiki/Slowly_changeing_dimension 。
大多数时候你只需要Type 1和Type 2。