联机分析处理系统概述

联机分析处理概述

发展背景

随着数据库技术的广泛应用,企业信息系统产生了大量的数据,如何从这些海量数据中提取对企业决策分析有用的信息成为企业决策管理人员所面临的重要难题。传统的企业数据库系统(管理信息系统)即联机事务处理系统( On-Line Transaction Processing, 简称 OLTP )作为数据管理手段,主要用于事务处理,但它对分析处理的支持一直不能令人满意。因此,人们逐渐尝试对 OLTP 数据库中的数据进行再加工,形成一个综合的、面向分析的、更好的支持决策制定的决策支持系统( Decision Support System ,简称 DSS )。企业目前的信息系统的数据一般由 DBMS 管理,但决策数据库和运行操作数据库在数据来源、数据内容、数据模式、服务对象、访问方式、事务管理乃至无力存储等方面都有不同的特点和要求,因此直接在运行操作的数据库上建立 DSS 是不合适的。数据仓库( DataWarehouse )技术就是在这样的背景下发展起来的。数据仓库的概念提出于 20 世纪 80 年代中期, 20 世纪 90 年代,数据仓库已从早起的探索阶段走向实用阶段。业界公认的数据仓库概念创始人 W.H.Inmon 在《 Building the DataWarehouse 》一书中对数据仓库的定义是:“数据仓库是支持管理决策过程的、面向主题的、集成的、随时间变化的持久的数据集合”。构建数据仓库的过程就是根据预先设计好的逻辑模式从分布在企业内部各处的 OLTP 数据库中提取数据并对经过必要的变换最终形成全企业统一模式数据的过程。当前数据仓库的核心仍是 RDBMS 管理下的一个数据库系统。数据仓库中数据量巨大,为了提高性能, RDBMS 一般也采取一些提高效率的措施:采用并行处理结构、新的数据组织、查询策略、索引技术等等。

包括联机分析处理 ( On-Line Analytical Processing ,简称 OLAP )在内的诸多应用牵引驱动了数据仓库技术的出现和发展;而数据仓库技术反过来又促进了 OLAP 技术的发展。 联机分析处理的概念最早由关系数据库之父 E.F.Codd 于 1993 年提出的。 Codd 认为联机事务处理( OLTP )已不能满足终端用户对数据库查询分析的要求, SQL 对大数据库的简单查询也不能满足用户分析的需求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决策者提出的需求。因此, Codd 提出了多维数据库和多维分析的概念,即 OLAP 。 OLAP 委员会对联机分析处理的定义为:使分析人员、管理人员或执行人员能够从多种角度对从原始数据中转化出来的、能够真正为用户所理解的、并真实反映企业维特性的信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。 OLAP 的目标 是满足决策支持或多维环境特定的查询和报表需求,它的技术核心是 “ 维 ” 这个概念,因此 OLAP 也可以说是多维数据分析工具的集合。

OLAP 与 OLTP

OLAP 最终的数据来源与 OLTP 一样,均来自底层的数据库系统,但二者面对的用户群不同,数据内容的特点也不同。两者的区别概述如下表所示:

OLTP 数据 OLAP 数据

原始数据 导出数据

细节性数据 综合性和提炼性数据

当前值数据 历史数据

可更新 不可更新,但周期性刷新

一次处理的数据量小 一次处理的数据量大

面向应用,事务驱动 面向分析,分析驱动

面向操作人员,支持日常操作 面向决策人员,支持管理需要

OLAP 的特点和评价准则

OLAP 的特点可以用五个关键字来代表: Fast Analysis of Shared Multidimentional Information ( FASMI, 共享多维信息的快速分析)。这也是设计人员或管理人员用来判断一个 OLAP 设计是否成功的准则。

Fast :系统响应用户的时间要相当快捷,要达到这个目标,数据库的模式应该朝着更广泛的技术发展,包括特殊的数据存储格式,预先计算和硬件配置等。

Analysis :系统应能处理与应用有关的任何逻辑分析和统计分析,用户无需编程就可以定义新的专门计算 , 将其作为分析的一部分 , 并以用户理想的方式给出报告。用户可以在 OLAP 平台上进行数据分析 , 也可以连接到其他外部分析工具上,同时应提供灵活开放的报表处理功能,以保存分析结果。

Shared :这意味着系统要能够符合数据保密的安全要求,即使多个用户同时使用,也能够根据用户所属的安全级别,让他们只能看到他们应该看到的信息。

Multidimensional : OLAP 的显著待征就是它能提供数据的多维视图系统必须提供对数据分析的多维视图和分析 , 包括对层次维和多重层次维的完全支持。

Information: 不论数据量有多大 , 也不管数据存储在何处 , OLAP系统应能及时获得信息 , 并且管理大容量信息。这里有许多因素需要考虑 , 如数据的可复制性、可利用的磁盘空间、OLAP产品的性能及与数据仓库的结合度等。

OLAP 逻辑概念和典型操作

OLAP 展现在用户面前的是一幅幅多维视图。

** 维 ** ( Dimension ): 是人们观察数据的特定角度,是考虑问题时的一类属性,属性集合构成一个维 ( 时间维、地理维等 ) 。

** 维的层次 ** ( Level ): 人们观察数据的某个特定角度(即某个维 ) 还可以存在细节程度不同的各个描述方面 ( 时间维:日期、月份、季度、年)。

** 维的成员 ** ( Member ) : 维的一个取值,是数据项在某维中位置的描述。 ( “ 某年某月某日 ” 是在时间维上位置的描述 )。

** 度量 ** ( Measure ) : 多维数组的取值。( 2000 年 1 月,上海,笔记本电脑, $100000 )。

OLAP 的基本多维分析操作有钻取( Drill-up 和 Drill-down )、切片( Slice )和切块( Dice )、以及旋转( Pivot )等。
** 钻取 ** :是改变维的层次,变换分析的粒度。它包括向下钻取( Drill-down )和向上钻取( Drill-up ) / 上卷 ( Roll-up )

。 Drill-up 是在某一维上将低层次的细节数据概括到高层次的汇总数据,或者减少维数;而 Drill-down 则相反,它从汇总数据深入到细节数据进行观察或增加新维。
** 切片和切块 ** :是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个或以上,则是切块。
** 旋转 ** :是变换维的方向,即在表格中重新安排维的放置(例如行列互换)。

OLAP 系统的体系结构和分类

数据仓库与 OLAP 的关系是互补的,现代 OLAP 系统一般以数据仓库作为基础,即从数据仓库中抽取详细数据的一个子集并经过必要的聚集存储到 OLAP 存储器中供前端分析工具读取。典型的 OLAP 系统体系结构如下图所示:

OLAP 系统按照其存储器的数据存储格式可以分为关系 OLAP ( Relational OLAP ,简称 ROLAP )、多维 OLAP ( Multidimensional OLAP ,简称 MOLAP )和混合型 OLAP ( Hybrid OLAP ,简称 HOLAP )三种类型 。

1. ROLAP

ROLAP 将分析用的多维数据存储在关系数据库中并根据应用的需要有选择的定义一批实视图作为表也存储在关系数据库中。不必要将每一个 SQL 查询都作为实视图保存,只定义那些应用频率比较高、计算工作量比较大的查询作为实视图。对每个针对 OLAP 服务器的查询,优先利用已经计算好的实视图来生成查询结果以提高查询效率。同时用作 ROLAP 存储器的 RDBMS 也针对 OLAP 作相应的优化,比如 并行存储、并行查询、并行数据管理、基于成本的查询优化、位图索引、 SQL 的 OLAP 扩展 (cube,rollup) 等等。

2. MOLAP

MOLAP 将 OLAP 分析所用到的多维数据物理上存储为多维数组的形式,形成 “立方体”的结构。维的属性值被映射成多维数组的下标值或下标的范围,而总结数据作为多维数组的值存储在数组的单元中。由于 MOLAP 采用了新的存储结构,从物理层实现起,因此又称为物理 OLAP ( Physical OLAP );而 ROLAP 主要通过一些软件工具或中间软件实现,物理层仍采用关系数据库的存储结构,因此称为虚拟 OLAP ( Virtual OLAP )。

3. HOLAP

由于 MOLAP 和 ROLAP 有着各自的优点和缺点(如下表所示) , 且它们的结构迥然不同,这给分析人员设计 OLAP 结构提出了难题。为此一个新的 OLAP 结构——混合型 OLAP ( HOLAP )被提出,它能把 MOLAP 和 ROLAP 两种结构的优点结合起来。迄今为止,对 HOLAP 还没有一个正式的定义。但很明显, HOLAP 结构不应该是 MOLAP 与 ROLAP 结构的简单组合,而是这两种结构技术优点的有机结合,能满足用户各种复杂的分析请求。

ROLAP

|

MOLAP

---|---

沿用现有的关系数据库的技术

|

专为 OLAP 所设计

响应速度比 MOLAP 慢;

现有关系型数据库已经对 OLAP 做了很多优化,包括并行存储、并行查询、并行数据管理、基于成本的查询优化、位图索引、 SQL 的 OLAP 扩展 ( cube , rollup ) 等,性能有所提高

|

性能好、响应速度快

数据装载速度快

|

数据装载速度慢

存储空间耗费小,维数没有限制

|

需要进行预计算 ,可能导致数据爆炸,维数有限;无法支持维的动态变化

|

借用 RDBMS 存储数据,没有文件大小限制

|

受操作系统平台中文件大小的限制,难以达到 TB 级 ( 只能 10~20G)

可以通过 SQL 实现详细数据与概要数据的存储

|

缺乏数据模型和数据访问的标准

– 不支持有关预计算的读写操作

– SQL 无法完成部分计算

• 无法完成多行的计算

• 无法完成维之间的计算

|

– 支持高性能的决策支持计算

• 复杂的跨维计算

• 多用户的读写操作

• 行级的计算

维护困难

|

管理简便

主要 OLAP 厂商产品介绍

Hyperion

**_ Hyperion Essbase OLAP Server _ ** ,在上面有超过 100 个的应用程序,有 300 多个用 Essbase 作为平台的开发商。具有几百个计算公式,支持过程的脚本预言,及统计和基于维的计算。

强大的 OLAP 查询能力,利用 Essbase Query Designer , 商业用户可以不用 IT 人员的帮助自己构件复杂的查询。

广泛的应用支持,可以扩展数据仓库和 ERP 系统的价值,建立对电子商务、 CRM 、金融、制造业、零售和 CPG ( consumer packaged goods )等应用的分析程序。

Speed-of-Thought 的响应时间,支持多用户同时读写

Web-Enabled 的,以服务器为中心的体系结构,支持 SMP

强大的合作伙伴提供完整的解决方案, 60 多个包装好的解决方案, 300 多个咨询和实施公司。

丰富的前端工具,有 30 多个前端工具可供选择,其中包括 Hyperion 自己的 Wired for OLAP 、 Spider-Man Web Application 、 Objects 、 Essbase Spreadsheet Add-In 、 Web Gateway 、 Reporting 。

**_ Hyperion Enterprise _ ** ,为跨国公司提供的财务整合、报告和分析的解决方案。有 3000 多家组织在使用此套系统。

功能丰富:支持多种财务标准 US GAAP , Canadian GAAP , UK GAAP ,国际会计标准( ISA ), FASB , HGB 。分公司间交易的自动平帐。 FAS52 货币转换。 FAS94 。

易用:可通过 Excel , <SPAN lang=

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus