联机分析处理的概念
联机分析处理(OLAP)是使分析人员、管理人员或执行人员能够从多种角度,对从原始数据中转化出来的、能够真正为用户所理解并真实反映企业维特征的信息进行快速、一致、交互式的存取,从而对数据有更深入了解的一类软件技术。
联机分析处理的功能
(1) 提供多维逻辑视图
(2) 提供交互式查询
(3) 提供数据分析的建模功能
(4) 预测、趋势分析和统计分析
联机分析处理的关键名词
变量:是数据的实际意义,即描述数据“是什么”。例如:数据“10000”本身没有意义或者说意义未定,它可能是一个学校的学生人数,也可能是某产品的单价,还可能是某商品的销售量,等等。一般情况下,变量总是一个数值度量指标,例如:“人数”、“单价”、“销售量”等都是变量,而“10000”则是变量的一个值。
维:是人们观察数据的特定角度,是考虑问题时的一类属性,属性集合构成一个维。例如,企业常常关心产品销售数据随着时间推移而产生的变化情况,这时他是从时间的角度来观察产品的销售,所以时间就是一个维(时间维)。
维的层次:人们观察数据的某个特定角度(即某个维)还可以存在细节程度不同的各个描述方面,我们称这多个描述方面为维的层次。一个维往往具有多个层次,例如描述时间维时,可以从日期、月份、季度、年等不同层次来描述,那么日期、月份、季度、年等就是时间维的层次;同样,城市、地区、国家等构成了地理维的多个层次。
维成员:维的一个取值称为该维的一个维成员。如果一个维是多层次的,那么该维的维成员是在不同维层次的取值的组合。例如,我们考虑时间维具有日期、月份、年这三个层次,分别在日期、月份、年上各取一个值组合起来,就得到了时间维的一个维成员,即“某年某月某日”。
多维数据组:一个多维数据组可以表示为(维1,维2,…,维n,变量)。例如,若日用品销售数据是按时间、地区和销售渠道组织起来的三维立体,加上变量“销售额”,就组成了一个多维数组(地区,时间,销售渠道,销售额),它表示的含义就是某地区在某个时间内通过某个销售渠道而得到的销售额。
数据单元:多维数组的取值。当多维数组的各个维都选中一个维成员,这些维成员的组合就唯一确定了一个变量的值。那么数据单元就可以表示为:(维1维成员,维2维成员,……,维n维成员,变量的值)。例如,我们在地区、时间和销售渠道上各取维成员“北京”、“2006年12月”和“批发”,就唯一确定了变量“销售额”的一个值(假设为10000),则该数据单元可表示为:(北京,2006年12月,批发,10000)。
数据立方:用于数据分析的,从数据仓库中抽取的子集,如数据集市和多维数据集。
联机分析处理的分类
(1) ROLAP
ROLAP是一种对关系数据库中的数据做动态多维分析的形式。
事实表:用来存储数据和维关键字。
维表:存放维的层次、成员类别等信息。

ROLAP的优点:实时从源数据中获取最新数据并更新。
ROLAP的缺点:运算效率低、响应时间长。
(2) MOLAP
MOLAP是一种对多维数据组中的数据做动态多维分析的形式。
MOLAP的优点:快速响应、 存储的数据预处理程度高
MOLAP的缺点:缺乏灵活性 、存储空间大
优点:MOLAP能够迅速响应决策分析人员的分析请求并快速地将分析结果返回给用户。MOLAP具有独特的多维数据库结构以及存储在其中的预处理程度很高的数据,数据在填入MDDB的数组结构之后,MDDB将自动建立索引,提高查询性能。
缺点:MOLAP结构的缺点是缺乏灵活性和存储空间大,在MOLAP结构中,OLAP服务器主要是通过读与处理过的数据来完成分析操作,而这些与处理操作是预先定义好的,这就限制了其灵活性,另外,MOLAP存储方式需要额外的存储开销,因此在提高性能的同时,还需要通过压缩技术缩减存储空间。
(3) ROLAP和MOLAP的比较
| ROLAP | MOLAP |
| 关系数据库 | 多维数据组 |
| 响应速度慢 | 性能好、响应速度快 |
| 存储空间耗小、维数没有限制 | 存储空间大 |
| 通过SQL实现数据存储 | 缺乏数据模型和数据访问标准 |
| 无法完成维之间的计算 | 复杂的跨维计算 |
| 维护困难 | 管理方便 |
(4) HOLAP
① 同时提供MDDB和RDBMS,让开发人员选择。采用这种方法,开发人员可以选择把信息存放在MDDB中或RDBMS中,但不能同时存放在MDDB和RDBMS中;
② 在运行时把对关系型数据库的查询结果存入多维数据库。HOLAP系统利用开发人员定义的一个静态结构的多维模型来暂存在运行时检索出的数据.当客户端提交一个分析请求时,系统先检查这个多维结构缓存中是否有分析所需的数据,如果没有,则产生SQL语句从RDBMS中把相应的数据载入多维数据的缓存中;
③ 利用一个多维数据库存储高级别的综合数据,同时用RDBMS存储细节数据。这种方法是如今被认为实现HOLAP结构较理想的方法。它结合了MOLAP和ROLAP的优点。在该方法中,客户端用户提交一个分析请求,由系统从MDDB中提取经过综合的数据或从RDBMS提取细节数据。
联机分析处理的基本操作
切片:对多维数据组中某一个维的成员选取的操作。
切块:对多维数据组中两个(或两个以上)维选定维成员的操作。
旋转:改变数据维的方向。
钻取:上钻是指细节数据概括到汇总数据。
下钻是指汇总数据深入到细节数据。
联机分析处理在电子商务中的应用
(1) 销售数据分析
(2) 客户属性分析
(3) 产品数据分析
用数据分析来帮助油田开采决策
阿纳达科石油公司(Anadarko Petroleum)是休斯顿一家石油勘探及生产商。公司的地球化学家和工程师们根据大量的地震及其他方面的数据来预测储量可观的石油和天然气的地下位置。随着原油价格上涨,阿纳达科石油公司每五个小时就要在世界上某个地方开采一口新井。为了决定这些油井的位置,公司的地理学专家需要查阅许多数据库,包括磁场数据、重力数据、现有油井中的传感器传输来的信息,以及对地表岩石结构进行地震勘测的结果。做这项工作,磁盘驱动器需要很大空间。例如,对墨西哥海湾一块9平方英里的海底的勘测结果就包括5~6 GB(千兆字节)的数据资料;而在阿纳达科石油公司多达20 000GB的存档资料库里却有成千上万这样的数据。那么他们应该怎样指点耗资巨大的钻井队伍呢?答案就在那些数据中。
一种新的软件正开始帮助这些公司在寻找隐藏于数据海洋中的模式和内涵上减少时间和金钱的投入。阿尔伯格是马萨诸塞州萨默维尔市星火(Spot fire)软件公司的创始人。他有一个目标,就是要用醒目的视觉显示器通过仅仅是普通人就能很快直观掌握的方法来演示数据结果。“数据库是图表法将要攻克的最后领域”,星火公司的承诺是“简化决策程序”。 星火公司和加利福尼亚州瑞得兰市的著名地理信息系统供应商ESRI结成了合作联盟。而最后的结果现在已经转化为供阿纳达科石油公司员工用于决定油田开采的Decision Site软件,并配以可视地图。
阿纳达科石油公司的国际勘探部经理罗恩·贝恩(Ron Bain)告诉我们:“我们的地理学专家和工程师需要将大量的数据库信息以Excel电子表格的方式读出,可以想象,在若干个Excel电子表格上对1 000个数据点进行比较是一件非常困难的事情。而采用星火公司的软件能同时完成所有交叉测绘工作,以寻找石油的储藏地点。”
贝恩说:“我们喜欢说我们在有石油的地方开采,而不是在可能有石油的地方。Decision Site软件能帮助我们更陡地找到答案。”
思考问题:
1.星火公司的软件在哪些方面能够帮助决策者?
2.星火公司的成功是否能够应用于其它企业?
【资源列表】
1.刘伟江:《商务智能-概念、方法及在管理中的应用》,社会科学文献出版社
2.夏火松:《商务智能》,科学出版社
选择OLAP工具的原则
1.多维性
作为OLAP系统的用户——管理人员,面对的企业中的管理对象是多维、多角度的。这就决定了OLAP系统要能够为管理人员提供多维视图,以考察企业和管理对象。为满足多维性,关于企业的数据空间也应该足多维的。多维性使用户能够对多维数据进行切片、切块和旋转操作。
多维视图可以方便业务分析人员从不同的侧面考察企业的整体运作情况。例如,按照地区、时问、产品或者产品组来分析销售情况。因此,多维分析将尽可能地模拟这种对业务的理解。用户使用OLAP分析技术在不同的层次上分析业务。相对于传统的数据模型,如关系模型,多维数据模型使得业务分析人员能够更加方便和直观地理解、导航和操纵OLAP模型。
2.直观性
直观性是指要求OLAP系统能够为用户提供直观、易于理解的数据操作,图形用户界面的引导使用户可以轻而易举地完成数据的定位、上钻、下钻等复杂的数据分析操作。
3.可访问性
可访问性是指存储在OLAP系统中的数据能够以合适的方式存储,便于用户访问和查询。物理数据可以来源于任何系统类型,但是对用户而言是透明的,只有应用工具才需要了解这此数据源。OLAP工具应该将其逻辑模式映射到数据的物理存储上,并可以访问数据,还能够进行所需要的转换,以给出单一的、一致的用户视图。一致的用户视图。
4.解释性批处理提取
解释性批处理提取在OLAP系统中常常采用在OLAP引擎或服务器上存储数据立方体使用的多种混合工具来实现。
5.OLAP分析模型
OLAP分析模型是指在高层获般OLAP所支持的分析数据,包括静态描述性报告、解释性分析、假设性分析和预测性分析等。
6.客户服务器体系结构
客户服务器体系结构对于保证系统的可扩缩性很有帮助,可以将系统所需耍的各种功能进行合理的分布。客户服务器体系结构不仅是指双层的客户服务器体系结构,而且包含广义的多层结构,如瘦客户端的三层结构.从而可以无缝地将逻辑多维模型分布到多台计算机中。
7.透明性和开放性
透明性和升放性主要是指OLAP系统对用户的透明和开放,其次是指OLAP数据源对用户的透明和开放。换句话说,透明性和开放性有两层含义,第一层含义是指无论OLAP系统在整个体系结构中的地位如何,用户都可以使用满足其需求的表现工具,比如电子数据表、传统报表工具或桌面式OLAP工具来访问OLAP系统,而无须了解OLAP分析工具的具体实现方式和实现细节;第二层含义是指用户可以直接使用系统的OLAP功能来分析数据,而无须了解数据的来源或具体存储方式以及所采用的存储技术。这就意味着,OLAP解决方案提供的多维分析能里力与用户界面层的选择和数据的物理存储方式无关。
8.多用户性
OLAP的多用户性是指多个用广可以在一个分析模型上同时操作,利用同一个分析模型来处理不同的数据或者在同一个数据集市不同的模型。多用户性必然要求在实际应用中OLAP保证数据的完整性和安全性,并且能够进行数据的并发处理(并发查询与更新)。
9.处理非正规数据
OLAP在处理非正规数据时要从业务处理系统中获取数据并进行解耦,而不返回数据源的传播和计算。实际上这一标准要求系统能够达到“强内聚,弱耦合”的系统一般设计标准。
10.存储OLAP结果
OLAP结果的标准是将决策分析和数据源分开。OLAP用户不能在公共概念视图的基础上对企业数据进行分析。在实际分析过程中要将分析的中间结果和最终结果分开,并在另一个存储区内存放。
11.提取丢失值
OLAP中的丢失值并不是零值,OLAP中的空值既可能是未知值,也可能是丢失值。提取丢失值是系统处理空值的一种方式。
12.处理丢失值
OLAP在处理丢失值时,OLAP引擎应该忽略这些丢失值。
13.弹性报告
OLAP的弹性报告要求从各方面提供从数据模型中分析出来的数据和信息,用户可按照任何想要的方式来操作、分析、综台和查看数据,充分反映数据的多维性,具有较高的灵活性。而且可由分析人员根据需要对各维的报告进行旋转、汇总或者合并操作,以用户所需要的任何方式来操作,并且报告的输出不应随着维数的增加而被削弱。这一条规则可使用户按照其所需要的任何方式组合维,有助于用户进行简单的、可视化的对比分析。
14.一致性报告
该标准要求OLAP能够为用户提供时间可预计的报告。在用户操作的过程中,系统的响应时间是一致的,这就需要对数据立方体进行预定义和计算。即使在数据的维数与综合层次增加时,提供给用户的报告能力和响应时间也不应该有明显的下降。
15.对物理层的自动调整
要得到OLAP环境中的关系模型中独立的物理数据,需要对物理层自动进行调整。要求关系模型在数据未卸载、删除或重定义结构时,能够对底层物理结构加以修改。
16.通用维
维的通用性是指每个维在结构和操作特性上都必须是相同的,在一个维度上能够进行的操作,在另一个维度上也应能进行。还应允许在某些特定的维上附加特殊的操作。这种通用性可以使OLAP工具应用于多种目的和场合,而不是仅用于某个特殊的业务领域。维的通用性这一特征目前还存在许多争议,因为除了时间维,大多数维都有自己的特性,相互之间总是存在着差异。
17.无限维与聚合层
OLAP的维数应该不小于15个,而且用户可以在给定的任意路径上建立任意多个聚集层次,给定联合路径的概括级别数据也是无限的。这一条规则使得构建出来的模型具有很强的灵活性.但是在实际应用中,并不是维数越多越好。因为无限维与聚合层会导致数据在有限的空间内膨胀,将会用尽整个存储空间。
18.不受限的跨维操作
在多维的数据分析中,所有维的生成和处理是平等的,OLAP工具应该能够处理维之间的相关计算,而不需要用户自定义计算。如果在计算时需要按照语言来定义规则,则这种语言应该允许计算和数据操作跨越任何数目的数据维,而不必限制数据单元间的关系,也无须考虑每个单元包含的通用数据属性的数日。也就是说,OLAP不受限的跨维操作要能够在维之间进行符号操作,而不是仅对可测量的数据进行操作。
资料来源:http://articles.e-works.net.cn/bi/article72067.htm经删减整理