1. 数据仓库必须由业务用户的需要来驱动,并因此从一个维度视角来建立与展示数据仓库。
2. 持数据仓库是操作型系统的数据在其他平台的备份或者出于性能的考虑而分离自操作型系统的观点来建立数据仓库是一种伪数据仓库。
3. 数据仓库的根本目标:
1) 必须使组织机构的信息变得容易存取。(直观,明显,容易阅读,快速读取)
2) 必须一致的展示组织机构信息。(数据可信,质量有保证,内容定义对于所有用户是相同的)
3) 必须具有广泛的适应性和便于修改。(修改不会影响历史数据)
4) 必须发挥安全堡垒作用以保护信息资产。(控制访问)
5) 必须在推进有效决策方便承担最基本的角色。(有且仅有一个正确的输出----由数据仓库提供的依据而制定的决策)
6) 被业务群体所接受的前提是被认定是成功的。
4. 开发数据仓库环境时要考虑的4个相互分离的独特构建
1) 操作型原系统(行业事务记录,高性能,高可用)
2) 数据聚集环节(ETL)
3) 数据展示环节(以维度形式展示,存储,访问)
4) 数据存取工具
5) 其他(元数据,操作数据的存储)
5. 维度建模
1) 事实表(维度建模的基本表,存放大量业务性能度量值)
- 一行对应一个度量值,一个度量值就是事实表的一行,事实表的度量值必须有相同的粒度。
- 最有用的是数字型,可加型事实。
- 事实表表示维度间多对多关系。
2) 维度表
- 包含有业务的文字描述
- 通常倾向于行数少,列数多
- 主关键字是确保与之相连的任何事实表之间存在引用完整性的基础
- 维度属性是查询约束条件,成组与报表标签生成的基本来源
- 维度表是进入事实表的入口,丰富的维度属性给出了丰富的分析切割能力,维度给用户提供了使用数据仓库的接口。
- 最好的属性是文本的和离散的。
- 判断属性的方法:看字段是 一个含有许多的取值并参与运算的度量值(当事实看待)还是一个变化不多并参与作为约束条件的离散取值的描述(当维度看待)
3) 事实和维度的融合
- 由数字型度量值组成的事实表连接到一组填满描述属性的维度表上面,通常叫做星型连接方案。
- 维度模型要求简明性和对称性。
- 维度属性提供了生成标签的内容,而事实表则提供了报表的数字型取值。
6. 关于维度模型的错误看法
1) 维度模型与数据中心都只是应用于概要性数据方面的。
2) 维度模型与数据中心是针对部门的而不是针对企业的解决方案。
3) 维度模型与数据中心是不可升级的。
4) 维度模型与数据中心仅当存在可预见的使用模式时才合适。
5) 维度模型与数据中心是不能集成的,从而只能形成直通的解决方案。
7. 四步维度设计过程
1) 选取要建模的业务处理过程
- 建立第一个维度模型应该是一个最有影响的模型,应该对最紧迫的业务问题作出回答,并且对数据抽取来说是容易访问的。
2) 定义业务处理的粒度。
- 应优先考虑为业务处理获取最有原子性的信息而开发维度模型,原子型数据是所收集的最详细的信息,这样的数据不能再做更进一步的细分。
- 数据仓库几乎总是要求在每个维度可能得到的最低粒度上对数据进行表示的原因,并不是因为查询想看到每个低层面的行,而是因为查询希望以很精确的方式对细节知识进行抽取。
3) 选定用于每个事实表行的维度。
4) 确定用于形成每个事实表行的数字型事实。
8. 日期维度
- 数据仓库总需要一个明确的日期维度,有许多日期属性不能由sql函数提供支持,比如财务盘点,时令,节假日,周末等等。
9. 其他维度举例
- 退化维度:
退化维度一般都是事务的编号,如订单编号、发票编号等。这类编号需要保存到事实表中,但是不需要对应的维度表,所以称为退化维度。
退化维度是维度建模领域中的一个非常重要的概念,它对理解维度建模有着非常重要的作用,尤其是对维度建模的入门者。
- 雪花型维度处理:维度表的规范化处理
- 会是数据变得复杂。
- 影响查询性能。
- 降低用户在维度中进行浏览的能力。
- 挫败了对位图索引的使用。
- 代理键
10. 库存模型
1) 周期库存快照
l 半加型事实
l 改进的库存事实
2) 库存事务
3) 库存累积快照
11. 缓慢渐变维度(维度属性随时间缓慢的发生变化)
处理方式:
- 改写属性值(用当前取值改变旧的维度行的旧属性值) 特点: 响应方式容易实现,但是不能对旧属性的任何历史数据进行维护。
- 添加维度行 特点: 响应方法是准确跟踪渐变维度属性的主要方法,这种维度由于新维度行能自动区分事实表的历史而显得特别有效。但是不能将新属性值同旧历史事实联系起来。
- 添加维度列 特点: 可用于任意通过新的或者以前的属性值,了解新的以及历史的实际数据。
12. 混合渐变维度处理办法
- 可预见的多重变化
- 不可预见的单重变化
13. 快变维度
- 将这些迅速变化的维度属性分裂成一个或者多个单独的维度,然后再事实表放两外关键字,一个用于主维度表,一个用于快变维度属性。
14. 事实表
1) 事务事实表
保存的是最原子的数据,也称原子事实表。在事务事件发生之后产生,通常是一个事务一条记录。更新方式为增量更新。
2) 周期快照事实表
以具有规律性的,可预见的时间间隔来记录事实。粒度是每个固定时间段一条记录。是在事务事实表上面建立的聚集表。维度比事务事实表少,记录的事实比事务事实表多。
3) 累积快照事实表
周期快照记录的是确定的周期的数据,累积快照事实表记录的是不确定的周期的数据。