数据仓库和数据挖掘deOLAP技术课件_第1页
数据仓库和数据挖掘deOLAP技术课件_第2页
数据仓库和数据挖掘deOLAP技术课件_第3页
数据仓库和数据挖掘deOLAP技术课件_第4页
数据仓库和数据挖掘deOLAP技术课件_第5页
已阅读5页,还剩161页未读 继续免费阅读

下载本文档

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

文档简介

数据仓库和数据挖掘

de

OLAP技术苟清龙2002年9月数据仓库和数据挖掘

de

OLAP技术苟清龙第一节从数据库到数据仓库OLTP不适于DSS应用数据仓库的定义及其特征数据仓库的数据组织数据仓库的体系化环境第一节从数据库到数据仓库OLTP不适于DSS应用OLTP不适于DSS应用事务处理的性能特性不同数据集成问题事务处理应用分散“蜘蛛网”问题数据不一致问题外部数据和非结构化问题数据动态集成问题历史数据问题数据的综合问题OLTP不适于DSS应用事务处理的性能特性不同什么是数据仓库数据仓库是一个用以更好地支持企业或组织的决策分析处理的、面向对象主题的、集成的、不可更新的、随时间不断变化的数据集合。什么是数据仓库数据仓库是一个用以更好地支持企业或组织的决策分操作型数据和分析型数据的区别操作型数据分析型数据细节的综合的,或提炼的在存取时刻是准确的代表过去的数据可更新不更新操作需求事先可知道操作需求事先不知道对性能要求高对性能要求宽松生命周期符合SDLC完全不同的生命周期一时刻操作一单元一时刻操作一集合事务驱动分析驱动面向应用面向分析一次操作数据量小一次操作数据量大支持日常操作支持管理需求操作型数据和分析型数据的区别操作型数据分析型数据细节的综合的数据仓库的四个特性面向主题的集成的随时间不断变化的不可更新的数据仓库的四个特性面向主题的数据仓库数据的面向主题性什么是主题?面向主题的例子面向主题的性质面向主题的实现方式面向主题的实现示例主题域及其特性数据仓库数据的面向主题性什么是主题?什么是主题?主题是一个抽象的概念,是在较高层次上将企业信息综合、归类,并进行分析利用的抽象;在逻辑意义上,他是对企业中某一宏观领域所涉及的分析对象;面向主题的数据组织方式,就是在较高层次上对分析对象的数据一个完整、一致的描述,能完整、统一地刻画各个分析对象所涉及的企业的各项数据,以及数据之间的联系。什么是主题?主题是一个抽象的概念,是在较高层次上将企业信息综一个传统OLTP环境下的数据库模式示例采购子系统定单(定单号,供应商号,总金额,日期)定单细则(定单号,商品号,类别,单价,数量)供应商(供应商号,供应商名,地址,电话)销售子系统顾客(顾客号,姓名,年龄,文化程度,地址,电话)销售(员工号,顾客号,商品号,数量,单价,日期)一个传统OLTP环境下的数据库模式示例采购子系统一个传统OLTP环境下的数据库模式示例(续)库存管理子系统领料单(领料单号,领料人,商品号,数量,日期)进料单(进料单号,定单号,进料人,收料人,日期)库存(商品号,库房号,库存量,日期)库房(库房号,库房管理员,地点,库存商品描述)人事子系统员工(员工号,姓名,性别,年龄,文化程度,部门号)部门(部门号,部门名称,部门主管,电话)一个传统OLTP环境下的数据库模式示例(续)库存管理子系统一个传统OLAP环境下的数据库模式示例商品商品固有信息:商品号,商品名,类别,颜色等;商品采购信息:商品号,供应商号,供应价,供应量,供应日期等;商品销售信息:商品号,顾客号,售价,销售量,销售日期等;商品库存信息:商品号,库房号,库存量,日期等。一个传统OLAP环境下的数据库模式示例商品一个传统OLAP环境下的数据库模式示例(续)供应商供应商固有信息:供应商号,供应商名,地址,电话等;供应商品信息:供应商号,商品号,供应价,供应日期,供应量等。顾客顾客固有信息:顾客号,顾客名,性别,年龄,文化程度,地址,电话等。顾客购物信息:顾客号,商品号,售价,购买日期,购买量等。一个传统OLAP环境下的数据库模式示例(续)供应商面向主题数据组织模式的说明在从面向应用到面向主题的转变过程中,丢弃了原来有的但不必要的、不适于分析的信息;在原有的数据库模式中,有关商品的信息分散在各个子系统之中;面向主题的数据组织方式所强调的就是要形成关于主题一致的信息集合;不同主题之间有重叠内容。面向主题数据组织模式的说明在从面向应用到面向主题的转变过程中主题的实现两种主题实现方式多维数据库关系数据库在具体实现中,一个主题可划分为多个表,主题只是一个逻辑概念。主题的实现两种主题实现方式主题实现的范例主题:商品公共码键:商品号商品表1(商品号,商品名,类型,颜色,……)/*商品固有信息*/采购表1(商品号,供应商号,供应日期,供应价,采购量,……)/*商品采购的细节描述*/采购表2(商品号,时间段,采购总量,……)/*某时段商品采购信息*/……采购表n(……,……)/*时间段不等的采购综合表*/主题实现的范例主题:商品主题实现的范例(续)销售表1(商品号,顾客号,销售日期,售价,销售量,……)

/*商品销售细节信息*/销售表2(商品号,时间段,销售总量,……)

/*某时段内商品销售信息*/……销售表n(……,……)/*时段不等的销售综合表*/库存表1(商品号,库房号,库存量,日期,……)

/*商品库存述细节信息*/库存表2(商品号,库房号,库存量,月份,……)

/*每月月底的商品库存信息*/……库存表n(……,……)/*时点不同的商品库存信息*/……主题实现的范例(续)销售表1(商品号,顾客号,销售日期,售价主题域面向主题的数据组织方式根据分析要求将数据组织成一个完整的分析领域,即主题域。主题域的特性:独立性一个主题域可以和其他主题有交叉部分,但他必须有独立内涵,即要求有明确的界限规定数据是否属于该主题。完备性对一个主题的任意分析处理要求,都能在该主题内找到该处理要求的一切内容。主题域面向主题的数据组织方式根据分析要求将数据组织成一个完整数据仓库的数据集成性涵义:数据仓库的数据是从原有的分散数据库数据中抽取集成而来的。问题:操作型数据与分析型数据的差别需要完成的工作要统一数据库中所有的矛盾,如字段的同名异义,异名同义,单位不统一,字长不一致等;进行数据综合和计算。数据仓库的数据集成性涵义:数据仓库的数据是从原有的分散数据库数据仓库数据的不可更新性数据仓库的数据主要提供企业决策分析之用,所涉及的数据操作主要是数据查询,一般情况不进行修改操作。数据仓库数据的不可更新性数据仓库数据的时变性数据仓库随时间变化不断增加新的数据内容;数据仓库随时间变化不断删去旧的数据内容;数据仓库中含有大量的综合数据,这些数据随时间变化不断进行重新组合。数据仓库数据的时变性数据仓库的数据组织数据仓库的数据组织结构图元数据粒度与分割数据仓库的数据组织形式数据仓库的数据追加数据仓库的数据组织数据仓库的数据组织结构图数据仓库的数据组织结构元数据高度综合级轻度综合级当前细节级早期细节级数据仓库的数据组织结构元高度综合级轻度综合级当前细节级早期细元数据元数据:关于数据的的数据DW中的两种元数据为从操作型环境向DW环境转换而建立的元数据,在DW中用来与终端用户的多维商业模型/前端工具之间建立映射的元数据。元数据元数据:关于数据的的数据粒度第一种粒度:对数据仓库中的数据综合程度高低的度量,它影响数据仓库中数据量的多少,也影响所能回答问题的种类。第二种粒度:样本数据库采样率的高低。(采样粒度不同的样本数据库可以有相同级别的综合级别。)粒度第一种粒度:对数据仓库中的数据综合程度高低的度量,它影响分割将数据分散到各自的物理单元中去以便能分别独立处理,以提高处理效率,数据分割后的数据单元称为分片。分割的一个例子健康保险生命保险事故保险1988分片1分片2分片31989分片4分片5分片61990分片7分片8分片9分割将数据分散到各自的物理单元中去以便能分别独立处理,以提高数据仓库的数据组织形成简单堆积文件轮转综合文件(如股市)简化直接文件(按一定时间间隔对数据库采样)连续文件数据仓库的数据组织形成简单堆积文件数据仓库的数据追加时标方法DELTA文件前后映象文件的方法日志文件数据仓库的数据追加时标方法数据库体系化环境什么是数据库体系化环境?四层体系化环境数据集市数据库体系化环境什么是数据库体系化环境?什么是数据库体系化环境数据库体系化环境是在一个企业或组织内,由各面向应用的OLTP数据库及各级面向主题的数据仓库所组成的完整的数据环境,在这个数据环境上建立和进行一个企业或部门的从联机事务处理到企业管理决策的所有应用。两个组成部分:操作型环境分析型环境什么是数据库体系化环境数据库体系化环境是在一个企业或组织内,四层体系化环境操作型环境数据仓库局部仓库个人仓库全局级部门级个人级(1)操作型环境:存放细节操作性数据,服务于高性能事务处理。(2)全局级DW:存放细节数据,以及大量导出数据。(3)部门级DW:一般仅包含导出数据。(4)个人级DW:都是暂时的,用于启发式分析。四层体系化环境操作型环境数据仓库局部仓库个人仓库全局级部门级数据集市全局数据仓库数据再抽取与集成采购子系统销售子系统库存子系统人事管理财务子系统数据抽取数据抽取数据抽取数据抽取数据抽取DATAMART数据集市全局数据仓库数据再抽取与集成数据抽取数据抽取数据抽取第二节数据仓库设计数据仓库系统设计方法概述DW设计的三级数据模型提高DW性能数据仓库中的元数据数据仓库的设计步骤第二节数据仓库设计数据仓库系统设计方法概述数据仓库系统设计方法概述DWS与DBS设计的不同之处SDLC与CLDS方法比较“数据驱动”系统设计方法的基本思路数据模型是数据驱动设计方法的中心DW系统设计是一个动态反馈循环过程DW的三级数据模型提高DW的性能数据仓库系统设计方法概述DWS与DBS设计的不同之处DWS与DBS设计的不同之处面向处理类型不同面向需求不同系统设计的目标不同两者的数据来源或系统的输入不同系统设计方法和步骤不同DWS与DBS设计的不同之处面向处理类型不同SDLC与CLDS方法比较收集应用需求分析应用需求构建数据库应用编程系统测试系统实施DB应用A应用B应用C数据仓库建模数据获取与集成构建数据仓库DSS应用编程系统测试理解需求DWDBDB外部数据SDLC与CLDS方法比较收集应用需求分析应用需求构建数据库“数据驱动”系统设计方法的基本思路“数据驱动”系统设计方法的思路就是利用以前所取得的工作成果来进行系统建设。DW的设计是从已有的DB系统出发,按照分析领域对数据及数据之间的联系重新考察、组织DW中的主题。系统设计方法的中心是利用数据模型有效地识别原有的数据库中的数据和数据仓库中主题的数据的“共同性”。“数据驱动”系统设计方法的基本思路“数据驱动”系统设计方法的数据模型

是数据驱动设计方法的中心操作型环境设计操作型处理应用开发与设计DBDBDB数据仓库设计DSS应用开发与设计DW数据模型数据模型

是数据驱动设计方法的中心操作型环境设计操作型处理应DW系统设计

是一个动态反馈循环过程DW的数据内容、结构、粒度、分割以及其他物理设计根据用户所返回的信息不断调整、完善,以提高系统的效率和性能。通过不断的理解用户的分析需求,向用户提供更准确,更有用的决策信息。DW系统设计

是一个动态反馈循环过程DW与DB三级数据模型的区别DW的数据模型不包含纯操作型数据;DW的数据模型扩充了码结构,增加了时间属性作为码的一个部分;DW的数据模型中增加了一些导出数据。DW与DB三级数据模型的区别DW的数据模型不包含纯操作型数据DW的三级数据模型概念模型逻辑模型物理模型DW的三级数据模型概念模型高级模型、

中级模型和低级模型高级模型:即E-R图;低级模型:即物理数据模型中级模型:称为数据项(dis-dataitemset)高级模型、

中级模型和低级模型高级模型:即E-R图;Dis中的数据组联接数据组:主要用于本主题域与其他主题域之间的联系,体现E-R图中实体之间的关系。基本数据组二级数据组类数据组Dis中的数据组联接数据组:主要用于本主题域与其他主题域之间提高DW的性能粒度划分分割其他问题提高DW的性能粒度划分粒度划分粒度划分的决定因素并非总的数据量,而是总的行数。划分步骤(1)估算DW中数据行数和所需的DASD(DirectAccessStorageDevice)数。(2)根据估算算出的数据行数和DASD,决定是否划分粒度,如果要,如何划分。粒度划分粒度划分的决定因素并非总的数据量,而是总的行数。分割核心:选择适当的分割标准考虑因素:数据量、数据分析处理的实际情况、简单易行、粒度划分分割核心:选择适当的分割标准数据仓库物理设计

中的其他一些问题合并表建立数据序列引入冗余表的物理分割生成导出数据建立广义索引数据仓库物理设计

中的其他一些问题合并表第三节数据操作存储(ODS)ODS的定义与特点ODS的功能ODS与DW的区别DB-ODS-DW三层体系结构第三节数据操作存储(ODS)ODS的定义与特点ODS的定义与特点ODS是用于支持企业日常的全局应用的数据集合。保存在ODS中的数据具有四个基本特点:(1)面向主题的(2)集成的(3)可变的(4)数据是当前或接近当前的ODS的定义与特点ODS是用于支持企业日常的全局应用的数据集ODS的功能进行企业级的联机事务处理;“即时OLAP”数据处理。ODS的功能进行企业级的联机事务处理;ODS与DW的区别操作数据存储ODS数据仓库DW当前或接近当前的数据细节数据可联机更新历史数据细节数据和综合数据不可变快照ODS与DW的区别操作数据存储ODS数据仓库DW当前或接近当DB-ODS-DW三层体系结构DW分析型环境ODSDBDBDB应用操作型环境DB-ODS-DW三层体系结构DW分析型环境ODSDBDBD第四节数据仓库工具数据仓库体系结构OLTP的基本概念多维分析的基本分析动作OLAP的准则OLAP实现第四节数据仓库工具数据仓库体系结构数据仓库体系结构示意图数据仓库体系结构示意图数据库系统和数据仓库系统结构的比较数据库系统数据仓库系统数据库:操作型数据增、删、改操作频繁数据仓库:分析型数据极少有更新操作数据库核心:功能强大面向OLTP应用数据仓库管理系统:因极少有更新操作,故功能简单数据库工具:以查询工具为主数据仓库工具:以分析工具为主。数据库系统和数据仓库系统结构的比较数据库系统数据仓库系统数据OLAP的基本概念变量变量是数据的实际意义。即描述数据“是什么”。维维是人们观察数据的特定角度。如时间维、地理维。OLAP的基本概念变量OLAP的基本概念维的层次人们观察数据的某个特定角度(即某个维)还可以存在细节程度不同的多个描述方面,我们称这个描述方面为维的层次。如:时间维:日期—>月份—>季度—>年地理维:城市—>地区—>国家OLAP的基本概念维的层次OLAP的基本概念维成员维的一个取值称为该维的一个维成员。若一个维是多层次的,那么该维的维成员是在不同层次的取值组合。例:时间维:日期、月份、年维成员:某年某月某日、某年某月、某年对应一个数据项来说,维成员是该数据项在某维中位置的描述。例:对一个销售数据而言,时间维成员“某年某月某日”就表示该销售数据是“某年某月某日”的销售数据,“某年某月某日”是该销售数据在时间维位置的描述。OLAP的基本概念维成员OLAP的基本概念多维数组一个多维数组可以表示为:(维1,维2,维3……,维n,变量)例:(地区,时间,销售渠道,销售额)OLAP的基本概念多维数组OLAP的基本概念数据单元多维数组的取值称为数据单元。

例:多维数组:(地区,时间,销售渠道,销售额)数据单元:(北京,2002年7月,批发,1000)OLAP的基本概念数据单元多维分析的基本分析动作切片(Slice)定义1:在多维数组的某一个维上选定一维成员的操作称为切片。即在多维数组(维1,维2,维3……,维n,变量)中选取一维,设为维i,并取其一维成员(设为“维成员Vi”),所得多维数组的子集(维1,…,维成员Vi,…,维n,变量)称为维i上的一个切片。

例:多维数组:(地区,时间,产品,销售额)一个切片:(地区,2002年9月,产品,销售额)多维分析的基本分析动作切片(Slice)多维分析的基本分析动作切片(Slice)定义2:选定多维数组的一个二维子集的动作叫作切片,即选取多维数组(维1,维2,维3……,维n,变量)中的两个维,维i和维j,在这两个维上取某一区间或任意维成员,而将其余的维取定一个维成员,则得到的是一个多维数组在维i和维j上的二维子集,称这个二维子集为多维数组在维i和维j上的一个切片,表示为(维i,维j,变量)多维分析的基本分析动作切片(Slice)多维分析的基本分析动作切块定义1:在多维数组的某一维上选定某一区间的维成员动作称为切块,即限制多维数组在某一维上的取值空间。定义2:选取多维数组的一个三维子集的动作称为切块,即选定多维数组(维1,…,维成员Vi,…,维n,变量)中的三个维:i,j,r,在这三个维上某一区间或任意维成员,而将其余的维都取定一个维成员则得到的就是多维数组在维i、维j和维r上的一个三维子集,我们称这个三维子集为多维数组在维i、维j和维r上的一个切块,表示为:(维i,维j,维r,变量)。多维分析的基本分析动作切块多维分析的基本分析动作旋转旋转即是改变一个报告或页面显示的维方向。旋转示例时间维产品维行列交换产品维时间维(a)多维分析的基本分析动作旋转时间维产品维行列交换产品维时间维(多维分析的基本分析动作旋转示例(续)北京上海地区→销售量销售量产品↓::时间↓第一季度第二季度第一季度第二季度北京地区→时间→产品↓上海……::将某行维换向列维(b)多维分析的基本分析动作旋转示例(续)北京上海地区→销售量销售多维分析的基本分析动作旋转示例(续)时间维产品维地区维时间维地区维产品维旋转以改变页面显示(c)多维分析的基本分析动作旋转示例(续)时间维产品维地区维时间维多维分析的基本分析动作上钻(drill-up)上钻操作通过一个维的概念分层向上攀升或者通过维归约,在数据方体上进行聚集。下钻(drill-down)下钻是上钻的逆操作,它有不太详细的数据到更详细的数据。下钻可以通过沿维的概念分层向下或引入新的维来实现。多维分析的基本分析动作上钻(drill-up)OLAP的准则OLAP模型必须提供多维概念视图透明性准则存取能力推测稳定的报表能力客户/服务器体系结构维的等同性准则动态的稀疏矩阵处理准则多用户支持能力准则非受限的跨维操作直观的数据操纵灵活的报表生成不受限的维与聚集层次OLAP的准则OLAP模型必须提供多维概念视图OLAP实现基于多维数据库的OLAP实现基于关系数据库的OLAP实现OLAP实现基于多维数据库的OLAP实现RDBMS与MDDB数据组织比较产品名称地区销售量冰箱冰箱冰箱彩电彩电彩电空调空调空调东北西北华北东北西北华北东北西北华北506010040708090120140东北西北华北冰箱空调彩电506010040708090120140(a)(b)RDBMS与MDDB数据组织比较产品名称地区销售量冰箱东北5RDBMS与MDDB

在综合数据存放上的比较产品名称地区销售量冰箱冰箱冰箱冰箱彩电彩电彩电彩电空调空调空调空调总和总和总和总和东北西北华北总和东北西北华北总和东北西北华北总和东北西北华北总和506010021040708019090120140350180250320750东北西北华北总和冰箱空调彩电总和506010021040708019090120140350180250320750(b)(a)RDBMS与MDDB

在综合数据存放上的比较产品名称地区销售RDBMS与MDDB比较关系数据库采用关系来表达某产品在某地区的销售情况,而多维数据库中的数据组织形式采用了二维矩阵的形式。显然,二维矩阵比关系表达更清晰而且占用存储少。关于综合数据:对关系表而言,当数据苦太大时,预先处理计算各种综合需要的时间过长,并且这样会破坏列定义的统一语义。由于在MDDB中,数据可以直接按行或列累加,并且由于MDDB不象关系表那样重复出现产品和地区信息,因此其统计速度远超过RDBMS。RDBMS与MDDB比较关系数据库采用关系来表达某产品在某地维的层次关系地区总和西北地区东北地区华北地区简单层次关系的层次图维的层次关系地区总和西北地区东北地区华北地区简单层次关系的层维的层次关系地区总和辽宁省华北地区东北地区西北地区沈阳市大连市黑龙江省吉林省维的层次关系地区总和辽宁省华北地区东北地区西北地区沈阳市大连维的层次关系产品维时间维西北陕西甘肃…:宁夏东北黑龙江吉林辽宁沈阳大连

有关维的层次信息需要放在元数据中,这样系统在进行各种综合查询时,就能通过元数据的信息区分不同的维层次,从而正确的执行查询。维的层次关系产品维时间维西北陕西甘肃…:宁夏东北黑龙江吉林辽类类是指按一定的划分标准对维成员全集的一个分类划分。用集合论的概念来讲,设全体维成员为一个全集,则类是该全集的一个划分。产品维东北西北华北华南…东北西北华北华南…按“产品”销地划分按“产品”产地划分维层次关系类划分1类划分2类类是指按一定的划分标准对维成员全集的一个分类划分。用集合论维层次和类的区别层次和类表达的意义不同维层次表达的是维所描述的变量的不同综合层次。维层次越高,对应综合层次越高,粒度也越大。维层次越多,粒度层次也越丰富。表现在层次图中,父子结点的关系就是层次关系。维成员的类表达则是某一子集维成员的共同特征。这个共同特征由类属性的某一个值来表征。表现在层次图中,父子结点之间不存在类的关系,同一层次的维成员才可以划分为类。维层次和类的区别层次和类表达的意义不同维层次和类的区别在层次和类上进行的分析动作不同在维层次关系上进行的分析主要有上卷和下钻两种,其分析路径就是层次图中从根到叶或从叶到根的一条路径。按照维成员的类进行的分析主要有两个目的:分类和归纳。即首先选择某个属性来对维成员的全集进行分类,然后再在分类的基础上归纳总结出类的共同特征(或一类别区别与他类的特征)。表现在层次图上,按照维成员的类进行的分析是对兄弟结点之间的关系的分析,因此不可能跨越不同的层次。实际分析中,两种分析经常交叉组合在一起。维层次和类的区别在层次和类上进行的分析动作不同时间序列数据类型与其他维不同,时间维包含着特有的周期,不同的周期之间存在着转化规则。按照时间顺序排列的一系列的数据称为时间序列数据。时间序列模型的优点存放在一个数据单元中的时间序列数据已经包含了时间信息,因而可以省去时间维,简化了对时间的处理。多维数据库对数据单元的数目是有限制的,采用时间序列类型可以大大减少多维数据库数据单元的数目。时间序列数据类型与其他维不同,时间维包含着特有的周期,不同的时间序列数据存储ddddddddddddddweekweekweekweekddddddddddddddweekweekddddddddddddddweekweekweekweekdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd产品地区维东北西北华北总销量(日)彩电冰箱空调各地区总和(周)时间序列数据存储ddddddddddddddweekwe基于关系数据库的OLAP实现关系数据库将多维结构划分为两类表,即事实表与维表。事实表:用来存储事实的度量值及各个维的码值。维表:对每一个维而言,至少有一个用来保存该维的元数据,即维的描述信息——包括维的层次及成员类别等。基于关系数据库的OLAP实现关系数据库将多维结构划分为两类表基于关系数据库的OLAP实现“星形模式”事实表是通过每一个维的值和维表联系在一起的,该结构称为“星形”模式。Time_keyItem_keyBranch_keyLocation_keyDollars_soldUnits_soldTime_keyDayDay_of_the_weeKmonthquarteryearBranch_keyBranch_nameBranch_typeItem_keyItem_namebrandtypeSupplier_typecountryProvince_or_statecitystreetLocation_key基于关系数据库的OLAP实现“星形模式”Time_keyIt基于关系数据库的OLAP实现“雪片”模式实际应用中,数据的维往往不仅只有一个维层次,并且,当维的层次与类组合在一起将构成一个复杂的维。对于维内层次复杂的维,用一张维表来描述会带来过多的冗余数据。为此,采用多张表来描述一个复杂的维,这样,“星形”模式演变为“雪片”模式。基于关系数据库的OLAP实现“雪片”模式基于关系数据库的OLAP实现“雪片”模式Time_keyItem_keyBranch_keyLocation_keyDollars_soldUnits_soldTime_keyDayDay_of_the_weeKmonthquarteryearBranch_keyBranch_nameBranch_typeItem_keyItem_namebrandtypeSupplier_keycountryProvince_or_stateCity_keystreetLocation_keycityCity_keySupplier_typeSupplier_key基于关系数据库的OLAP实现“雪片”模式Time_keyIt数据仓库和数据挖掘

de

OLAP技术苟清龙2002年9月数据仓库和数据挖掘

de

OLAP技术苟清龙第一节从数据库到数据仓库OLTP不适于DSS应用数据仓库的定义及其特征数据仓库的数据组织数据仓库的体系化环境第一节从数据库到数据仓库OLTP不适于DSS应用OLTP不适于DSS应用事务处理的性能特性不同数据集成问题事务处理应用分散“蜘蛛网”问题数据不一致问题外部数据和非结构化问题数据动态集成问题历史数据问题数据的综合问题OLTP不适于DSS应用事务处理的性能特性不同什么是数据仓库数据仓库是一个用以更好地支持企业或组织的决策分析处理的、面向对象主题的、集成的、不可更新的、随时间不断变化的数据集合。什么是数据仓库数据仓库是一个用以更好地支持企业或组织的决策分操作型数据和分析型数据的区别操作型数据分析型数据细节的综合的,或提炼的在存取时刻是准确的代表过去的数据可更新不更新操作需求事先可知道操作需求事先不知道对性能要求高对性能要求宽松生命周期符合SDLC完全不同的生命周期一时刻操作一单元一时刻操作一集合事务驱动分析驱动面向应用面向分析一次操作数据量小一次操作数据量大支持日常操作支持管理需求操作型数据和分析型数据的区别操作型数据分析型数据细节的综合的数据仓库的四个特性面向主题的集成的随时间不断变化的不可更新的数据仓库的四个特性面向主题的数据仓库数据的面向主题性什么是主题?面向主题的例子面向主题的性质面向主题的实现方式面向主题的实现示例主题域及其特性数据仓库数据的面向主题性什么是主题?什么是主题?主题是一个抽象的概念,是在较高层次上将企业信息综合、归类,并进行分析利用的抽象;在逻辑意义上,他是对企业中某一宏观领域所涉及的分析对象;面向主题的数据组织方式,就是在较高层次上对分析对象的数据一个完整、一致的描述,能完整、统一地刻画各个分析对象所涉及的企业的各项数据,以及数据之间的联系。什么是主题?主题是一个抽象的概念,是在较高层次上将企业信息综一个传统OLTP环境下的数据库模式示例采购子系统定单(定单号,供应商号,总金额,日期)定单细则(定单号,商品号,类别,单价,数量)供应商(供应商号,供应商名,地址,电话)销售子系统顾客(顾客号,姓名,年龄,文化程度,地址,电话)销售(员工号,顾客号,商品号,数量,单价,日期)一个传统OLTP环境下的数据库模式示例采购子系统一个传统OLTP环境下的数据库模式示例(续)库存管理子系统领料单(领料单号,领料人,商品号,数量,日期)进料单(进料单号,定单号,进料人,收料人,日期)库存(商品号,库房号,库存量,日期)库房(库房号,库房管理员,地点,库存商品描述)人事子系统员工(员工号,姓名,性别,年龄,文化程度,部门号)部门(部门号,部门名称,部门主管,电话)一个传统OLTP环境下的数据库模式示例(续)库存管理子系统一个传统OLAP环境下的数据库模式示例商品商品固有信息:商品号,商品名,类别,颜色等;商品采购信息:商品号,供应商号,供应价,供应量,供应日期等;商品销售信息:商品号,顾客号,售价,销售量,销售日期等;商品库存信息:商品号,库房号,库存量,日期等。一个传统OLAP环境下的数据库模式示例商品一个传统OLAP环境下的数据库模式示例(续)供应商供应商固有信息:供应商号,供应商名,地址,电话等;供应商品信息:供应商号,商品号,供应价,供应日期,供应量等。顾客顾客固有信息:顾客号,顾客名,性别,年龄,文化程度,地址,电话等。顾客购物信息:顾客号,商品号,售价,购买日期,购买量等。一个传统OLAP环境下的数据库模式示例(续)供应商面向主题数据组织模式的说明在从面向应用到面向主题的转变过程中,丢弃了原来有的但不必要的、不适于分析的信息;在原有的数据库模式中,有关商品的信息分散在各个子系统之中;面向主题的数据组织方式所强调的就是要形成关于主题一致的信息集合;不同主题之间有重叠内容。面向主题数据组织模式的说明在从面向应用到面向主题的转变过程中主题的实现两种主题实现方式多维数据库关系数据库在具体实现中,一个主题可划分为多个表,主题只是一个逻辑概念。主题的实现两种主题实现方式主题实现的范例主题:商品公共码键:商品号商品表1(商品号,商品名,类型,颜色,……)/*商品固有信息*/采购表1(商品号,供应商号,供应日期,供应价,采购量,……)/*商品采购的细节描述*/采购表2(商品号,时间段,采购总量,……)/*某时段商品采购信息*/……采购表n(……,……)/*时间段不等的采购综合表*/主题实现的范例主题:商品主题实现的范例(续)销售表1(商品号,顾客号,销售日期,售价,销售量,……)

/*商品销售细节信息*/销售表2(商品号,时间段,销售总量,……)

/*某时段内商品销售信息*/……销售表n(……,……)/*时段不等的销售综合表*/库存表1(商品号,库房号,库存量,日期,……)

/*商品库存述细节信息*/库存表2(商品号,库房号,库存量,月份,……)

/*每月月底的商品库存信息*/……库存表n(……,……)/*时点不同的商品库存信息*/……主题实现的范例(续)销售表1(商品号,顾客号,销售日期,售价主题域面向主题的数据组织方式根据分析要求将数据组织成一个完整的分析领域,即主题域。主题域的特性:独立性一个主题域可以和其他主题有交叉部分,但他必须有独立内涵,即要求有明确的界限规定数据是否属于该主题。完备性对一个主题的任意分析处理要求,都能在该主题内找到该处理要求的一切内容。主题域面向主题的数据组织方式根据分析要求将数据组织成一个完整数据仓库的数据集成性涵义:数据仓库的数据是从原有的分散数据库数据中抽取集成而来的。问题:操作型数据与分析型数据的差别需要完成的工作要统一数据库中所有的矛盾,如字段的同名异义,异名同义,单位不统一,字长不一致等;进行数据综合和计算。数据仓库的数据集成性涵义:数据仓库的数据是从原有的分散数据库数据仓库数据的不可更新性数据仓库的数据主要提供企业决策分析之用,所涉及的数据操作主要是数据查询,一般情况不进行修改操作。数据仓库数据的不可更新性数据仓库数据的时变性数据仓库随时间变化不断增加新的数据内容;数据仓库随时间变化不断删去旧的数据内容;数据仓库中含有大量的综合数据,这些数据随时间变化不断进行重新组合。数据仓库数据的时变性数据仓库的数据组织数据仓库的数据组织结构图元数据粒度与分割数据仓库的数据组织形式数据仓库的数据追加数据仓库的数据组织数据仓库的数据组织结构图数据仓库的数据组织结构元数据高度综合级轻度综合级当前细节级早期细节级数据仓库的数据组织结构元高度综合级轻度综合级当前细节级早期细元数据元数据:关于数据的的数据DW中的两种元数据为从操作型环境向DW环境转换而建立的元数据,在DW中用来与终端用户的多维商业模型/前端工具之间建立映射的元数据。元数据元数据:关于数据的的数据粒度第一种粒度:对数据仓库中的数据综合程度高低的度量,它影响数据仓库中数据量的多少,也影响所能回答问题的种类。第二种粒度:样本数据库采样率的高低。(采样粒度不同的样本数据库可以有相同级别的综合级别。)粒度第一种粒度:对数据仓库中的数据综合程度高低的度量,它影响分割将数据分散到各自的物理单元中去以便能分别独立处理,以提高处理效率,数据分割后的数据单元称为分片。分割的一个例子健康保险生命保险事故保险1988分片1分片2分片31989分片4分片5分片61990分片7分片8分片9分割将数据分散到各自的物理单元中去以便能分别独立处理,以提高数据仓库的数据组织形成简单堆积文件轮转综合文件(如股市)简化直接文件(按一定时间间隔对数据库采样)连续文件数据仓库的数据组织形成简单堆积文件数据仓库的数据追加时标方法DELTA文件前后映象文件的方法日志文件数据仓库的数据追加时标方法数据库体系化环境什么是数据库体系化环境?四层体系化环境数据集市数据库体系化环境什么是数据库体系化环境?什么是数据库体系化环境数据库体系化环境是在一个企业或组织内,由各面向应用的OLTP数据库及各级面向主题的数据仓库所组成的完整的数据环境,在这个数据环境上建立和进行一个企业或部门的从联机事务处理到企业管理决策的所有应用。两个组成部分:操作型环境分析型环境什么是数据库体系化环境数据库体系化环境是在一个企业或组织内,四层体系化环境操作型环境数据仓库局部仓库个人仓库全局级部门级个人级(1)操作型环境:存放细节操作性数据,服务于高性能事务处理。(2)全局级DW:存放细节数据,以及大量导出数据。(3)部门级DW:一般仅包含导出数据。(4)个人级DW:都是暂时的,用于启发式分析。四层体系化环境操作型环境数据仓库局部仓库个人仓库全局级部门级数据集市全局数据仓库数据再抽取与集成采购子系统销售子系统库存子系统人事管理财务子系统数据抽取数据抽取数据抽取数据抽取数据抽取DATAMART数据集市全局数据仓库数据再抽取与集成数据抽取数据抽取数据抽取第二节数据仓库设计数据仓库系统设计方法概述DW设计的三级数据模型提高DW性能数据仓库中的元数据数据仓库的设计步骤第二节数据仓库设计数据仓库系统设计方法概述数据仓库系统设计方法概述DWS与DBS设计的不同之处SDLC与CLDS方法比较“数据驱动”系统设计方法的基本思路数据模型是数据驱动设计方法的中心DW系统设计是一个动态反馈循环过程DW的三级数据模型提高DW的性能数据仓库系统设计方法概述DWS与DBS设计的不同之处DWS与DBS设计的不同之处面向处理类型不同面向需求不同系统设计的目标不同两者的数据来源或系统的输入不同系统设计方法和步骤不同DWS与DBS设计的不同之处面向处理类型不同SDLC与CLDS方法比较收集应用需求分析应用需求构建数据库应用编程系统测试系统实施DB应用A应用B应用C数据仓库建模数据获取与集成构建数据仓库DSS应用编程系统测试理解需求DWDBDB外部数据SDLC与CLDS方法比较收集应用需求分析应用需求构建数据库“数据驱动”系统设计方法的基本思路“数据驱动”系统设计方法的思路就是利用以前所取得的工作成果来进行系统建设。DW的设计是从已有的DB系统出发,按照分析领域对数据及数据之间的联系重新考察、组织DW中的主题。系统设计方法的中心是利用数据模型有效地识别原有的数据库中的数据和数据仓库中主题的数据的“共同性”。“数据驱动”系统设计方法的基本思路“数据驱动”系统设计方法的数据模型

是数据驱动设计方法的中心操作型环境设计操作型处理应用开发与设计DBDBDB数据仓库设计DSS应用开发与设计DW数据模型数据模型

是数据驱动设计方法的中心操作型环境设计操作型处理应DW系统设计

是一个动态反馈循环过程DW的数据内容、结构、粒度、分割以及其他物理设计根据用户所返回的信息不断调整、完善,以提高系统的效率和性能。通过不断的理解用户的分析需求,向用户提供更准确,更有用的决策信息。DW系统设计

是一个动态反馈循环过程DW与DB三级数据模型的区别DW的数据模型不包含纯操作型数据;DW的数据模型扩充了码结构,增加了时间属性作为码的一个部分;DW的数据模型中增加了一些导出数据。DW与DB三级数据模型的区别DW的数据模型不包含纯操作型数据DW的三级数据模型概念模型逻辑模型物理模型DW的三级数据模型概念模型高级模型、

中级模型和低级模型高级模型:即E-R图;低级模型:即物理数据模型中级模型:称为数据项(dis-dataitemset)高级模型、

中级模型和低级模型高级模型:即E-R图;Dis中的数据组联接数据组:主要用于本主题域与其他主题域之间的联系,体现E-R图中实体之间的关系。基本数据组二级数据组类数据组Dis中的数据组联接数据组:主要用于本主题域与其他主题域之间提高DW的性能粒度划分分割其他问题提高DW的性能粒度划分粒度划分粒度划分的决定因素并非总的数据量,而是总的行数。划分步骤(1)估算DW中数据行数和所需的DASD(DirectAccessStorageDevice)数。(2)根据估算算出的数据行数和DASD,决定是否划分粒度,如果要,如何划分。粒度划分粒度划分的决定因素并非总的数据量,而是总的行数。分割核心:选择适当的分割标准考虑因素:数据量、数据分析处理的实际情况、简单易行、粒度划分分割核心:选择适当的分割标准数据仓库物理设计

中的其他一些问题合并表建立数据序列引入冗余表的物理分割生成导出数据建立广义索引数据仓库物理设计

中的其他一些问题合并表第三节数据操作存储(ODS)ODS的定义与特点ODS的功能ODS与DW的区别DB-ODS-DW三层体系结构第三节数据操作存储(ODS)ODS的定义与特点ODS的定义与特点ODS是用于支持企业日常的全局应用的数据集合。保存在ODS中的数据具有四个基本特点:(1)面向主题的(2)集成的(3)可变的(4)数据是当前或接近当前的ODS的定义与特点ODS是用于支持企业日常的全局应用的数据集ODS的功能进行企业级的联机事务处理;“即时OLAP”数据处理。ODS的功能进行企业级的联机事务处理;ODS与DW的区别操作数据存储ODS数据仓库DW当前或接近当前的数据细节数据可联机更新历史数据细节数据和综合数据不可变快照ODS与DW的区别操作数据存储ODS数据仓库DW当前或接近当DB-ODS-DW三层体系结构DW分析型环境ODSDBDBDB应用操作型环境DB-ODS-DW三层体系结构DW分析型环境ODSDBDBD第四节数据仓库工具数据仓库体系结构OLTP的基本概念多维分析的基本分析动作OLAP的准则OLAP实现第四节数据仓库工具数据仓库体系结构数据仓库体系结构示意图数据仓库体系结构示意图数据库系统和数据仓库系统结构的比较数据库系统数据仓库系统数据库:操作型数据增、删、改操作频繁数据仓库:分析型数据极少有更新操作数据库核心:功能强大面向OLTP应用数据仓库管理系统:因极少有更新操作,故功能简单数据库工具:以查询工具为主数据仓库工具:以分析工具为主。数据库系统和数据仓库系统结构的比较数据库系统数据仓库系统数据OLAP的基本概念变量变量是数据的实际意义。即描述数据“是什么”。维维是人们观察数据的特定角度。如时间维、地理维。OLAP的基本概念变量OLAP的基本概念维的层次人们观察数据的某个特定角度(即某个维)还可以存在细节程度不同的多个描述方面,我们称这个描述方面为维的层次。如:时间维:日期—>月份—>季度—>年地理维:城市—>地区—>国家OLAP的基本概念维的层次OLAP的基本概念维成员维的一个取值称为该维的一个维成员。若一个维是多层次的,那么该维的维成员是在不同层次的取值组合。例:时间维:日期、月份、年维成员:某年某月某日、某年某月、某年对应一个数据项来说,维成员是该数据项在某维中位置的描述。例:对一个销售数据而言,时间维成员“某年某月某日”就表示该销售数据是“某年某月某日”的销售数据,“某年某月某日”是该销售数据在时间维位置的描述。OLAP的基本概念维成员OLAP的基本概念多维数组一个多维数组可以表示为:(维1,维2,维3……,维n,变量)例:(地区,时间,销售渠道,销售额)OLAP的基本概念多维数组OLAP的基本概念数据单元多维数组的取值称为数据单元。

例:多维数组:(地区,时间,销售渠道,销售额)数据单元:(北京,2002年7月,批发,1000)OLAP的基本概念数据单元多维分析的基本分析动作切片(Slice)定义1:在多维数组的某一个维上选定一维成员的操作称为切片。即在多维数组(维1,维2,维3……,维n,变量)中选取一维,设为维i,并取其一维成员(设为“维成员Vi”),所得多维数组的子集(维1,…,维成员Vi,…,维n,变量)称为维i上的一个切片。

例:多维数组:(地区,时间,产品,销售额)一个切片:(地区,2002年9月,产品,销售额)多维分析的基本分析动作切片(Slice)多维分析的基本分析动作切片(Slice)定义2:选定多维数组的一个二维子集的动作叫作切片,即选取多维数组(维1,维2,维3……,维n,变量)中的两个维,维i和维j,在这两个维上取某一区间或任意维成员,而将其余的维取定一个维成员,则得到的是一个多维数组在维i和维j上的二维子集,称这个二维子集为多维数组在维i和维j上的一个切片,表示为(维i,维j,变量)多维分析的基本分析动作切片(Slice)多维分析的基本分析动作切块定义1:在多维数组的某一维上选定某一区间的维成员动作称为切块,即限制多维数组在某一维上的取值空间。定义2:选取多维数组的一个三维子集的动作称为切块,即选定多维数组(维1,…,维成员Vi,…,维n,变量)中的三个维:i,j,r,在这三个维上某一区间或任意维成员,而将其余的维都取定一个维成员则得到的就是多维数组在维i、维j和维r上的一个三维子集,我们称这个三维子集为多维数组在维i、维j和维r上的一个切块,表示为:(维i,维j,维r,变量)。多维分析的基本分析动作切块多维分析的基本分析动作旋转旋转即是改变一个报告或页面显示的维方向。旋转示例时间维产品维行列交换产品维时间维(a)多维分析的基本分析动作旋转时间维产品维行列交换产品维时间维(多维分析的基本分析动作旋转示例(续)北京上海地区→销售量销售量产品↓::时间↓第一季度第二季度第一季度第二季度北京地区→时间→产品↓上海……::将某行维换向列维(b)多维分析的基本分析动作旋转示例(续)北京上海地区→销售量销售多维分析的基本分析动作旋转示例(续)时间维产品维地区维时间维地区维产品维旋转以改变页面显示(c)多维分析的基本分析动作旋转示例(续)时间维产品维地区维时间维多维分析的基本分析动作上钻(drill-up)上钻操作通过一个维的概念分层向上攀升或者通过维归约,在数据方体上进行聚集。下钻(drill-down)下钻是上钻的逆操作,它有不太详细的数据到更详细的数据。下钻可以通过沿维的概念分层向下或引入新的维来实现。多维分析的基本分析动作上钻(drill-up)OLAP的准则OLAP模型必须提供多维概念视图透明性准则存取能力推测稳定的报表能力客户/服务器体系结构维的等同性准则动态的稀疏矩阵处理准则多用户支持能力准则非受限的跨维操作直观的数据操纵灵活的报表生成不受限的维与聚集层次OLAP的准则OLAP模型必须提供多维概念视图OLAP实现基于多维数据库的OLAP实现基于关系数据库的OLAP实现OLAP实现基于多维数据库的OLAP实现RDBMS与MDDB数据组织比较产品名称地区销售量冰箱冰箱冰箱彩电彩电彩电空调空调空调东北西北华北东北西北华北东北西北华北506010040708090120140东北西北华北冰箱空调彩电506010040708090120140(a)(b)RDBMS与MDDB数据组织比较产品名称地区销售量冰箱东北5RDBMS与MDDB

在综合数据存放上的比较产品名称地区销售量冰箱冰箱冰箱冰箱彩电彩电彩电彩电空调空调空调空调总和总和总和总和东北西北华北总和东北西北华北总和东北西北华北总和东北西北华北总和506010021040708019090120140350180250320750东北西北华北总和冰箱空调彩电总和506010021040708019090120140350180250320750(b)(a)RDBMS与MDDB

在综合数据存放上的比较产品名称地区销售RDBMS与MDDB比较关系数据库采用关系来表达某产品在某地区的销售情况,而多维数据库中的数据组织形式采用了二维矩阵的形式。显然,二维矩阵比关系表达更清晰而且占用存储少。关于综合数据:对关系表而言,当数据苦太大时,预先处理计算各种综合需要的时间过长,并且这样会破坏列定义的统一语义。由于在MDDB中,数据可以直接按行或列累加,并且由于MDDB不象关系表那样重复出现产品和地区信息,因此其统计速度远超过RDBMS。RD

温馨提示

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

最新文档

评论

0/150

提交评论