电子商务数据联机分析处理Word下载.docx
《电子商务数据联机分析处理Word下载.docx》由会员分享,可在线阅读,更多相关《电子商务数据联机分析处理Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
因此,E.F.Codd提出了多维数据库和多维分析的概念,即OLAP。
Codd同时提出了关于OLAP的12条准则[3]:
准则1OLAP模型必须提供多维概念视图
准则2透明性准则
准则3存取能力推测
准则4稳定的报表能力
准则5客户/服务器体系结构
准则6维的等同性准则
准则7动态的稀疏矩阵处理准则
准则8多用户支持能力准则
准则9非受限的跨维操作
准则10直观的数据操纵
准则11灵活的报表生成
准则12不受限的维与聚集层次
Codd对OLAP概念的解释和准则的说明使人们对OLAP有了一个大致的了解。
OLAP委员会对联机分析处理的定义为:
使分析人员、管理人员或执行人员能够从多种角度对原始数据中转化出来的、能够真正为用户所理解的、并真实反映企业维特性的信息进行快速、一致、交互的存取,从而获得对数据更深入了解的一类软件技术。
OLAP的目标是满足人们对决策支持或多维环境下的特定查询和报表需求,它的技术核心是“维”这个概念,因此OLAP也可以说是多维数据分析工具的集合。
4.1.2OLAP的特点
OLAP的特点主要包含以下几方面的内容:
1.快速性
快速性是指OLAP的快速反应能力。
用户对OLAP的快速反应能力有着很高的要求。
一般来说,OLAP只有在足够的技术支撑条件下(如专门的数据存储格式、大量的事先运算、特殊的硬件设计等),才能在对大量的数据进行分析时得到迅速反应能力。
2.可分析性
可分析性是指OLAP系统应能处理与应用有关的任何逻辑分析和统计分析。
用户无须编程即可定义新的专门计算,将其作为分析的一部分,并以用户满意的方式给出报告。
3.多维性
多维性是指系统提供对数据的多维视图和多维分析,包括对层次维和多重层次维的完全支持。
多维性是OLAP的关键属性。
其中,多维分析是OLAP的灵魂。
多维分析是指对以多维形式组织起来的数据采取各种分析动作,以求剖析数据,使最终用户能从多角度、多侧面来观察数据,从而深入地了解包含在数据中的信息及其内涵。
多维分析的基本操作有:
切片、切块、上卷、下钻和旋转等;
这些分析操作使得OLAP系统可以提供给用户强大的统计、分析及报表处理功能。
4.信息性
信息性是指不论数据量有多大或者数据存储在何处,OLAP系统都能及时获得信息,并管理大量信息。
在这一过程中有许多因素需要考虑,如数据的可复制性、可利用的磁盘空间等。
4.1.3OLTP和OLAP的对比
当今的数据处理大致可以分成两大类:
联机事务处理OLTP、联机分析处理OLAP。
OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。
OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
表4-1列出了OLTP与OLAP之间的比较。
表4-1OLTP与OLAP之间的比较
4.2OLAP的一些基本概念
OLAP的基础是多维数据模型,而多维数据模型是一个逻辑概念,主要解决如何对海量的数据进行快速查询和多视角的展示,以便得出有利于管理决策的信息和知识。
多维数据模型通过引入维、维分层和度量等概念,将信息在概念上视为一个立方体。
为了对OLAP技术有更深入的了解,本小节主要介绍OLAP中涉及的一些基本概念。
1.变量(Variable)
变量是描述可以改变的物理量,它可能代表一个学校的学生人数,也可能是某产品的单价,还可能是某商品的销售数量等。
在一般情况下,变量的值是用数据表示,例如数据100就是某个变量的一个值。
2.维(Dimension)
维是人们观察数据的特定角度。
例如,企业常常关心产品销售数据随着时间的推移而产生的变化情况,这时是从时间的角度来观察产品的销售,所以时间是一个维(时间维);
企业也时常关心自己的产品在不同地区的销售分布情况,这时是从地理分布的角度来观察产品的销售,所以地理分布也是一个维(地理维)。
此外,还有产品维、顾客维等。
3.维的层次(Level)
人们观察数据的某个特定角度(即某个维)还可以存在细节程度不同的多个描述方面,称这多个描述方面为维的层次。
一个维往往具有多个层次,例如,在描述时间维时,可以从日期、月份、季度、年等不同层次来描述,那么日期、月份、季度、年等就是时间维的层次;
同样,城市、地区、国家等构成了地理维的层次。
4.维成员(Member)
维的一个取值称为该维的一个维成员,是数据项在某维中位置的描述。
例如,考虑时间维具有日期、月份、年这3个层次,分别在日期、月份、年上各取一个值组合起来,就得到了时间维的一个维成员,即“某年某月某日”。
一个维成员并不一定在每个维层次上都要取值,例如,“某年某月”、“某月某日”、“某年”等都是时间维的维成员。
5.多维数据组(MultidimensionalDataSets)
一个多维数据组可以表示为(维1,维2,…,维n,变量)。
例如,若日用品销售数据是按时间、地区和销售渠道组织起来的三维立体,加上变量“销售额”,就组成了一个多维数组(地区,时间,销售渠道,销售额),它表示的含义就是某地区在某个时间内通过某个销售渠道而得到的销售额。
6.数据单元(DataUnit)
多维数据组的取值称为数据单元。
当多维数据组的各个维都选中一个维成员时,这些维成员的组合就唯一确定了一个变量的值。
那么数据单元就可以表示为(维1成员,维2成员,…,维n成员,变量的值)。
例如,在产品、地区、时间和销售渠道上各取维成员“牙膏”、“上海”、“1998年12月”和“批发”,就唯一确定了变量“销售额”的一个值(假设为100000),则该数据单元可表示为(牙膏,上海,1998年12月,批发,100000)。
7.数据立方
设计好了结构良好的数据仓库,并且将需要分析的业务数据装载到了数据仓库中之后,就为满足商务决策的全方位需求打下了基础,以后的操作都是基于这些拥有数据的数据仓库进行的。
但是,对数据的多维分析却并不是主要针对数据仓库,而是针对从数据仓库中提取的子集,如数据集市和多维数据集(也称为数据立方)。
数据立方的基本思想是实现某些常用的代价较高的聚集函数的计算,诸如求和、平均、最大值等,并将这些计算结果视图存储在关系数据库中。
因为很多聚集函数经常需要重复计算,所以在多维数据立方中存放预先计算好的结果能保证快速响应,并可灵活提供不同角度和不同抽象层次上的数据视图,以加快分析时的响应速度。
4.3OLAP的分类
数据仓库与OLAP的关系是互补的,OLAP系统一般是以数据仓库为基础,即从数据仓库中提取详细数据的一个子集并经过必要的处理存储到OLAP存储器中,供前端分析工具读取。
OLAP系统按照其存储器的数据存储格式可以分为关系OLAP(RelationalOLAP,简称ROLAP)、多维OLAP(MultidimensionalOLAP,简称MOLAP)和混合型OLAP(HybridOLAP,简称HOLAP)3种类型。
1.ROLAP
ROLAP是OLAP的一种形式,它对存储在关系数据库(而非多维数据库)中的数据作动态多维分析。
ROLAP将多维数据库的多维结构划分为两类表:
一类是事实表,用来存储数据和维关键字;
另一类是维度表,即对每个维至少使用一个表来存放维的层次、成员类别等维的描述信息。
维度表和事实表通过主关键字和外关键字联系在一起,形成了“星形模式”。
对于层次复杂的维,为避免冗余数据占用过大的存储空间,可以使用多个表对其进行描述,这种星形模式的扩展称为“雪花模式”。
ROLAP的最大好处是可以实时地从源数据中获得最新数据并更新,以保持数据实时性;
缺点在于运算效率比较低,用户等待响应时间比较长。
ROLAP将那些应用频率比较高、计算工作量比较大的查询事先做好视图并保存起来。
对每个针对OLAP服务器的查询,优先利用已经计算好的视图来生成查询结果以提高查询效率。
同时作为ROLAP存储器的RBDMS根据OLAP的特性也做了相应的优化,如并行存储、并行查询、并行数据管理、基于成本的查询优化、位图索引等。
ROLAP的主要特点就是可以根据应用的需要有选择地定义一批视图,作为表存于关系数据库中;
它可以监视数据仓库的数据访问情况,对视图进行动态调整,而且这些视图在ROLAP中对用户是透明的,用户可像查询关系数据库一样查询数据仓库中的内容。
2.MOLAP
MOLAP将OLAP分析所用到的多维数据存储为多维数组,以形成“立方体”的结构。
这种结构在得到高度优化后,可以最大限度地提高查询性能。
随着源数据的更改,MOLAP中存储的对象也必须定期处理。
两次处理之间的时间将构成滞后时间,在此期间,OLAP对象中的数据可能无法与当前源数据相匹配。
维护人员可以对MOLAP存储中的对象进行不中断的增量更新。
MOLAP的优势在于由于经过了数据多维预处理,分析中数据运算效率高,主要的缺点在于数据更新有一定延迟。
3.HOLAP
由于ROLAP和MOLAP有着各自的优点和缺点,而且它们的结构迥然不同,给分析设计人员设计OLAP架构带来了困难。
因此,一个新的OLAP结构——混合型OLAP被提出,它能把MOLAP和ROLAP两种结构的优点结合起来。
迄今为止,对HOLAP还没有一个正式的定义。
但很明显,HOLAP结构不应该是MOLAP与ROLAP结构的简单组合,而是这两种结构技术的有机结合,能满足用户各种复杂的分析请求。
实现HOLAP的方法一般有以下几种:
①同时提供多维数据库和关系型数据库,让开发人员来选择。
②在运行时,把对关系型数据库的查询结果存入多维数据库。
HOLAP系统按照一定的先后顺序使用多维数据库和关系型数据库。
HOLAP系统利用一个多维数据库存储高级别的综合数据;
同时,用关系型数据库存储细节性数据。
这种方法是实现HOLAP结构较为理想的方法,它结合了MOLAP和ROLAP的优点。
4.4OLAP的基本操作
OLAP分析是指对以多维形式组织起来的数据采取切片、切块、旋转等各种分析操作,以求剖析数据,让最终用户能从多个角度、多个侧面观察数据仓库中的数据,从而更深入地了解包含在数据中的信息和内涵。
OLAP分析方式迎合了人们的思维模式,因此,减少了混淆并且降低了出现错误解释的可能性。
此处以图4-1所示的某公司在某特定地点、特定产品、特定季节条件下的销售数量的三维图形来介绍OLAP分析中所涉及的几个基本操作[4]。
图4-1某公司在特定地点、特定季节、特定产品条件下的销售量示意
在图4-1中,有三个维度,即产品、地点和季节,每个维度有4个成员,共64个小立方体,每个小