什么是数据仓库
(面集时非)
- 面向主题的:围绕某一主题来构建
- 集成的:图片文字杂糅在一起
- 时变的:随时间变化的数据
- 非易失的:硬盘存放,不易丢失
操作数据库系统(OLTP)与数据仓库(OLAP)区别
(用户、设计、访问、视图、内容)
- 用户和系统的面向性:OLTP是面向顾客,OLAP是面向市场进行数据分析
- 数据内容:OLTP提供当前数据,OLAP提供历史数据
- 数据库设计:OLTP采用实体-联系(ER),OLAP采用星形或雪花
- 视图:OLTP一个具体部门,OLAP全部统计
- 访问模式:OLTP某条,OLAP全部
为什么需要分离的数据仓库
- 有助于提高两个系统的性能
- 两种系统中数据的结构、内容和用法都不相同
星形、雪花形和事实星座
星形(一对多)、雪花(有二级)、事实星座(交叉)
1.星型模式的核心是一个大的中心表(事实表),一组小的附属表(维表)。星型模式示例如下所示:
2.雪花模式是星型模式的扩展,其中某些维表被规范化,进一步分解到附加表(维表)中。雪花模式示例如下图所示:
从图中我们可以看到地址表被进一步细分出了城市(city)维。supplier_type表被进一步细分出来supplier维。
3.事实星座模式(Fact Constellation)或星系模式(galaxy schema)
数据仓库由多个主题构成,包含多个事实表,而维表是公共的,可以共享,这种模式可以看做星型模式的汇集,因而称作星系模式或者事实星座模式。本模式示例如下图所示。
度量的分类和计算
- 分布的:划分与不划分的数据集的结果一样
- 代数的:由几次的分布式函数通过加减乘除的计算得到
- 整体的:对整个数据集进行操作的(如rank)
索引OLAP数据
位图索引
有n的属性改成n列,有这个属性就是1,没有就是0
连接索引
通过一列相同的字段连接