Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssas 事实表的度量值应为';弱实体';或仅母公司实体';应输入s字段_Ssas_Entity Relationship_Data Warehouse_Olap_Dimensional Modeling - Fatal编程技术网

Ssas 事实表的度量值应为';弱实体';或仅母公司实体';应输入s字段

Ssas 事实表的度量值应为';弱实体';或仅母公司实体';应输入s字段,ssas,entity-relationship,data-warehouse,olap,dimensional-modeling,Ssas,Entity Relationship,Data Warehouse,Olap,Dimensional Modeling,我不熟悉维度建模和OLAP。 我正在尝试创建一个商店的尺寸模型 “订单”表包含以下列: 'order_id(auto generated), total_order_cost, date, product_Set_Id'. “Product_set”表(包含按每个订单订购的产品,即每个订单有多行,通过“Product_set_id”列逻辑链接的表)包含以下列: 'product_set_id, product_name, quantity,Cost_per_quantity'. 在ER模型中

我不熟悉维度建模和OLAP。 我正在尝试创建一个商店的尺寸模型

“订单”表包含以下列:

'order_id(auto generated), total_order_cost, date, product_Set_Id'.
“Product_set”表(包含按每个订单订购的产品,即每个订单有多行,通过“Product_set_id”列逻辑链接的表)包含以下列:

'product_set_id, product_name, quantity,Cost_per_quantity'.
在ER模型中,“产品集合”表是一种依赖于“订单”表的弱实体

我的怀疑在事实表上 案例1:我应该只添加
'order\u id(fk)
'total\u order\u cost(as measure)
==>在这种情况下,“产品集合”中的度量值在事实表中不存在

或者案例2:我应该添加
“订单id(fk)”、“产品集id(fk)”和“每单位数量(度量值)、数量(度量值)、订单总成本(度量值)
==>在这种情况下,对于相同的
“订单id”和“总订单成本”将有多行

还有其他一些表格,如“客户”等,但我对上面提到的有疑问


提前谢谢

经常提出的一个建议是在表上创建代理键。我的事实销售是这样的,它有一个代理键,允许我在那里有订单行数据,每个订单行都由一个代理键标识(我没有真正使用代理键,但这不是问题)。这样你就可以学习案例2


这回答了问题吗?

首先感谢您的回答。因此,根据您的说法,我应该删除“订单总成本”,并在事实表中保留“订单id”??由于一个订单中可能有多个产品,重复“订单id”是否可以?在我的设计中,就是这样,我将订单和订单行表组合在一个FactSales表中。这就是为什么要使用极光键。不,保持订单总成本(这是一个衡量标准)。但由于订单成本将保持不变,我建议您是否可以将其按订单行分开。将您的订单总成本定义为每数量的成本*数量再次感谢现在纠正我,如果我错了,我理解您的设计。您的方法很好,因为它更有意义,但它就像一个替代解决方案。这是一种“星型模式”。仍然假设我们没有将它们合并到一个表中,即“雪花模式”,而使用两个不同的表。或者让我将问题重新定义为,在雪花模式的情况下,我们应该如何输入度量值和FK。您应该始终推动星型模式,是的,还有其他类型的维度,如Mini Dim(Customer_Mini_Dim,它将存储客户数据,但其外部表键将位于事实表中)或Outliner(客户_统计信息导致雪花飘落,因为其外键位于Custmer Dim中)只有很少的情况下你可以考虑雪花,但最好的是让星图能够得到快速的结果。这就是KimBube教我们做数据仓库的方法。如果雪花会很复杂,但是你最终会得到订单(PK—OrthID)和订单线。(PK-OrderlineID和OrderID-composite即PK)。并将OrderID作为两个表中的引用键。但事实与事实之间的关系,我不会这样做,因为adventure works已经做到了,所以我想你可以侥幸逃脱