随着数据库技术的广泛应用,企业信息系统产生了大量的数据,如何从这些海量数据中提取对企业决策分析有用的信息成为企业决策管理人员所面临的重要难题。传统的企业数据库系统(管理信息系统)即联机事务处理系统(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与OLTPOLAP最终的数据来源与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(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,Lotus 1-2-3和各种浏览器访问系统。
支持公司结构的调整。
跨国公司的支持:同时支持6种语言及各个不同国家的法律和税收要求。
完整的过程控制和审计跟踪,及安全等级的设置。
能与ERP或其他数据源集成
Hyperion Pillar,预算和计划工具。全球用户超过1500家,提供基于活动的预算,基于项目的计划,集中式计划,销售预测和综合计划。
分布式体系结构
详细计划的制订:允许一线经理制订详细的计划
复杂的建模和分析能力
Oracle
Express Server提供全面的OLAP能力,有全球超过3000家用户
用户可通过Web和电子表格使用
灵活的数据组织方式,数据可以存放在Express Server内,也可直接在RDB上使用
有内建的分析函数和4GL来用户自己定制查询
Cognos
PowerPlay,为商务效率评价BPM(Business Performance Measurement)提供全面的报告和分析环境。向决策者提供企业运行效率的各种关键数据,进行各种各样的分析。
只用鼠标点击、拖拉就可以浏览多维数据
自动利用Web发布得到的分析报告
支持多种OLAP Server:Microsoft OLAP Services、Hyperion Essbase、SAP BW、IBM OLAP for DB2
完备的授权和安全体系
NovaView,是Microsoft SQL Server 7.0 OLAP Services的客户端应用程序。
MicroStrategy
MicroStrategy 7,是新一代的智能平台(Intelligence Platform)面向电子商务应用e-business和电子客户关系管理eCRM。
具有强大的分析能力
以Web为中心的界面
支持上百万的用户和TB的数据
快速开发能力,可直接利用已有的数据模式
Intelligence Server,One for all analytic applications
Microsoft
SQL Server 7.0 OLAP Services,是SQL Server 7.0的OLAP模块,可以使用任何关系数据库或平面文件作为数据源,其中的PivotTable Service提供了客户端的数据缓存和计算能力。
智能的Client/Server数据管理,提高响应速度,降低网络流量
通过OLE DB for OLAP,允许不同的客户端访问
BusinessObjects
BusinessObjects,是易用的BI工具,允许用户存取、分析和共享数据。
可应用多种数据源:RDB,ERP,OLAP,Excel等
可应用VBA和开放式对象模型来进行开发定制
IBM
DB2 OLAP Server,是强大的多维分析工具,把Hyperion Essbase的OLAP引擎和DB2的关系数据库集成在一起。
与Essbase API完全兼容
数据用星型模型存放在关系数据库DB2中
Brio
Brio.Enterprise,是强大的易用的BI工具,提供查询,OLAP分析和报告的能力
支持多种语言,包括中文
Brio.Report,强大的企业级报告工具
OLAP相关标准
APB-1 OLAP Benchmark Release II(SPONSORED BY OLAP COUNCIL)
The benchmark simulates a realistic OLAP (On-Line Analytical Processing) business situation that exercises server-based software. The goal of the APB-1 is to measure a server's overall OLAP performance rather than the performance of specific tasks. To ensure the relevance of the APB-1 to actual business environments, the operations performed on the database have been carefully chosen to reflect common business operations. For the purposes of comparing the performance of different combinations of hardware and software, a standard benchmark metric called AQM (Analytical Queries per Minute) instead of AQT (Analytical Queries Time) has been defined.
本文地址:http://com.8s8s.com/it/it21258.htm