电子商务数据联机分析处理_第1页
电子商务数据联机分析处理_第2页
电子商务数据联机分析处理_第3页
电子商务数据联机分析处理_第4页
电子商务数据联机分析处理_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电子商务数据联机分析处理

随着信息技术的不断发展以及企业需求的不断增加,全球数据呈爆炸式增长。英特尔公司的

海德⑴日前说:“我们己经进入ZB时代,并且很快将迈入YB年代。"(注:1ZB=IO的21

次方比特,YB=10的24次方比特)数据的增加也促使了信息处理技术的不断发展,在这个

过程中,联机分析处理(OnlineAnalyticalProcessing,简称OLAP)以其能够分析那些

保存在数据集市、数据仓库和其他多维数据库中的成千上万数据项之间的关系,并能快速响

应决策人员的复杂查询的能力而得到广泛应用。

4.1OLAP的概念与特点

4.1.1OLAP的概念

20世纪60年代,关系数据库之父E.F.Codd⑶提出了关系模型,促进了联机事务处理

(OnlineTransactionProcessing,简称OLTP)的发展。1993年,E.F.Codd提出了OLAP

概念,认为OLTP已不能满足终端用户对数据库查询分析的需要,SQL对大型数据库进行的

简单查询也不能满足终端用户分析的要求。用户的决策分析结果需要对关系数据库进行大量

计算后才能得到,而查询的结果并不能满足决策者提出的需求。因此,E.F.Codd提出了多

维数据库和多维分析的概念,即OLAP。Codd同时提出了关于OLAP的即条准则为

准则1OLAP模型必须提供多维概念视图

准则2透明性准则

准则3存取能力推测

准则4稳定的报表能力

准则5客户/服务器体系结构

准则6维的等同性准则

准则7动态的稀疏矩阵处理准则

准则8多用户支持能力准则

准则9非受限的跨维操作

准则10直观的数据操纵

准则11灵活的报表生成

准则12不受限的维与聚集层次

Cndd对OLAP概念的解释和准则的说明使人们对OLAP有了一个大致的了解°0L八P委员会对

联机分析处理的定义为:使分析人员、管理人员或执行人员能够从多种角度对原始数据中转

化出来的、能够真正为用户所理解的、并真实反映企业维特性的信息进行快速、一致、交互

的存取,从而获得对数据更深入了解的一类软件技术。OLAP的目标是满足人们对决策支持

或多维环境下的特定查询和报表需求,它的技术核心是“维”这个概念,因此OLAP也可以

说是多维数据分析工具的集合。

4.1.2OLAP的特点

OLAP的特点主要包含以下几方面的内容:

L快速性

快速性是指OLAP的快速反应能力。用户对OLAP的快速反应能力有着很高的要求。一般来

说,OLAP只有在足够的技术支撑条件下(如专门的数据存储格式、大量的事先运算、特殊

的硬件设计等),才能在对大量的数据进行分析时得到迅速反应能力。

2.可分析性

可分析性是指OLAP系统应能处理与应用有关的任何逻辑分析和统计分析。用户无须编程即

可定义新的专门计算,将其作为分析的一部分,并以用户满意的方式给出报告。

3.多维性

多维性是指系统提供对数据的多维视图和多维分析,包括对层次维和多重层次维的完全支

持。多维性是OLAP的关键属性。其中,多维分析是OLAP的灵魂。多维分析是指对以多维形

式组织起来的数据采取各种分析动作,以求剖析数据,使最终用户能从多角度、多侧面来观

察数据,从而深入地了解包含在数据中的信息及其内涵。多维分析的基本操作有:切片、切

块、上卷、下钻和旋转等;这些分析操作使得OLAP系统可以提供给用户强大的统计、分析

及报表处理功能。

4.信息性

信息性是指不论数据量有多大或者数据存储在何处,OLAP系统都能及时获得信息,并管理

大量信息。在这一过程中有许多因素需要考虑,如数据的可复制性、可利用的磁盘空间等。

4.1.3OLTP和OLAP的对比

当今的数据处理大致可以分成两大类:联机事务处理OLTP、联机分析处理OLAP。OLTP是传

统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是

数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询

结果。表4T列出了0L果与OLAP之间的比较。

OLTPOLAP

用户操作人员、低层管理人员决策人员、高级管理人员

功能日常操作处理分析决策

数据库设计面向应用面向主题

当前的、最新的、细节的、一维的、历史的、聚集的、多维的、集成的、统

数据

分立的一的

存取读/写数十条记录读/写上百条记录

工作范围简单的事务复杂的查询

用户数上千个上百个

数据库大小1OOMB-1GB100GB-1TB

表4-1OLTP与OLAP之间的比较

4.2OLAP的一些基本概念

OLAP的基础是多维数据模型,而多维数据模型是一个逻辑概念,主要解决如何对海量的数

据进行快速查询和多视角的展示,以便得出有利于管理决策的信息和知识。多维数据模型通

过引入维、维分层和度量等概念,将信息在概念上视为一个立方体。为了对OLAP技术有更

深入的了解,本小节主要介绍OLAP中涉及的一些基本概念。

1.变量(Variable)

变量是描述可以改变的物理量,它可能代表一个学校的学生人数,也可能是某产品的单价,

还可能是某商品的销售数量等。在一般情况下,变量的值是用数据表示,例如数据100就是

某个变量的一个值。

2.维(Dimension)

维是人们观察数据的特定角度。例如,企业常常关心产品销售数据随着时间的推移而产生的

变化情况,这时是从时间的角度来观察产品的销售,所以时间是一个维(时间维);企业也

时常关心自己的产品在不同地区的销售分布情况,这时是从地理分布的角度来观察产品的销

售,所以地理分布也是一个维(地理维)。此外,还有产品维、顾客维等。

3.维的层次(Level)

人们观察数据的某个特定角度(即某个维)还可以存在细节程度不同的多个描述方面,称这

多个描述方面为维的层次。一个维往往具有多个层次,例如,在描述时间维时,可以从R

期、月份、季度、年等不同层次来描述,那么日期、月份、季度、年等就是时间维的层次;

同样,城市、地区、国家等构成了地理维的层次。

4.维成员(Member)

维的一个取值称为该维的一个维成员,是数据项在某维中位置的描述。例如,考虑时间维具

有日期、月份、年这3个层次,分别在日期、月份、年上各取一个值组合起来,就得到了时

间维的一个维成员,即“某年某月某日”。一个维成员并不一定在每个维层次上都要取值,

例如,“某年某月”、“某月某口”、“某年”等都是时间维的维成员。

5.多维数据组(MultidimensionalDataSets)

一个多维数据组可以表示为(维1,维2,…,维,变量)。例如,若日用品销售数据是

按时间、地区和销售渠道组织起来的三维立体,加上变量“销售额”,就组成了一个多维数

组(地区,时间,销售渠道,销售额),它表示的含义就是某地区在某个时间内通过某个销

售渠道而得到的销售额。

6.数据单元(DataUnit)

多维数据组的取值称为数据单元。当多维数据组的各个维都选中一个维成员时.,这些维成员

的组合就唯一确定了一个变量的值。那么数据单元就可以表示为(维1成员,维2成

员,…,维〃成员,变量的值)。例如,在产品、地区、时间和销售渠道上各取维成员“牙

膏”、“上海”、“1998年12月”和“批发”,就唯一确定了变量“销售额”的一个值

(假设为100000),则该数据单元可表示为(牙膏,上海,1998年12月,批发,

100000)o

7.数据立方

设计好了结构良好的数据仓库,并且将需要分析的业务数据装载到了数据仓库中之后,就为

满足商务决策的全方位需求打下了基础,以后的操作都是基于这些拥有数据的数据仓库进行

的。但是,对数据的多维分析却并不是主要针对数据仓库,而是针对从数据仓库中提取的子

集,如数据集市和多维数据集(也称为数据立方)。

数据立方的基本思想是实现某些常用的代价较高的聚集函数的计算,诸如求和、平均、最大

值等,并将这些计算结果视图存储在关系数据库中。因为很多聚集函数经常需要重复计算,

所以在多维数据立方中存放预先计算好的结果能保证快速响应,并可灵活提供不同角度和不

同抽象层次上的数据视图,以加快分析时的响应速度。

4.3OLAP的分类

数据仓库与OLAP的关系是互补的,OLAP系统一般是以数据仓库为基础,即从数据仓库中提

取详细数据的一个子集并经过必要的处理存储到OLAP存储器中,供前端分析工具读取。

OLAP系统按照其存储器的数据存储格式可以分为关系OLAP(RelationalOLAP,简称

ROLAP)、多维OLAP(MultidimensionalOLAP,简称MOLAP)和混合型OLAP(Hybrid

OLAP,简称HOLAP)3种类型。

1.ROLAP

ROLAP是OLAP的一种形式,它对存储在关系数据库(而非多维数据库)中的数据作动态多

维分析。ROLAP将多维数据库的多维结构划分为两类表:一类是事实表,用来存储数据和维

关键字;另一类是维度表,即对每个维至少使用一个表来存放维的层次、成员类别等维的描

述信息。维度表和事实表通过主关键字和外关键字联系在一起,形成了“星形模式”。对于

层次复杂的维,为避免冗余数据占用过大的存储空间,可以使用多个表对其进行描述,这种

星形模式的扩展称为“雪花模式"。ROLAP的最大好处是可以实时地从源数据中获得最新数

据并更新,以保持数据实时性;缺点在于运算效率比较低,用户等待响应时间比较长。

ROLAP将那些应用频率比较高、计算工作量比较大的查询事先做好视图并保存起来。对每个

针对OLAP服务器的查询,优先利用已经计算好的视图来生成查询结果以提高查询效率。同

时作为ROLAP存储器的RBDMS根据OLAP的特性也做了相应的优化,如并行存储、并行查

询、并行数据管理、基于成本的查询优化、位图索引等。ROLAF的主要特点就是可以根据应

用的需要有选择地定义一批视图,作为表存于关系数据库中;它可以监视数据仓库的数据访

问情况,对视图进行动态调整,而且这些视图在ROLAP中对用户是透明的,用户可像查询关

系数据库一样查询数据仓库中的内容。

2.MOLAP

MOLAP将OLAP分析所用到的多维数据存储为多维数组,以形成“立方体”的结构。这种结

构在得到高度优化后,可以最大限度地提高查询性能。随着源数据的更改,MOLAP中存储的

对象也必须定期处理。两次处理之间的时间将构成滞后时间,在此期间,OLAP对象中的数

据可能无法与当前源数据相匹配。维护人员可以对MOLAP存储中的对象进行不中断的增量更

新。MOLAP的优势在于由于经过了数据多维预处理,分析中数据运算效率高,主要的缺点在

于数据更新有一定延迟。

3.H0LAP

由于ROLAP和MOLAP有着各自的优点和缺点,而且它们的结构迥然不同,给分析设计人员设

计OLAP架构带来了困难。因此,一个新的OLAP结构一一混合型OLAP被提出,它能把

M0LAP和ROLAP两种结构的优点结合起来。迄今为止,对HOLAP还没有一个正式的定义。但

很明显,HOLAP结构不应该是MOLAP与ROLAP结构的简单组合,而是这两种结构技术的有机

结合,能满足用户各种复杂的分析请求。实现HOLAP的方法一般有以下几种:

①同时提供多维数据库和关系型数据库,让开发人员来选择。

②在运行时,把对关系型数据库的查询结果存入多维数据库。

HOLAP系统按照一定的先后J顺序使用多维数据库和关系型数据库。HOLAP系统利用一个多维

数据库存储高级别的综合数据;同时,用关系型数据库存储细节性数据。这种方法是实现

HOLAP结构较为理想的方法,它结合了MOLAP和ROLAP的优点。

4.4OLAP的基本操作

OLAP分析是指对以多维形式组织起来的数据采取切片、切块、旋转等各种分析操作,以求

剖析数据,让最终用户能从多个角度、多个侧面观察数据仓库中的数据,从而更深入地了解

包含在数据中的信息和内涵。OLAP分析方式迎合了人们的思维模式,因此,减少了混淆并

且降低了出现错误解释的可能性。此处以图4-1所示的某公司在某特定地点、特定产品、特

定季节条件下的销售数量的三维图形来介绍OLAP分析中所涉及的几个基本操作⑷o

图47某公司在特定地点、特定季节、特定产品条件下的销售量示意

在图4-1中,有三个维度,即产品、地点和季节,每个维度有4个成员,共64个小立方

体,每个小立方体中的值就是该公司在特定地点、特定季节、特定产品的销售量,如北京在

Q1季节的空调销售量为43。

1.切片(Slicing)

维是观察数据的角度,切片的作用或结果就是舍弃一些观察角度,使人们能在两个维上进行

集中观察。因为人的空间想象能力毕竟有限,一般很难想象四维以上的空间结构,所以对于

数据较多的多维数据空间,数据切片是有意义的。所谓切片就是在一定的维上选定值后,关

心度量数据在剩余两个维上的分布,即切片的结果是一个二维的平面数据。例如,对图4-1

所示的多维数据集,使用条件:地点:'北京'进行选择,就得到如下的切片结果。

Q143257855

季Q2

56133367

Q325172227

Q415357080

空调电风扇冰箱洗衣机

图4-2切片

2.切块(Dicing)

切块是在一定的维上选定值后,关心度量数据在剩余三个或三个以上维中的分布。可以认为

切片是切块的特例,切块是切片的扩展,切片后得到的数据是两维数据,而切块后得到的数

据则是三维或三维以上的数据。例如,对图4-1所示的多维数据集,使用条件:(产品

=’空调'or产品=‘电风扇’)and(季节='QI'or季节=,Q2')and(地点='北京'or

地点=‘上海')进行选择,就相当于在原数据集中切出一个小块,这就是切块操作。图4-

3就是由图4T按上述选择切块后的结果。

季节

图4-3切块

3.旋转(Pivoting)

旋转是变换维的方向,即在表格中重新安排维的放置(例如行列互换)。例如,旋转可能包

含交换行和列,或是把某一个行维移到列维中。表4-2是对图4-1按地点二'北京'切片后

的结果,而表4-3是表4-2旋转后的结果。

空调电风扇冰箱洗衣机

QI43257855

Q256133367

Q325172227

15357080

表4-2切片结果

Q1Q2Q3Q4

空调43562515

电风扇25131735

冰箱78332270

洗衣机55672780

表由表4-2旋转后得到的结果

表4-2是把一个横向为产品、纵向为季节的报表转成为横向为季节、纵向为产品的报表。

4.钻取(Drilling)

如上所述,维是具有层次性的。例如,时间由年、月或日组成;地点也可以划分成国家,国

家包含省,而省又包含城市。钻取是改变维的层次,变换分析的粒度,它包括上卷(Roll

Up)和下钻(DrillDown)。上卷是在某一维上把层次的细节数据概括到高层次的汇总数

据,或者减少维数;下钻则相反,它从汇总数据深入到细节数据进行观察或增加新维。为了

解释这一点,考虑最初的原始销售数据,它是一个多维数组,记录每个季度的销售。可以按

年聚集(上卷)销售数据;反过来,在给定时间为季节的情况下,可能希望将季销售总和分

解成(下钻)月销售总和,当然,这要求基本销售数据的时间粒度是按月计算的。表4-4到

表4-5是上卷的过程,在这个过程中把季度数据概括为年度数据。而从表4-5到表4-4则是

一个下钻的过程,把年度数据细化为季度数据。

单位:万元

2010年

Q1Q2Q3Q4

空调43562515

电风扇25131735

冰箱78332270

洗衣机55672780

表4-4按季节显示的产品信息

单位:万元

2010年

空调139

电风扇90

冰箱203

洗衣机229

表4-5按年显示的产品信息

4.5OLAP——以Foodmart2000.mdb数据集中库存数据表等相关数据为例

本部分操作是在第2章操作基础上进行的。在第2章中我们已经建立了数据源、数据源视

图。数据表之间的逻辑关系也已经建立起来,接下来要进行的操作是:

1.建立“多维数据集”,点击解决方案资源管理器下面的“多维数据集”,右键单击,选择

“新建多维数据集“,进入“多维数据集向导”界面,单击“下一步”,进入“选择生成

(多维数据集)方法”界面,单击“下一步”,进入“选择数据源视图”界面,该界面中可

见第2章所建的foodmartkc数据源视图,单击“下一步”,进入“检测事实数据表和维度

表”界面,该步骤分析了数据源视图中各表之间的关系,以识别事实表和维度表,检测完成

后,单击“下一步”按钮,将会弹出“标识事实数据表和维度表”窗口。选择

“time_by_day”作为时间维度表,并且按照图4-4中所示来分别设置各表为事实表或是维

度表。设置好后单击“下一步”按钮继续。

*多维数据集向导

标识事实数据表和维度表

标识数据源视图中的事实数据表和维度表.也可以指定时间维度表.

时间维度表6):tim«_by_day

表一

名称回事实回维度

dbo.inv<ntory_£<ct_l997!□!

dbo.product□

duct.cltss□

dbo.region□

dbo.store□

dbo.tim<_by_day□

dbo.warehouse

dbo.warehouseclass

<上一步8)下一步@)>一完成:取消

图4-4标识事实数据表和维度表

2.由于上一步选择了“timeby_day”作为时间维度表,这一步需要设置时间维度的层次结

构。在所有维度的层次结构中,只有时间维度最为特殊。其他维度系统可以根据数据之间的

关系检测其层次结构,而时间维度则需要指定其时间上的层次。如图4-5所示,依据时间表

中的具体情况,为年月日等时间属性指定时间表列。设置好后单击“下一步”按钮继续。

r多维数据集向导回区

选择时间段

根据所选列创建时间维度层次结构.

时间表列复):

时间糜性名称时间表列昌

年the_year

半年一

季度quarter

四个月

月份thjeonth

日期thjdat.

小时

分钟

未定义的时间

是假日

是正常的工作日

V

图4-5指定时间维度层次结构

3.这时系统将会让用户选择度量值,如图4-6所示。度量是来源于事实表中的数据。单击

“下一步”按钮继续。

r多罐效据集向导叵反

选择度量值

选择要包含在多维数据集中的度量值.

可用度量值0):

0度量值妲/度量值遇列

InventoryFact1997

[.aiUnitxOrd«r«ddbo_inventory_£gt」997unidared

.>l

UnitsShippeddbo_inventory_fact997.units_shipped

.<l

..iWrehouseS^lesdb9Q7.wMeh«use_二ales

.aiWarthouseCostdbo_invntory_£act_l997warehoust_cost

.aiSupplyTim«dbo_inventory_fact_1997.supply]ime

.«i

StoreInvoicedbo_xnventory_fact_l997.store_invoice

.<l

InventoryFact1997计数dboinventoryfact1997

《上一步⑥)]|下一步QI)>|[完成®>>|]]

图4-6选择度量值

4.这时系统将会依据前面对维度表和事实表的设置来检测层次结构。如果前面的设置都是正

确的,则会成功检测其层次结构,检测完毕,单击“下一步”按钮继续。

5.由于前面系统自动检测了维度之间的层次关系,因此,产生了一些新的维度,这一步向导

将提供一个窗口来查看新建维度的结构并根据需要进行更改。此例中的新建维度结构关系如

图4-7所示。

图4-7新建维度

设置完成后单击“下一步”按钮,为多维数据集指定一个名称,再单击“完成”按钮,结束

多维数据集的创建向导。

6.完成向导后,可以查看建立的多维数据集结构,如图4-8所示为多维数据集的数据源视

图,与第2章的数据源视图相比较,这里的视图表达的是多维数据集的表间关系,而且用黄

色标记了事实表,蓝色标记了维度表。

7.右键单击“多维数据集”下面的Foodmartkc.cube,在弹出的菜单项中点击“处理”,在

随即弹出的对话框中选择“Y”,在接下来弹出的“处理多维数据集”窗口中点击“运

行”,处理成功后,点击“关闭”。回到多维数据源视图窗口。点击“浏览器”,进入图

4-9o

文件a)«tf(x)视由9项目9生成0)gQ)格式Q)RdKM®SltJR需集@)1*0)田口•)社区⑥附财QP

n•U0A」H..c•>Xr«l”《M•@/g]口.._____________________________________________

,・・A=3.z・[设南・]g倒力laftg▼x

Hat即Ml结构]即It则法|Q计*国m,|禺,ft|◎别Z透棋|0BW|@加68»_____________

富■』也叶口

At:•X♦♦2□Q,3,e。?需我

♦J»F.OAMTUK.ii

a。数音漕植牙

布F»»4Mrtkc.1ST

SHIBVM

8Q名雄数据H

3F»»^Mrtkc2.

a

tZTia*ByDay指。

巳St«r*4i«

*.ri<…

MlM.cfttyI/,Vtr«i»vi«.dia

/Fr.Jt.4i«

•alM.Aiatvict为阴酎构

nlm.reri**

Mlc«.c*«BtryAmcriftUa为角色

MlM.AUttUt.AA4及序集

必杂项

■»«<•««(4W

2iwowry.f..

?"3・・”

-MTHTUUVMtect.cU...

ateaaOaw

wr«Ww«.t<

•U“

«T»;<rtaAta.MUrcA

@,・4«rw4・,.・.・

WtteWC.CMtr«ocla>lc....

田厘Fr”■Wfl/.tim

上HSIM•Mr«.iawi«

S口»*r<;

S口”

Stsf2,

<>qiW决方案费ittfH!5悬住

图4-8多维数据集的数据源视图

**foodiartas-licrosoftTisualStudioI-gx

文件打MIDasop项曰&)生成®&Q)M«(y/修有集叨XA(D*□!)社区©招购QD

HWifW-Zfc■,❷•QX

g«H-

B«fC:f««4»*rtu

①命令

N

图4-9浏览视图

8.在上面的视图区域中,可以选择从任意的视角对事实表的度量值进行查看。如本例中产品

维度选择的是:ADJ,American,BBBBest,BigCity,时间也可分层次进行查看,如

theyear>quarter>themonth和thedate,具体查看内容为WarehouseCost,

WarehouseSales,UnitsOrdered这三项,所得结果截图如图4-10所示。从中可以看出

1997年January这个月UnitsOrdered为589。

Ordered为589。

▼X

g年维数得集结构匝雉度用法|0计篁以口卜侬模作透视叵翻译邨罐[

白■雪白雪8亩亡,・国也:卜8it“■

3Fooditrtkc维度层次结构叁符1籥选表达式

SMIIttswtsProduct;;BrandItee易于i{ADJ,lAtricti^BBBB”t.City)

SInventoryFact1997

色算维陵

MIluvtnloryFact1997计f

MIStoreInvoice

uiSupplyTiet

ailUaitsOrdered

楮微字段推至此处

MUnit*Shipped

adfer«hous«Cost

tk»_y«<r▼ls«rt・rith・_・・mU・」2・Ta・&u“Cost,>r・M3・SJallfairOrd"・d

&f«r«hons«S«l«s

日师日QlBFebruary1997-02-0Z00:00:008.083517.963447

SProduct19974K-0300:00:00429Ml1294893ISO

9Store1997-02-07

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论