SSAS事实建模

时间:2014-02-20 12:34:39

标签: ssas

背景:零售,交易,促销。好的,让我们看看一些数据,你会明白的。

enter image description here

receipt_no和line_no定义了交易中的订单项(receipt_no)。您可以看到有两个促销应用于此项目(a,b)。总折扣(-3.54 - 1.19)等于原始值 - 销售额(12 - 7.27)。所以促销(7.27)是应用所有促销后的最终价值。

现在我需要在SSAS中构建它作为一个事实。业务键将是receipt_no,line_no,promotion_name。相关的维度将是促销。这只是为了说明目的,实际情况要复杂得多。

所以问题是如果通过promotion_name切片事实,没问题。如果只看到total而没有使用promotion_name进行切片,则此项目的销售额将加倍,这是不正确的。

那么你在这种情况下通常/最佳实践如何?

1 个答案:

答案 0 :(得分:0)

据我所知,一个干净的模型将有两个事实表:

  • fact_salesreceipt_noline_no组合作为主键,将Sales,Units和OriginalValue组合为度量,
  • fact_promotion,其中receipt_noline_nopromotion_name为主键,折扣为衡量标准。

您可能会省略Sales和OriginalValue中的一个,因为其中每个都可以从另一个计算,并且可以计算同一receipt_noline_no的汇总折扣。但这已经开始讨论优化。