同一个维度 table 可以与多个事实 table 相关吗?

Can the same dimension table be related to multiple fact tables?

我是 OLAP 新手,如果我有两个事实 table,它们可以共享相同的维度 table 吗?

一个很好的例子是,如果我有 tables fact1 和 fact2,它们都可以有一个外键进入 single 日期维度 (dimDate) table?或者,我 need/should 是否为每个单独的事实创建单独的 dimDate 维度 table?

对我来说,根据我的研究,我没有发现共享昏暗的东西有任何失败 table,但我想检查一下。

谢谢!

他们可以而且应该这样做。

这就是一致性维度的全部要点,将属性保持在一个地方,以避免来自不同事实的多个版本的真相tables。

所以只有一个日期维度,包含每个事实 table 的所有必要属性,然后从需要它的每个事实 table 链接。

客户维度相同。如果您有一个销售事实 table 需要客户信息(例如帐单地址)和一个营销事实 table 包含有关每个客户可以从中受益的活动的信息,您可以将所有这些属性组合在一个 table。营销事实 table 中可能未提及某些客户,事实 table 中可能不存在其他客户,但所有客户都将存在于单一客户维度中,这是您关于客户是谁的唯一真实来源是。