我有这个模型,但我无法找到它是否“正确”,以及它的技术名称是什么。
我使用的是Power,例如,我有一个客户端表:

在我的模型(多维数据集)中,我有两个表:Client和Client Current
数据源:客户端的源是(从客户端选择*),客户端当前的源是(从客户端选择* Valid=1)
当然,我的事实是:

这个设置的名称是什么?(一个通过client_surrogate键连接,另一个通过client_anotherkey连接)

我可能错了,但我认为SCD类型2是角色扮演维度的子集?
发布于 2022-09-02 14:50:56
这是一种2型SCD。Client_SurrogateKey是维度键。Client_AnotherKey (通常)是源系统表中的键。注意,在SCD中,Client_AnotherKey不是维度表的键,因为有多个具有相同值的行。
它与角色扮演维度无关。
这里唯一不典型的地方是事实表有两个键。通常,事实表只有维度键,并且必须加入维度才能获得Client_AnotherKey。
但是,在维度模型中,为了方便起见,将维度非键属性复制到事实表中并不少见。
发布于 2022-09-02 14:50:47
SCD类型2是一种DWH技术,它通过在跟踪和记录更改时向维度表添加一行来跟踪历史更改。
角色扮演是一个通常与日期列相关的概念。例如:事实表中可以有两个外键日期列;但是不能将这两个键连接到维度表中;因此,您可以创建两个具有唯一列名的不同日期表,以便在它们与包含在关系中的原始数据表之间建立关系:

您的模型看起来更像SCD类型2。
client_surrogate密钥(FK :外键) client_anotherkey (NK:天然密钥)
我希望这个信息对你来说已经足够了。
https://stackoverflow.com/questions/73584002
复制相似问题