数据仓库与数据挖掘课件_第1页
数据仓库与数据挖掘课件_第2页
数据仓库与数据挖掘课件_第3页
数据仓库与数据挖掘课件_第4页
数据仓库与数据挖掘课件_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

第3章

联机分析处理(2)13.4OALP的多维数据分析(下)3.4.3广义OLAP功能3.4.4数据立方体3.4.5多维数据分析的MDX语言及其应用23.4.3广义OLAP功能

1、基本代理操作

当系统处于某种特殊状态时“代理”提醒分析员。

(1)示警报告定义一些条件,一但条件满足,系统会提醒分析员去做分析。如每日报告完成或月定货完成等通知分析员作分析。(2)时间报告

按日历和时钟提醒分析员。

(3)异常报告当超出边界条件时提醒分析员。如销售情况已超出预定义阈值的上限或下限时提醒分析员。3

2.数据分析模型(1)绝对模型通过比较历史数据值或行为来描述过去发生的事实。绝对模型只能对历史数据进行比较,并且利用回归分析等一些分析方法得出趋势信息。4(2)解释模型利用系统已有的多层次的综合路径层层细化,找出事实发生的原因。

假设今年销售量下降,那么解释模型应当能找出原因,即下滑与时间、地区、商品及销售渠道四者中的何种因素有关。5(3)思考模型说明在一维或多维上引入一组具体变量或参数后将会发生什么。例如该公司决策者为了了解某商品的销售量是否与顾客的年龄有关,引入了行变量-年龄,即在当前的多维视图上增加了顾客的年龄维。6(4)公式模型该模型表示在多个维上,需要引入哪些变量或参数,以及引入后所产生的结果。公式模型自动完成上述变量引入工作,从而最终找出与销量有关的全部因素,并给出了引入后的结果。73.商业分析模型(1)分销渠道的分析模型(2)客户利润贡献度模型(3)客户关系(信用)优化模型(4)风险评估模型8(1)分销渠道的分析模型通过客户、渠道、产品或服务三者之间的关系,了解客户的购买行为、客户和渠道对业务收入的贡献、哪些客户比较喜好由什么渠道在何时和银行打交道。为此,银行需要建立客户购买倾向模型和渠道喜好模型等。9(2)客户利润贡献度模型通过该模型能了解每一位客户对银行的总利润贡献度。知道哪些利润高的客户需要留住,采用什么方法留住客户,交叉销售改善客户的利润贡献度,哪些客户应该争取,完成个性化服务。10(3)客户关系(信用)优化模型银行对客户的每一笔交易中,知道客户需要什么产品或服务,例如,定期存款是希望退休养老使用,申请信用卡需要现金消费,询问放贷利息需要住房贷款等。通过模型计算,主动地对客户沟通并进行交叉销售,达到留住客户和增加利润的目标。11(4)风险评估模型模拟风险和利润间的关系,建立风险评估的数学模型:

在满足高利润、低风险客户需求的前提下,达到银行收益的极大化。123.4.4数据立方体1.概述

1996年,JimGray等首次提出了数据立方体(DataCube)的概念。

数据立方体就是数据仓库结构图(图2.1)中的综合数据层(轻度和高度)。基于数据立方体的生成方法一直是OLAP和数据仓库领域研究者所关注的热点问题。13对于多维数据分析而言,本质上是沿着不同的维度进行数据获取的过程。在数据立方体中,不同维度组合构成了不同的子立方体。不同维值的组合及其对应的度量值构成了不同的查询和分析。数据立方体的构建和维护等计算方法成为了多维数据分析研究的关键问题。14OLAP和数据仓库通常预先计算好不同细节层次和不同维属性集合上的聚集,并把聚集的结果存储到物理磁盘上(称为物化)。把所有可能的聚集(即全聚集)都计算出来,可以得到最快的系统查询响应时间,15数据立方体是在所有可能组合的维上进行分组聚集运算(groupby操作)的总和。聚集函数有:sum()、count()、average()等。数据立方体中的每一个元组(立方体的度量属性)被称为该立方体的上个格(

cell),每个格在n个维属性上有相应的值。在未参与groupby操作的维属性上具有All值(用﹡表示),而在参与groupby

操作的维属性具有非All值。16例如,对于一个具有三个维属性A、B、C和一个度量属性M的数据集R(A,B,C,M).其对应的数据立方体是在维属性集{},{A},{B},{C},{AB},{AC},{BC},{ABC}上分别对度量属性进行聚集操作后的并集。其中:{}表示进行聚集运算{*,*,*,聚集函数(M)};{A}表示进行聚集运算{A,*,*,聚集函数(M)}等。17这些聚集运算与操作结果是数据仓库中的一种高度综合级数据.实质上是进行了数据的浓缩(压缩),也可称为泛化。最终所获得的这些数据立方体可用于决策支持、知识发现,或其它许多应用。18例如,对如表3.12所示的超市的基本数据集POS(product,type,counter,price),前三个属性分别代表(产品名、类型、柜台)为维属性.

现在对度量属性价格price进行取平均值(average)的聚集运算,通过Cube

操作可以得到一个具有三个维属性和一个度量属性的数据立方体Dpos,如表3.13所示。19表3.12基本数据集POS

product type counter price KONKA TVSET 011000TCL TVSET 011500NOKIA PHONE 01200020product type counter M(AVG(price))﹡

﹡1500KONKA ﹡

﹡1000TCL

﹡1500NOKIA

﹡2000﹡

TVSET ﹡1250﹡PHONE﹡2000﹡

﹡011500KONKA TVSET ﹡1000TCL TVSET ﹡1500NOKIAPHONE﹡2000﹡TVSET 011250﹡PHONE 012000KONKA ﹡011000TCL ﹡011500NOKIA﹡012000KONKATVSET 011000TCL TVSET 011500NOKIAPHONE 01200021全聚集的数据占据的空间是原始数据空间的数百倍,花费很长时间。故数据立方体构建部分物化:即按照一定的规则选择数据立方体的一个子集进行预先计算。这种选择是存储空间和响应时间的一种折衷。22典型的压缩型数据立方体,包括:

冰山立方体、紧凑数据立方体、外壳片段立方体等。随着流式数据处理技术的发展,流立方体生成方法越来越受到领域研究者的关注。23(1)冰山立方体在冰山立方体的生成计算中,仅聚集高于(或低于)某个阈值的子立方体。数据立方体的空间多数,被低(或高)度量值的数据单元所占据,而这些数据单元往往是分析者很少关心的内容。这种方法的优点是能够减少构建数据单元所占用的存储空间。24例如,在表3.12中,设定聚集运算条件:M(AVG(price))

≤1250,其冰山立方体为表3.14所示。表3.14

基本数据集POS的冰山立方体

product type counter M(AVG(price))KONKA ﹡

﹡1000﹡

TVSET ﹡1250KONKA TVSET ﹡1000﹡TVSET 011250KONKA ﹡011000KONKATVSET 01100025(2)紧凑数据立方体生成方法紧凑数据立方体生成方法的一个重要特点是能够保持数据立方体的钻取操作的语义。这种紧凑数据立方体生成方法在压缩的方式和表现形式上表现出有不同的特征,包括:浓缩立方体(Condensedcube)、商立方体(Quotientcube)等,这些都是近年来出现的一系列新型的数据立方体的存储结构。26浓缩立方体浓缩立方体计算方法的基本原理是,在某些属性或组合下的一个元组相对于其它元组具有唯一性,则称为基本单一元组(BST,BaseSingleTuple)。当它的超集(增加属性组合)也是BST,且都是取同一度量值,在聚集运算时,可以把这些属性的度量值对应的元组压缩成一条元组存储。27属性{product}的所有超集{product,type},{product,counter},{product,type,counter }也是BST,且都具有相同值。如{KONKA,﹡,﹡,1000},{KONKA,TVSET,﹡,1000},{KONKA,﹡,01,1000},{KONKA,TVSET,01,1000},故可以将这些元组压缩存储为一条元组{KONKA,﹡,﹡,1000}。同理,属性{type}中,其属性值为PHONE的元组是BST,它和它的超集也可以压缩存储为一条元组{﹡,PHONE,﹡,2000}。经过这样的浓缩后,表3.13的的浓缩立方体为表3.15。28表3.15基本数据集POS的浓缩立方体product type counter M(AVG(price))﹡

﹡1500KONKA ﹡

﹡1000TCL

﹡1500NOKIA

﹡2000﹡

TVSET ﹡1250﹡PHONE﹡2000﹡

﹡011500﹡TVSET 01125029可以看出浓缩立方体是全聚集立方体的有效浓缩。由于在一般的应用中,当属性个数较多时,BST是广泛存在的。一般来说,其压缩率可以达到30%~7O%。303.4.5多维数据分析的MDX语言

及其应用1.MDX语言简介MDX(MultiDimensionaleXpressions,多维表达式)是联机分析处理(OLAP)和数据仓库应用中最广泛使用的软件语言(维度语言)。MDX语言可以查询和管理多维数据仓库,MDX表达式可以用来创建新的计算成员。31MDX与SQL的比较相同:MDX与SQL都包含“选择对象”(select子句)、“数据源”(from子句)以及“指定条件”(where子句),不同:MDX结合了多维数据集,指定“维度”(On子句)和“创建表达式计算的新成员”(MEMBER子句)。MDX语法还包含功能强大的函数,以协助数据处理与挖掘。32具体说明

(1)关键字SELECT后带需要检索内容的子句。 (2)关键字ON和维度(坐标轴)的名称一起使用,以指定数据库维度显示位置。(3)MDX用大括号{}包含某个特定维度或者多个维度的一组元素。一个维度(度量维度或时间维度)的多个元素间用逗号(,)隔开。元素名称用方括号[]引用,并且不同组成部分之间用点号(.)分隔。33(4)在一个MDX查询中,不同查询的维度(坐标轴)的数量可能不同。前三个坐标轴以“columns”、“rows”及“pages”命名,更多的坐标轴命名为:chapters、section等。也可以统一用axis(0)、axis(l)、axis(2)等表示坐标轴。 (5)MDX查询中FROM子旬指明用于查询数据的多维数据集。 (6)WHERE子句指定在列或行(或者其他的坐标轴)上没有出现的多维数据集的成 员。 342.多维数据查询在多维数据集中用得最多的查询是对多维数据的切片查询,通过不同角度的切片来发现问题。通过下钻操作一般用来查询问题的原因。下面分别通过切片查询和向下钻取操作例子进行说明。35例1:切片查询在多维数据集Sales中,顾客所在的MA州,对时间2009年Q1(1季度)和Q2(2季度)的销售额DollarSales和销售数量UnitSales的情况,进行切片查询。MDX语言的切片查询语句:36SELECT {[Measures].[DollarSales],[Measures].[UnitSales]} Oncolumns, {[Time].[Q1,2009],[Time].[Q2,2009]}Onrows FROM[Sales] WHERE([Customer].[MA]) 37切片查询结果DollarSalesUnitSalesQ1,200996,949.13866Q2,2009

104,510.2

412538例2:向下钻取操作一种常用的查询是获得一个成员的子成员。这么做的目的是执行一个向下钻取操作,即获得基于一个共同父成员的范围内的成员。MDX提供.Children函数来完成这个操作。39下面将对多维数据集Sales中,顾客所在的TX州,向下钻取查询:工具产品[Product].[Tools]成员和它的子成员(Tool1、…Tool5),以及2009年Q3(3季度)成员的子成员(7、8、9)三个月的销售数量[Measures].[UnitSales]情况。MDX语言的向下钻取操作语句如下:40SELECT {[Time].[Q3,2009].Children}oncolumns, {[Product].[Tools],[Product].[Tools].Children} Onr

温馨提示

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

评论

0/150

提交评论