KDT#69 业务处理过程的选择
遵从Kimball的MD架构来建立数据仓库时,设计维度模型的过程通常包括四个步骤,分别是选择业务处理过程、选择粒度、选择维度和选择事实。在这个过程中,选择业务处理过程是Kimball非常强调的一步。
业务处理过程(Business Process)指的是组织中的存在的业务活动,在这个业务活动中可以产生或者收集到数据。在维度建模过程中,我们要关注于这些产生数据的业务处理过程,而不应该关注于业务处理部门。换句话说,就是我们不能为了给某个业务部门建立数据集市就把需要的事实数据抽取过来,给另一个业务部门建立数据集市时再把需要的事实数据抽取过来。这样,同样的事实数据就会在不同的业务部门的数据集市中保存多份。
这一点和CIF架构有些不同,在CIF架构中,EDW中保存着整个企业的整合、清洗好的数据,所以在其上建立的不同的数据集市可以有相同的事实。而MD架构中由于没有像EDW这样整合好的数据仓库,是靠多个数据集市联合在一起组成虚拟的数据仓库,所以不同的数据集市保存相同的事实容易出现不一致的情况。所以在MD架构中,建模的业务处理过程不应该是业务部门,也不应该是组织、功能,更不应该是满足特定需求的报表。
选择核心的业务处理过程对维度建模是至关重要的,最有效率的方式就是听取用户的意见,在哪个业务过程产生的度量值他们最感兴趣就首先选择哪个业务处理过程来建立数据集市。