维度建模时,力求在数据仓库中记录最明细粒度的数据,以保证完整记录业务发生的事实,从而满足日后面临不同分析需求时能够对数据进一步加工利用。可在商业智能项目中往往还需要更高粒度的数据,这时就会面临维度模型粒度提升的情况。满足业务需求的前提下为提高效率而采取的提升粒度做法不在讨论之列。
1、 关注的层次提升,提高维度级别
传统BI应用中,决策分析层的数据粒度往往比业务操作层的大,比如DW中财务模型一般会记录到分录的级别(凭证之下),可是分析时往往关注核算项目、科目、甚至指标和比率的层级,而且在时间上一般是月度级别。
2、 关注的角度缩窄,降维
DW中明细粒度的数据需要记录一个业务事实发生的方方面面,比如DW库存模型对退货操作要记录退货单号、货品、仓库仓位、仓管员、退货开始时间、退货结束时间、退货店铺、客户、退货数量等事实,销售部的商品退货分析模型中需要略去单号、仓位、仓管员、开始及结束时间细节等(仓管部门在退货效率分析时却需要这些数据)。再比如财务模型的会计及出纳人员信息,在财务分析模型中一般也会忽略。
3、 关注的对象合并,提取公共指标
不同业务单元的业务数据因为可记录的事实不同,往往在DW明细粒度级别无法归并在一个模型中,比如即使是集中管理型的集团企业内,不同下属公司的财务和业务由于地域或板块等原因,不能够在财务核算和业务明细级别进行分部分析,只能提取一些绩效指标具有代表性的绩效指标(公共指标),在分部之间进行横向比较。企业具有不同销售渠道(如同时经营实体店和网店)时,也面临这种情况。
4、 关注的流程合并,提取公共维
DW数据模型在明细级别是按照业务单元分割的,可在一些分析中,尤其是绩效分析中,是跨业务环节的。比如服饰行业(尤其是快时尚品牌)里的买手分析模型,需要对买手负责的货品进行全生命周期的跟踪分析,从买货或设计,到入库、销售、出库、退货等等,直到下架,都要跟踪,在货品生命周期分析模型里就只能保留公共维度,忽略各环节的个性维度。
5、 附加指标的约束,提升维度级别或降维
不同来源的数据往往具有不同的粒度,在DW数据模型中分开存储,在分析模型集成。比如预算数据远比业务发生数据的维度少,而且很多预算指标与原始的业务度量不对应,而与计算指标对应。再比如市场分析模型中常用的竞争对手数据、市场占有率数据,远比企业本身销售分析模型的维度少(比如需要忽略掉企业自身渠道、部门、人员等维度)、粒度大(比如在地区、时间、商品等维度上仅达到城市、月度、品牌等级别)。
本文同步更新维护地址:http://letusbi.com/1526.html