我设计了与场所相关的仓库表 - DimPlaces、FactPlaces、DimGeography。如果您看到,这是简单的设计。所有位置都在 DimPlaces 中(Addrline1、Addrline2、地名等),地理层次结构在 DimGeography 中(城市、州、国家、邮政编码)。FactPlaces 是具有 DimPlaces 和 DimGeography 的外键的表。
我想保留历史数据,因为地点名称或其属性可能会发生变化,同时如果地点的位置发生变化,那么地理层次结构键也会发生变化。
我找到了设计模式 -
另一个有用的设计模式是除了维度的代理键之外,还向事实表添加持久帐户键。这将连接回维度中的当前行,以便更轻松地按当前维度属性报告所有历史记录。
您能否建议遵循此解决方案可以吗?如果是,我是否需要使用 UNIQUEIDENTIFIER 类型的 KEY 作为唯一值?
关于此的另一个问题 - 我有员工数据(DimEmployee 和 FactEmployee)。每个员工都与他工作的地方相关联。如何将这些员工表与地点表连接起来。我需要将 FACTEMPLOYEE 与 FACTPLACES 联系起来吗?