BI - 如何设计数据模型来比较星型模式中的订单价格与成本

问题描述 投票:0回答:2

我正在努力尝试从一组具有不同来源的表、两个 SQL 数据库、Excel 文件和 CSV 报告创建星型模式,这有点令人困惑。

他们为我提供的初始表格是这样设置的:

这套表的要点是:

  • 在 Products 表中,IdProduct 不是唯一的,因为一种产品可以用 A 工厂的一种类型的机器生产,B 工厂的另一种类型的机器制造,因此每个 Factory/Machine/IdProduct 组合都是一行。

  • OrderItems 表混合了材料和产品行,因此您拥有订单中的所有产品以及同一订单的每个产品中使用的所有材料。

  • 物料成本每天都会变化,并在我获取 OrderItems 表的系统中更新。

  • 每个订单的运费都不同。

  • 包装和维修费用每周更新一次。

  • 产品价格因订单而异(考虑客户、订单日期和大小而设定)。

我得到了这个模型,将订单项目划分为产品和成本(材料),并将它们与固定成本和包装成本结合起来,我没有加入交付成本,但我最终得到了两个事实表和一个雪花模式:

我将地区、工厂、机器、日期、产品和成本概念(材料、固定成本等)的复合体视为维度,将总金额和数量视为事实。这是为了比较不同维度的总销售额与总成本。

我只是想知道这是否是正确的路径或者有更好的方法,我尝试搜索更多有关该主题的信息,但案例太具体,所以我什么也没得到。

提前感谢您的回答。

powerbi powerquery data-modeling data-warehouse business-intelligence
2个回答
0
投票

选择星型模式而不是雪花模式? 星型模式采用更加非规范化的形式,并且可以更好地提高性能。对于相同的记录,星型模式使用较少的外键,因此查询执行时间受到限制。在几乎所有情况下,星型模式的数据检索速度都优于雪花。

但是您可以将工作拆分为数据集市:

数据集市是一种简单的数据仓库形式,专注于单个数据 主题或业务范围。

数据集市可以包含多个仓库包的星型模式和其他表。例如,单个数据集市可能包含与成本相关的报告需求的数据


0
投票

这个案例找到解决办法了吗?

© www.soinside.com 2019 - 2024. All rights reserved.