在我不完整的BI表视图中,事实表代表动作,维度代表实体。
我有一个FactOrder
表,其中包含订单信息(包括 OrderId 和 CustomerId )。对于实际上与订单相关但不是客户的人员,存在一个单独的维度。因此它们被保存在名为DimServiceUser
的单独表中。链接表将Order
连接到ServiceUser
。应该将此中间 OrderServeruser 表定义为维度,事实还是其他类型?
答案 0 :(得分:1)
由于OrderService不包含任何事实/度量,因此您不能将其称为事实表。
尺寸表: 维度表包含事实的维度。 它们通过外键连接到事实表。 维度表是非规范化表。 维度属性是维度表中的各个列 维度借助其属性提供事实的描述性特征 没有为尺寸数量设置限制 该维度还可以包含一个或多个层次关系
基于以上维度表的定义,我认为您的表应称为维度表。
答案 1 :(得分:1)
它实际上更多是一个桥接表。这是怎么回事。
您的FactOrder表是事实表,但它还包含一个degenerate dimension。退化的维充当事实表中的维键,但是由于其所有有趣的属性已经被放置在其他分析维中,因此未联接到相应的维表。因此,那里有一个隐含的DimOrder,不需要单独的表。
bridge table可以将一组值连接到单个事实表行,也可以连接两个维度(例如客户和银行帐户)。这是处理合法的多对多关系的一种方式。桥表为like a factless fact table。但是在维建模中,我们不将事实表连接在一起,而将桥表和事实表连接在一起是可以接受的。如果必须将桥接表强制为事实或维度,则它更接近事实表。但是这样做可以使将来更容易实现不良的建模习惯。如果您可以称它为桥梁,那我就去吧。 (请确保您阅读了“就像一个事实表一样的事实”的第三个链接。它是由Star Schema:The Complete Reference的作者编写的。这是一个非常被接受的资料。)
答案 2 :(得分:-1)
OrderServeruser表的前缀应为“ bridge”。