数据仓库建模流程
- 选择业务流程
- 声明粒度
- 确认维度
- 确认事实
选择业务流程
确认哪些业务处理流程时数据仓库应该覆盖的
- 例如:了解和分析一个商店的销售情况
记录方式
- 使用纯文本
- 使用业务流程建模标注(BPMN)方法
- 使用同一建模语言(UML)
声明粒度
粒度概述
粒度问题时设计数据仓库的一个最重要方面。粒度时指数据仓库的数据单位中保存数据的细化或综合成都的级别。细化程度越高,粒度就越小;相反,细化程度越低,粒度级就越大。数据的粒度一直时一个设计问题。数据仓库环境中粒度之所以时主要的设计问题,是因为它深深地影响存放在数据仓库中的数据量的大小。同时影响数据仓库所能回答的查询类型。粒度的大小需要数据仓库在设计时在数据量大小与查询的消息成都之间做出权衡。
- 用于确定事实中表示的是什么
- 例如:一个零售店的顾客在购物小票上的购买条目
- 选择维度和事实前必须声明粒度
- 建议从原始粒度数据开始设计
- 原始记录能够满足无法预期的用户查询
- 不同的事实可以有不同的粒度
确认维度
- 说明了事实表的数据时从哪里采集来的。
- 典型的维度都是名词
- 例如:日期、商店、库存等
- 维度表存储了某一维度的所有相关数据
- 例如:日期维度应该包括年、季度、月、周、日等数据
确认事实
- 识别数字化的度量,构成事实表的记录
- 和系统的业务用户密切相关
- 大部分事实表的度量都是数字类型的
- 可累加、可计算
- 例如:成本、数量、金额
星型模型
特点
- 由事实表和维度表组成
- 一个星型模式中可以有一个或多个事实表,每个事实表引用任意数量的维度表引用任意数量的维度表。
- 星型模式将业务流程分为事实和维度
- 事实包含业务的度量,是定量的数据
- 如销售价格、销售数量、距离、速度、重量等事实
- 维度是对事实数据属性的描述
- 如日期、产品、客户、地理位置等是维度
- 事实包含业务的度量,是定量的数据
优点
- 简化查询
- 简化业务报表逻辑
- 获得查询性能
- 快速聚合
- 便于像立方体提供数据
缺点
- 不能保证数据完整性
- 对于分析需求来说不够灵活
雪花模型
特点
- 一种多为模型中表的逻辑布局
- 由事实表和维度表所组成
- 将星型模式中的维度表进行规范化处理
- 把低基数的属性从维度表中移除并形成单独的表
- 一个维度被规范化成多个关联的表
优点
- 一些OLAP多维数据库建模工具专为雪花模型进行了优化
- 规范化的维度属性节省存储空间
缺点
- 维度属性规范化增加了查询的连接操作和复杂度
- 不确保数据完整性