OLAP概述
一、什么是OLAP?
OLAP是针对某个特定的主题进行联机数据访问、处理和分析,通过直观的方式从多个维度、多种数据综合程度将系统的运营情况展现给使用者。
OLAP委员会给予OLAP的定义为,OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。
二、OLAP技术的特性
1、12条准则
Codd提出OLAP的12条准则来描述OLAP系统:
准则1:OLAP模型必须提供多维概念视图。
准则2:透明性准则。
准则3:存取能力推测。
准则4:稳定的报表能力。
准则5:客户/服务器体系结构。
准则6:维的等同性准则。
准则7:动态的稀疏矩阵处理准则。
准则8:多用户支持能力准则。
准则9:非受限的跨维操作。
准则10:直观的数据操纵。
准则11:灵活的报表生成。
准则12:不受限的维与聚集层次。
2、特性
(1)多维性:OLAP服务通过支持多维聚合路径或层次结构和/或多重层次结构,提供了大量数据视图或多维的概念性视图。
(2)可理解性:为OLAP分析设计的数据仓库或数据集市可以处理与应用程序和开发人员相关的任何业务逻辑和统计分析,同时使它对目标用户而言足够简单。
(3)
交互性:OLAP帮助用户通过对比性的个性化查看方式,以及对各种“what-if”数据模型场景中的历史数据和预计算数据进行分析,将业务信息综合起来,用户可以在分析中定义新的专用计算,并可以以任何希望的方式报告数据。
(4)快速性:OLAP服务常常以多用户的客户机/服务器模式实现,而且无论数据库的规模和复杂性有多大,都能够对查询提供已知的快速响应。合并的业务数据可以沿着所有维度中的层次结构预先进行聚合,从而减少构建OLAP报告所需的运行时间。
三、OLAP和OLTP的区别
(1)OLAP面向的是市场,主要供企业的决策人员和中高层管理人员使用,用于数据分析,而OLTP是面向顾客的,主要供操作人员和低层管理人员使用,用于事务和查询处理。
(2)OLAP系统管理大量历史数据,提供汇总和聚集机制,并在不同的粒度级别上存储和管理信息。这些特点使得数据更容易用于决策分析。OLTP系统则仅管理当前数据,通常,这种数据太琐碎,难以用于决策。
(3)OLAP系统处理的是来自不同组织的信息,由多个数据存储继承的信息。由于数据量巨大,OLAP数据存放在多个存储介质上,不过,对OLAP系统的访问大部分是只读操作,尽管许多可能是复杂的查询。相比之下,OLTP系统则主要关注企业或部门内部的当前数据,而不涉及历史数据或不同组织的数据。
四、数据仓库与OLAP的关系
在数据仓库中,OLAP和数据仓库是密不可分的,但是两者具有不同的概念。
数据仓库是一个包含企业历史数据的大规模数据库,这些历史数据主要用于对企业的经营决策提供分析和支持。其最重要的特征是数据集成,而最重要的用途是信息数据呈现。
OLAP服务并不是主要针对数据集成而设计的,但是,它是一种强大的数据呈现方法,在大多数数据仓库解决方案中都使用OLAP。典型的OLAP服务常常源自一个或多个专门设计的数据集市。OLAP服务应该被看成作为数据仓库解决方案的一部分。
五、OLAP分类
1、OLAP技术中数据存储方式
在OLAP系统的视线中,按照OLAP存储方式(数据组织方式--基于关系型数据库、基于多维数据库和基于关系型数据库与多维数据库的混合方式)的不同,可将OLAP分成ROLAP(关系OLAP)、MOLAP(多维OLAP)、HOLAP(混合OLAP)。
从逻辑上讲,OLAP服务器为用户提供来自数据仓库或数据集市的多维数据,而不必关心数据如何存放和存放在何处。然而,OLAP服务器的物理结构和实现必须考虑存放问题。
2、ROLAP
ROLAP(Relational OLAP)表示基于的数据存储在传统的关系型数据库中。
每个ROLAP分析模型基于关系型数据库中一些相关的表,这些相关的表中有反映观察角度的维度表和含有度量的事实表。
这些表在关系型数据库中通过外健相互关联,典型的组织模型有星形模式、雪花模式和事实星座模式。
3、MOLAP
MOLAP(Multidimensional OLAP)表示基于的数据存储在多维数据库中。多维数据库有时也称数据立方体。
多维数据库可以用多维数组表示。例如,一个包含有时间维、地区维、品牌维和销售量的数据集通过多维数组可表示成:(时间维、地区维、品牌维、销售量)
通过这种方式表示数据可以极大提高查询的性能。

