维度建模
数据获取与数据分析的区别
信息的两个作用目的:
- 操作型记录的保存,操作型系统保存数据。
- 分析型决策,DW/BI系统使用数据。
操作型系统与分析型系统区别:
- 操作型系统的用户确保组织能够正常运转,对操作型系统进行优化的目的是使其能够更快地处理事务。一般一次处理一个事务记录,不必维护历史数据。
- DW/BI系统的用户研究分析企业的运转,对其性能进行评估。用于分析并判断操作型过程是否处于正确的工作状态。一般不会一次只处理一个事务。优化的目的是高性能完成用户查询,要求保存历史数据。
数据仓库与商业智能的目标
- 可以方便地存取信息,简单、快捷。
- 必须以一致的形式展现信息。
- 必须适应变化。
- 必须能够及时展现信息。
- 必须称为保护信息财富的安全堡垒。
- 必须称为提高决策制定能力的权威和可信的基础。
- 成功的标志是业务群体接收DW/BI系统。
作为DW/BI人员,一方面具有较好的信息技术基础,另一方面对业务用户必须了解。
维度建模简介
维度建模是展现分析数据的首选技术。维度建模可以以商业用户可以理解的方式发布数据,并且可以提供高效地查询性能。
星型模式与OLAP多维数据库
在关系数据库管理系统中实现的维度模型称为星型模式。
在多维数据库环境实现的维度模型通常称为联机分析处理(OnLine Analytical Processing,OLAP)多维数据库。
数据加载到OLAP多维数据库时,对这些数据的存储和索引,采用了为维度数据设计的格式与技术。性能聚集或预计算汇总表通常由OLAP多维数据库引擎建立并管理。
事实表
维度模型中事实表存储组织机构业务过程事件的性能度量结果。应尽量将来源于同一个业务过程的底层度量结果存储于一个维度模型中。
物理世界的每一个度量事件与对应的事实表行具有一对一的关系,这是维度建模的基本原则。
事实的类型
- 数值类型事实
- 可加类型事实
- 文本类型事实
事实表的类型
- 事务事实表
- 周期型快照事实表
- 累积快照事实表
一般事实表具有两个或更多个外键与维度表的主键关联,事实表中的外键始终与维度表中的特定键匹配,保持参照完整性。
维度表
维度表包含与业务过程度量有关的文本环境。维度数据可以作为查询约束、分组、报表标识的主要来源。
属性应该是包含真实使用的词汇而不是令人感到迷惑的缩写。
尽量减少在维度表中使用代码,应该将代码替换为详细的文本属性。
来自一个不太大的列表的离散数字基本可以认为维度属性。
星型模式中维度与事实的连接
维度模型表示每个业务过程包含事实表,事实表存储事件的数值化度量,围绕事实表的是多个维度表,维度表包含事件发生时的文本环境。这种类似星状的结构通常称为星型连接。
Kimnall的DW/BI架构
DW/BI环境组成部分:操作型源系统、ETL系统、数据展现、商业智能应用。
独立数据集市架构
采用独立数据集市架构,分析型数据以部门为基础来部署,不需要考虑企业级别的信息共享和集成。
辐射状企业信息工厂Inmon架构
数据从操作型数据源中获取,在ETL系统中进行处理,将这一过程获得的原子数据保存在满足第三范式的数据库中。CIF提倡企业数据协调和集成,CIF认为要利用规范化的EDW来承担这一角色,而Kimball架构强调强一致性维度的企业总线的重要作用。
混合辐射状架构与Kimball架构
将Kimball架构与InmonCIF架构嫁接。