Ssas 设计立方体

Ssas 设计立方体,ssas,data-warehouse,cube,dimensional-modeling,Ssas,Data Warehouse,Cube,Dimensional Modeling,我被要求创建我们的分析立方体,并有一个设计问题 我们出售“小部件”和“零件”来搭配这些小部件。每个订单都有许多小部件,有时也有几个部分 我坚持的是——对我来说,订单在某种程度上是一个事实。但是,小部件是什么?它们是一个维度,度量中的每个事实都将是订单中每个零件和小部件的一个条目 那么,如果订单123有小部件1和小部件2以及第5部分,那么同一订单的度量中会有3个事实?这是正确的吗? < P>在其基本层次上,你可以考虑大多数事实是事务或事务行项目。因此,例如,您可能有一个“销售”事实表,其中每个记录

我被要求创建我们的分析立方体,并有一个设计问题

我们出售“小部件”和“零件”来搭配这些小部件。每个订单都有许多小部件,有时也有几个部分

我坚持的是——对我来说,订单在某种程度上是一个事实。但是,小部件是什么?它们是一个维度,度量中的每个事实都将是订单中每个零件和小部件的一个条目


那么,如果订单123有小部件1和小部件2以及第5部分,那么同一订单的度量中会有3个事实?这是正确的吗?

< P>在其基本层次上,你可以考虑大多数事实是事务或事务行项目。因此,例如,您可能有一个“销售”事实表,其中每个记录表示该销售中的一个行项目。每个事实记录都有表示度量的数字列和连接到维度表的其他列。这些维度的组合将描述该行项目。因此,在您的情况下,您可能会遇到以下情况: 1) 详细说明交易日期的“日期”维度 2) “小部件”维度,详细说明在该交易中出售的小部件 3) 详细说明购买该商品的客户的“客户”维度(几乎可以肯定,此交易的每个行商品上都会出现相同的客户) 4) ... 由您拥有的信息和您试图解决的业务问题决定

现在,维度表包含更多详细信息。例如,您的小部件维度表可能包含小部件的名称、颜色、制造商等内容。每次您的公司销售其中一个小部件时,事实表中的记录都会链接到该名称、颜色、制造商等组合的同一维度记录(即,您不会在每次销售同一物品时创建新的维度记录-这是一种一对多关系-每个维度记录可能有许多相关事实记录)

其他维度表也会类似地描述它们的维度


因此,您的问题的简短回答是,小部件可能是一个维度,项目和小部件可能(或可能不是)实际上是同一个维度(在一个学校班级中,我怀疑它们是),并且您将有3个事实记录用于一个事务。

这可能与前面的答案相同,但是

如果你尝试对“每个订单的多个小部件”进行建模,你会遇到问题,因为最终会产生多(订单事实)对多(小部件)的关系。在多维数据集/星形模式设计中,通常需要以某种方式将多对多关系建模为多对一关系

所以,你要做的就是尝试识别出一个“订单”(与订单中的一堆小部件相反)的特殊标识。通常这只是一些简单的东西,比如订单日期、客户、订单号、税

对此建模的一种示例方法是:

如果您有一个包含五个小部件的订单,那么您可以将其建模为一个包含五条记录的事实表,其中碰巧有一个重复的小部件、客户、日期等

然后,您必须计算出如何将订单标题税额分摊到五个记录上。两个明显的解决方案是:

  • 创建一个表示税务的小部件,并将其添加为另一个记录
  • 将税款分摊到五个记录上,或者平均分摊,或者按某个记录加权
  • 对“部件”进行建模只会使这些概念更进一步


    了解最终用户希望看到的内容、他们希望看到零件的原因很重要。他们希望通过零件衡量什么,如何分配更高级别的值(如税)下到较低的层次,如部分。

    我的答案有帮助吗?谢谢!答案非常有帮助!如果有任何答案特别有帮助,可以将其标记为答案