同一个维度 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 中可能不存在其他客户,但所有客户都将存在于单一客户维度中,这是您关于客户是谁的唯一真实来源是。
我是 OLAP 新手,如果我有两个事实 table,它们可以共享相同的维度 table 吗?
一个很好的例子是,如果我有 tables fact1 和 fact2,它们都可以有一个外键进入 single 日期维度 (dimDate) table?或者,我 need/should 是否为每个单独的事实创建单独的 dimDate 维度 table?
对我来说,根据我的研究,我没有发现共享昏暗的东西有任何失败 table,但我想检查一下。
谢谢!
他们可以而且应该这样做。
这就是一致性维度的全部要点,将属性保持在一个地方,以避免来自不同事实的多个版本的真相tables。
所以只有一个日期维度,包含每个事实 table 的所有必要属性,然后从需要它的每个事实 table 链接。
客户维度相同。如果您有一个销售事实 table 需要客户信息(例如帐单地址)和一个营销事实 table 包含有关每个客户可以从中受益的活动的信息,您可以将所有这些属性组合在一个 table。营销事实 table 中可能未提及某些客户,事实 table 中可能不存在其他客户,但所有客户都将存在于单一客户维度中,这是您关于客户是谁的唯一真实来源是。