数据库基础与应用 第2版 教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成

上传人:E**** 文档编号:89416348 上传时间:2019-05-24 格式:PPT 页数:32 大小:136.01KB
返回 下载 相关 举报
数据库基础与应用 第2版  教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成_第1页
第1页 / 共32页
数据库基础与应用 第2版  教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成_第2页
第2页 / 共32页
数据库基础与应用 第2版  教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成_第3页
第3页 / 共32页
数据库基础与应用 第2版  教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成_第4页
第4页 / 共32页
数据库基础与应用 第2版  教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《数据库基础与应用 第2版 教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成》由会员分享,可在线阅读,更多相关《数据库基础与应用 第2版 教学课件 ppt 王珊 李盛恩 第13章_联机分析处理(OLAP)技术-完成(32页珍藏版)》请在金锄头文库上搜索。

1、第13章联机分析处理(OLAP)技术,13.1 什么是OLAP 13.2 多维数据模型 13.3 OLAP的实现 13.4 小结,13.1 什么是OLAP,OLAP(On_Line Analytical Processing)即联机分析处理,是以海量数据为基础的复杂分析技术。 OLAP概念是由 E.F.Codd于1993年提出的。 OLAP软件提供的是多维分析和辅助决策功能。对于深层次的分析和发现数据中隐含的规律和知识,则需要数据挖掘(Data Mining)技术和相应的数据挖掘软件来完成。,13.2 多维数据模型,变量(Measure) 变量也称度量,是数据的实际意义,即描述数据“是什么”。

2、例如:数据“10000”本身并没有意义或者说意义未定,它可能是一个学校的学生人数,也可能是某产品的单价,还可能是某商品的销售量等。一般情况下,变量是一个数值的度量指标,例如:“人数”、“单价”、“销售量”等都是变量或称为度量,而“10000万元”则是变量的一个值,销售量10000万元常称为度量值。,13.2.1 基本概念,13.2 多维数据模型,13.2.1 基本概念,维(Dimension) 维是人们观察数据的特定角度。例如,企业常常关心产品销售量随时间的变化情况, 这时他是从时间的角度来观察产品的销售, 所以时间就是一个维(时间维)。企业也时常关心自己的产品在不同的地区的销售分布情况,这时

3、他是从地区分布的角度来观察产品的销售,所以地区也是一个维(地区维)。 “维”是OLAP中十分重要的概念。,13.2 多维数据模型,13.2.1 基本概念,维的层次(Hierarchy) 人们观察数据的某个特定角度(即某个维)还可能存在细节程度不同的多个描述方面,我们称这多个描述方面为维的层次。例如:描述时间维时,可以从年、季、月、日等不同层次来描述,那么年、季、月、日等就是时间维的一种层次;同样,县、市、省、大区、国家等构成了地区维的一种层次。,13.2 多维数据模型,13.2.1 基本概念,维成员(Member) 维的一个取值称为该维的一个维成员,也称作维值。如果一个维的某种层次具有多个层,

4、那么该维的维成员是不同维层的取值的组合。假设时间维的层次是年、月、日这三个层,分别在年、月、日上各取一个值组合起来,就得到了时间维的一个维成员,即“某日某月某年”。一个维成员并不一定在每个维层上都要取值,例如,“某年某月”、“ 某月某日”、“某年”等都是时间维的维成员。,13.2 多维数据模型,13.2.1 基本概念,多维立方体(Cube) 多维数据模型的数据结构可以用这样来一个多维数组来表示:(维1,维2,,维n,度量值),例如:图13.1所示的电器商品销售数据是按时间、地区、商品,加上变量“销售额”组成的一个三维数组:(地区,时间,商品,销售额)。三维数组可以用一个立方体来直观的表示。一般

5、地多维数组用多维立方体CUBE来表示。多维立方体CUBE也称为超立方体。,13.2 多维数据模型,13.2.1 基本概念,图13.1按商品、时间和地区组织的电器商品销售数据,13.2 多维数据模型,13.2.1 基本概念,数据单元(Cell) 多维立方体CUBE的取值称为数据单元。当多维立方体的各个维都选中一个维成员,这些维成员的组合就唯一确定了一个变量的值。 对于三维以上的超立方体,很难用可视化的方式直观地表示出来。为此人们用较形象的星型模式”(Star Schema)和“雪片模式”(Snow Flake Schema)来描述多维数据模型。,13.2 多维数据模型,13.2.1 基本概念,星

6、型模式通常由一个中心表(事实表)和一组维表组成。,图13.2星型模式,13.2 多维数据模型,13.2.1 基本概念,星型模式的事实表与所有的维表相连,而每一个维表只与事实表相连。维表与事实表的连接是通过码来体现的,如图13.3所示。,图13.3 星型模式示例,13.2 多维数据模型,13.2.1 基本概念,雪片模式就是对维表按层次进一步细化后形成的。如图13.4,在 “星型” 维表的角上又出现了分支,这样变形的星型模式被称为“雪片模式”(Snow Flake Schema)。,13.2 多维数据模型,13.2.1 基本概念,图13.4 雪片模式,13.2 多维数据模型,13.2.2 多维分析

7、的基本操作,切片(Slice) 在超立方体cube的某一维上选定一个维成员的操作称为切片。一次切片使原来的Cube维数减一,即结果为一个维数减一的subcube,如图13.5所示。 切块(Dice): 在超立方体Cube上选定两个或更多个维成员的操作称为切块。,13.2 多维数据模型,13.2.2 多维分析的基本操作,图13.5(a) 切片,13.2 多维数据模型,13.2.2 多维分析的基本操作,图13.5(b) 切片,13.2 多维数据模型,13.2.2 多维分析的基本操作,旋转(Pivot): 改变一个超立方体Cube的维方向的操作称为旋转。旋转用于改变对Cube的视角,即用户可以从不同

8、的角度来观察Cube。如图13.6(a),是把一个横向为时间,纵向为产品的二维表旋转为横向为产品和纵向为时间的二维视图。假如对图13.1的Cube把商品维、时间维、地区维执行旋转操作就得到对13.6(b)。,13.2 多维数据模型,13.2.2 多维分析的基本操作,图13.6 旋转操作示例(a),13.2 多维数据模型,时间维,电器商品种类,图13.6 旋转操作示例(b),13.2.2 多维分析的基本操作,13.2 多维数据模型,13.2.2 多维分析的基本操作,向上综合(Roll-up): Roll-up也称为上钻操作。提供Cube上的聚集操作。包括两种形式,一种是在某个维的某一层次上由低到

9、高的聚集操作,例如在时间维上由日聚集到月,由月聚集到年;另一种是通过减少维的个数进行聚集操作,例如两维Cube中包含有时间维和地区维,如果我们把地区维去掉,则得到一个按时间维对所有地区进行聚集操作。,13.2 多维数据模型,13.2.2 多维分析的基本操作,向下钻取(Drill-down): Drill-down 也称为下钻操作。Drill-down是Roll-up的逆操作。它同样包括两种形式,在某个维的某一层次上由高到低的钻取操作,找到更详细的数据。或者通过增加新的维来获取更加细节的数据。,13.2 多维数据模型,13.2.2 多维分析的基本操作,Roll Up,Drill Down,图13

10、.7 Drill-down和Roll-up操作,13.3 OLAP的实现,MOLAP结构直接以多维立方体CUBE来组织数据,以多维数组来存储数据,支持直接对多维数据的各种操作。人们也常常称这种按照多维立方体来组织和存储的数据结构为多维数据库( Multi-Dimension DataBase,简记为MDDB)。Arbor公司的Essbase是一个MOLAP服务器。MOLAP结构的系统环境如图13.8所示。,13.3.1 MOLAP结构,13.3 OLAP的实现,13.3.1 MOLAP结构,图13.8 MOLAP结构的系统环境,13.3 OLAP的实现,MOLAP如何以多维立方体Cube来组织

11、数据的呢?前面我们已经讲解了多维立方体Cube的数据单元可以表示为:(维1维成员,维2维成员 , ,维n维成员,度量值)。多维数组只存储Cube的度量值,维值由数组的下标隐式给出。关系表则维值和度量值都存储。,13.3.1 MOLAP结构,13.3 OLAP的实现,首先,和关系表相比,多维数据库组只存储Cube的度量值。例如图13.1中只存储销售量的值(在表的之间),不存储地区维和商品维的维成员值。多维数组的存储效率高;其次,多维数组可以通过数组的下标直接寻址,和关系表(通过表中列的内容寻址,常常需要索引或全表扫描)相比,它的访问速度快。更重要的是,多维数组有着高速的综合速度,因此可以较好地支

12、持向上综合、向下钻取等多维分析操作。,13.3.1 MOLAP结构,13.3 OLAP的实现,多维数组存储方式存在如下不足: 1. 多维数组的物理存放方式通常是按照某个预定的维序线性存放的,不同维的访问效率差别很大。以图13-9(b)二维数组为例,如果按行存放的话,则访问某电器产品的销售额时,效率很高,因为一次I/O读取的页面包含了多个行值;但访问某地区的销售额时,效率就会降低。,13.3.1 MOLAP结构,13.3 OLAP的实现,2. 在数据稀疏的情况下,即Cube的许多数据单元(维1维成员,维2维成员 ,,维n维成员,度量值)上无度量值,多维数组由于大量无效值的存在,存储效率会下降。,

13、13.3.1 MOLAP结构,13.3 OLAP的实现,13.3.2 ROLAP结构 ROLAP将多维立方体结构划分为两类表,一类是事实(Fact)表,另一类是维表。事实表用来描述和存储多维立方体的度量值及各个维的码值;维表用来描述维信息,包括维的层次及成员类别等。ROLAP用关系数据库的二维表来表示事实表和维表。也就是说ROLAP用“星型模式”和“雪片模式”来表示多维数据模型。,13.3 OLAP的实现,13.3.2 ROLAP结构 同MOLAP相比,关系数据库表达多维立方体不大自然,由于关系数据库的技术较为成熟,ROLAP在数据的存储容量、适应性上占有优势。当维数增加、减少时只需增加、删除

14、相应的关系,修改事实表的模式,较容易适应多维立方体的变化。因此,ROLAP的可扩展性好。,13.3 OLAP的实现,13.3.2 ROLAP结构 但其数据存取较MOLAP复杂。首先,用户的分析请求(通常用MDX语言来表达),这就需要由ROLAP服务器把MDX转换为SQL请求,然后交由关系数据库管理系统处理。处理结果还须经ROLAP服务器多维处理后返回给用户。而且SQL语句尚不能直接处理所有的分析计算工作,只能依赖附加的应用程序来完成,因此执行效率上不如MOLAP高。,13.4 小结,我们主要应把握以下几点: 1. 掌握维、层、层次、成员、度量和立方体等主要的概念,了解多维数据模型的一些比较深入的问题,如,属性、可汇总性、维层次的种类等。 2. 掌握联机分析的主要操作。 3. 了解主流的联机分析软件结构,领会在不同的实现结构中是如何实现多维数据模型的各个要素。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号