维度建模过程
确定过程
-
业务过程通常是由某个操作系统支撑,建立或获取关键性能度量,通常由输入激活,产生输出度量,由组织完成的微观活动.
-
第一个DW/BI项目应该将注意力放在最为关键的,最易实现的用户业务过程.包括数据可用性与质量,以及组织的准备工作等.
声明粒度
-
意味着精确定义某个事实表每一行表示什么.粒度传递的是事实表度量的细节级别.粒度由获取业务过程事件的操作型系统的物理实现确定.
-
声明粒度是不容忽视的关键步骤
-
以最低的原子粒度处理数据.
- 原子粒度具有强大的多维性.
- 原子粒度能够提供最佳的分析灵活性.
- 粒度较高的模型无法实现用户下钻细节需求.
确定维度
- 应当使用健壮的维度集合来装饰事实表.
- 这些维度表示承担每个度量环境中所有可能的单值描述符.
- 在选择维度时,应该列出所有具体的,文本类型的属性以充实每个维度表.
- 详细的粒度说明确定了事实表的主要维度,然后可以将更多的维度增加到事实表上.只要这些额外的维度自然地承担主维度合并的某个值.
- 如果附加的维度会产生与粒度不符的其他事实行,则取消该维度或重新考虑维度声明.
确定事实
- 可以通过回答"过程度量是什么?"这一问题来确定事实.
- 需要综合考虑业务用户需求和数据来源的实际情况,并与四个步骤联系起来,坚决抵制仅仅只考虑数据来源来建模数据.
- 确认应该将那些事实放到事实表中,粒度声明有助于稳定相关考虑.
- 四种类型的事实
- 可加事实
- 计算获得的事实,可以通过视图来执行类似的计算,但是需要保证通过视图访问数据方式不会产生意外.
- 不可加事实.例如百分比与比率,这类事实是不可加的,应将其分母分别存储在事实表中.需要使用BI工具或者OALP数据库进行计算.
- 事务事实表事实,原子事务事实表的粒度可在事务环境下简洁地进行描述.通常比较稀疏,可能非常庞大并趋向多维化,事务事实返回的度量通常是可加的,只要他们通过数量来扩展,而不是获取单位度量.在进行事务事实表设计时需要首先进行估计事实表行数.作为一个设计者,应该始终通过多角度测量来确定计算是否合理.