设计混合粒度的事实表

问题描述

我正在设计用于报告的数据模型。在源中有三个必须考虑的表。

发票表 测试台 服务表

测试和服务以发票为准。一张发票可以做多项测试,也可以做多项服务。

例如:

InvoiceId TestCount ServicCount
123 0 4
435 2 5
435 4 2

计算总收入总金额可参考发票表中的总金额列。但对于净收入。必须计算测试表中的测试成本列和服务成本中的服务成本列的总和。

为测试和服务设计事实表时。我认为最好使用两个事实表,一个用于测试,一个用于服务,因为它们具有不同的粒度,并且在报告时创建一个度量来计算两者并获得总净收入。

是否有其他可能的方法可以将测试和服务细节保持在同一事实中? IE。在一个事实中混合粒度?

请提供任何有价值的见解

提前致谢

解决方法

在同一个事实表中混合不同粒度的事实与设计事实表时可能犯的错误一样大。

所以,不,不可能在同一个事实表中保存具有不同粒度的事实。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...