我正在为制药业务流程开发数据仓库,需要一些关于确定事实表适当粒度的建议。
业务流程如下:
我认为事实表的粒度应该在处方行项目级别。事实表中的每一行都代表一个行项目,它是处方的一部分。每个处方都与一次咨询相关。
您对以下架构有何看法:
此模式是否适合捕获所需粒度的数据?任何反馈或建议将不胜感激!
主要决策(处方线级)是正确的。我只是将其称为“处方药”,这样更具描述性。
我会回顾几个设计决策:
暗淡咨询和暗淡评估: 如果这些是协商和评估的“类型”,那么这就是一个正确的设计。但是,如果它们存储为事件(每次咨询和评估都会在暗淡表中添加一个新行),那么这是一个错误。事件是事实,而不是维度。
为药房和药剂师提供单独的维度没有任何价值,因为它们直接相关。我会将它们组合在一个维度“药剂师”中,其中药剂只是一个属性。这应该会简化模型并使分析变得更容易。