Database 事实表设计混乱-计算的措施和更多

Database 事实表设计混乱-计算的措施和更多,database,data-warehouse,dimensional-modeling,fact-table,Database,Data Warehouse,Dimensional Modeling,Fact Table,我对数据仓库和维度建模非常陌生,我需要澄清一些事情。我目前拥有以下维度: DimProducts-有关产品的信息 DimMaterials-有关产品所用材料的信息 DimLocation不同的门店位置 DimTime-带有年、季、月、周、日的标准时间维度 现在是关于事实表的混乱。目前它有以下措施: 收入 费用 问题: 我也希望将净利润作为衡量标准,但由于它是一个计算的衡量标准,它应该是事实表中的一列,还是应该在报告级别进行计算?我有点不清楚关于计算方法的约定 我还想知道在一个时间点上有多

我对数据仓库和维度建模非常陌生,我需要澄清一些事情。我目前拥有以下维度:

  • DimProducts-有关产品的信息
  • DimMaterials-有关产品所用材料的信息
  • DimLocation不同的门店位置
  • DimTime-带有年、季、月、周、日的标准时间维度
现在是关于事实表的混乱。目前它有以下措施:

  • 收入
  • 费用
问题:

  • 我也希望将净利润作为衡量标准,但由于它是一个计算的衡量标准,它应该是事实表中的一列,还是应该在报告级别进行计算?我有点不清楚关于计算方法的约定
  • 我还想知道在一个时间点上有多少原材料可用,以便我可以计算出我能生产多少产品(例如,一辆自行车有两个轮子意味着三月份有50个轮子可以生产三月份的25辆自行车)。我是否应该添加一个名为“原材料数量”的事实
  • 我有一种感觉,我对问题2的理解是错误的,我需要创建单独的事实表来处理这个问题。如果您能就我是否走上了正确的道路提供任何建议/提示,我将不胜感激。谢谢

    想想你的想法 q1)如果净利润=rev exp,我相信这可能只是一个报告逻辑,除非你有一个不同的计算,我在这里没有看到

    问题2)如果我理解正确,目前您的事实仅在您在外部销售材料的地方获得一行,换句话说,如果您手头有库存,并且没有在那里进行销售,则没有条目,如果是这样,那么在这种情况下,您可能需要根据您的产品/材料/日期或时间构建基于事件的事实

    巴斯卡比 Jsglkp