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

下载本文档

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

文档简介

第2章 数据仓库和数据挖掘

的OLAP技术什么是数据仓库多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘1第2章 数据仓库和数据挖掘

的OLAP技术什什么是数据仓库1、需求产生DW使顾客满意,不断增加利润,提高市场份额,这些是目前商业竞争的基本目标。利用IT可以使我们获得成功。答案之一就是DW:公司的目标如何与信息系统结合;如何建立具有交叉功能的信息系统;数据的合理组织和利用。

2什么是数据仓库1、需求产生DW22、数据处理分为两大类事务处理:DB联机的日常操作,对一个或一组记录的查询和修改,为企业服务。分析型处理:用于管理人员的决策分析。例如DSS、EIS和多维分析,经常要访问大量的历史数据。32、数据处理分为两大类33、事务处理环境不适宜DSS应

用的原因事务处理和分析处理的性能特性不同数据集成问题(DSS需要集成的数据)a.事务处理应用的分散;b.蜘蛛网问题;

c.数据不一致问题;d.外部数据和非结构化数据。

数据动态集成问题:数据必须以一定的周期进行刷新。历史数据问题。在DB中存在大量的历史数据,没有充分利用。

43、事务处理环境不适宜DSS应

用的原因事务处理和分析DW的主要驱动力是市场竞争要求捕获和分析事务的业务数据,必须把分析型数据从事务处理环境中提取出来;DW是为了建立这种新的分析处理环境而出现的一种数据存储和组织技术。4、数据综合54、数据综合5“数据仓库是一个面向主题的、集成的、时变的、非易失的数据集合,支持管理部门的决策过程”—W.H.Inmon什么是建立数据仓库 我们把建立数据仓库看作是构造和使用数据仓库的过程66数据仓库的面向主题性数据仓库是面向在数据模型中已定义好的公司的主要主题领域的,典型的例子有顾客、产品、销售等数据仓库主要关注DSS分析员的数据建模与分析,而不是集中于组织机构的日常操作和事务处理数据仓库排除对于决策无用的数据,提供特定主题的简明的视图7数据仓库的面向主题性数据仓库是面向在数据模型中已定义好的公司数据仓库的集成性数据仓库是将多个异种数据源的数据集成在一起a.异种数据源包括有关系数据库、一般文件和联机事务处理记录等数据仓库使用数据清理和数据集成技术a.数据清理和数据集成技术确保多个异种数据源中命名约定、编码结构、属性度量等的一致性b.当数据从操作型环境进入到数据仓库,已经被进行过清理和转换8数据仓库的集成性数据仓库是将多个异种数据源的数据集成在一起8数据仓库的时变性数据仓库中的数据时间期限要远远长于操作型系统中的数据时间期限a.操作型系统含有“当前值”数据,时间期限一般是60-90天b.数据仓库从历史的角度提供信息,其中的数据仅仅是一系列某一时刻生成的复杂的快照,时间期限通常是5-10年数据仓库中的键码结构a.数据仓库中的关键结构,隐式或显式地包含时间元素b.操作型系统的键码结构可能不包括时间元素9数据仓库的时变性数据仓库中的数据时间期限要远远长于操作型系统数据仓库是非易失的数据仓库总是物理地、分离存放数据数据仓库中不进行操作型环境中的数据更新a.数据仓库不需要事务处理、恢复和并发控制机制b.数据仓库通常只需要两种数据访问:数据的初始化装入和数据访问10数据仓库是非易失的数据仓库总是物理地、分离存放数据10怎样建立数据仓库

把建立数据仓库看作是构造和使用数据仓库的过程主题是对应某一分析领域的分析对象DW是一个用以更好地支持企业或组织的决策分析处理的、面向主题的、集成的、不可更新的、非易失的数据集合11怎样建立数据仓库 11实现DW要做:

从不同数据来源中如何集成数据数据质量:精确和简炼数据的概括和聚集每当数据源中创建了新数据时,如何保证DW和数据源的同步更新在同一台计算机和RDB的平台上,当DW的DB和工具共享时如何保证性能

12实现DW要做:

从不同数据来源中如何集成数据1DW中的数据组织在DW中的数据分为四个级别:早期细节级、当前细节级、轻度综合级、高度综合级源数据经过综合后,首先进入当前细节级,并根据具体需要进行进一步的综合从而进入轻度综合级及至高度综合级(以DW中数据的四个基本特征为基础)13DW中的数据组织在DW中的数据分为四个级别:早期细节级、当前14141515数据仓库主要用于集中存放用户需要分析的历史数据数据仓库的逻辑结构:

a.近期基本数据层b.历史数据层c.综合数据层(为决策服务)数据仓库的物理结构:a.星型结构(一般使用)b.雪花结构16数据仓库主要用于集中存放用户需要分析的历史数据数据仓库的逻辑数据仓库的特征面向主题集成性时变的非易失的17数据仓库的特征17数据仓库中的数据分类详细型数据过去详细数据当前详细数据汇总型数据轻度汇总数据高度汇总数据元数据18数据仓库中的数据分类详细型数据18数据仓库的主要组成部分数据源数据抽取(Extraction)、

转换(Transformation)和装载(Load)工具。数据建模工具核心仓储(CentralRepository)数据仓库的目标数据库前端数据访问和分析工具数据仓库管理工具19数据仓库的主要组成部分数据源19数据仓库的主要特点数据仓库容量可存放TB级别的数据;获得快速抽样算法生成功能强大、容易使用的、高质量的报表;实现海量数据的快速查询功能;可视化分析良好的、模块划的多维分析模型多维模型升级快20数据仓库的主要特点数据仓库容量可存放TB级别的数据;获得快速什么是OLAP基本概念a.变量

b.维c.维的层次:d.维成员e.多维数组f.数据单元(单元格)多维分析的基本分析动作①切片(slice)②切块(Dice)③旋转:改变一个报告或页面显示的维方向通过OLAP服务器,将DB中的数据抽取和转换为多维数据结构,以反映用户所能理解的企业的真实的维。21什么是OLAP基本概念21OLTP与OLAP的关系级比较OLTP面对操作人员和低层管理人员,OLAP面对的决策人员和高层管理人员。数据的特点:22OLTP与OLAP的关系级比较22OLAP产品的十二条评价准则准则1OLAP模型必须提供多维概念视图准则2透明性准则准则3存取能力准则准则4稳定的报表性能准则5客户/服务器体系结构准则6维的等同性准则准则7动态的稀疏矩阵处理准则准则8多用户支持能力准则准则9非管理的跨维操作准则10直观的数据操纵准则11灵活的报表生成准则12不受限维与聚集层次23OLAP产品的十二条评价准则准则1OLAP模型必须提供多维OLAP的三层客户/服务器24OLAP的三层客户/服务器24基于多维数据库的OLAP实现

多维数据

维的层次关系和类维类维的层次和类的区别:时间序列数据类型多维DB存储MDDB存取25基于多维数据库的OLAP实现多维数据25基于RDB的OLAP实现OLAP数据处理的一般过程:即数据装入、汇总、建索引和提供使用。OLAP的特点OLAP最重要的特点是具有多维概念视图,这也常常被称作多维数据模型MDM,把业务过程转为一个多维模型的过程称为多维建模。OLAP技术主要使用的是事实表、分维表、层次、稀疏性等概念和方法。26基于RDB的OLAP实现OLAP数据处理的一般过程:即数据装数据仓库和异种DBMS数据集成的区别传统的异种数据库的数据集成:在多个异种数据库上建立一个包装程序和一个集成程序(或中介程序)查询驱动的方法数据仓库使用高效的更新驱动方法将来自多个异种数据源的信息预先集成,并储存在数据仓库中,供直接查询和分析27数据仓库和异种DBMS数据集成的区别传统的异种数据库的数据集OLTP系统和OLAP系统的比较28OLTP系统和OLAP系统的比较28为什么需要一个分离的数据仓库?分离的主要原因是提高两个系统的性能DBMS—适用于OLTP处理:数据仓库—适用于OLAP处理:两种系统中数据的结构、内容和用法都不相同数据内容:决策支持系统需要历史数据,而操作数据库一般不维护历史数据数据的统一性:决策支持需要将来自异种数据源的数据统一(如聚集和汇总),产生高质量的集成数据数据质量:异种数据源中的数据通常具有不同的数据表示法,不同的编码机制和格式,数据仓库将其统一,能产生高质量的、纯净的集成数据29为什么需要一个分离的数据仓库?分离的主要原因是提高两个系统的第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?

多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘30第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?3由表和电子数据表到数据立方体数据仓库和OLAP工具基于多维数据模型,该模型将数据看作数据立方体形式一个数据立方体,比如商店的销售,允许以多维对数据建模和观察例如item(item_name,brand,type),time(day,week,month,quarter,year)称为维表,关联维item和

time事实表包括事实的名称或度量(比如dollars_sold),以及每个相关维表的关键字在数据仓库研究文献中,存放最低层汇总数据的方体称为基本方体。0-维方体存放最高层的汇总数据,称作顶点方体。方体的格称为数据立方体31由表和电子数据表到数据立方体数据仓库和OLAP工具基于多维数数据立方体:方体的格alltimeitemlocationsuppliertime,itemtime,locationtime,supplieritem,locationitem,supplierlocation,suppliertime,item,locationtime,item,suppliertime,location,supplieritem,location,suppliertime,item,location,supplier0-D(顶点)方体1-D方体2-D方体3-D方体4-D(基本)方体32数据立方体:方体的格alltimeitemlocations数据仓库的概念建模数据仓库的建模:按维和度量星型模式:模式图很像星星爆发,维表围绕事实表显示在射线上雪花模式:雪花模式是星型模式的变种,其中某些维表是规范化的,把数据进一步分解到附加的表中,形成类似于雪花的形状事实星座:多个事实表共享维表,这种模式可以看作星型模式集,因此也可以称为星系模式,或者事实星座33数据仓库的概念建模数据仓库的建模:按维和度量33星型模式的例子

time_keydayday_of_the_weekmonthquarteryeartime维表location_keystreetcityprovince_or_streetcountrylocation维表Sales事实表

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales各种度量item_keyitem_namebrandtypesupplier_typeitem维表branch_keybranch_namebranch_typebranch维表34星型模式的例子time_keytime维表locati雪花模式的例子time_keydayday_of_the_weekmonthquarteryeartime维表location_keystreetcity_keylocation维表Sales事实表

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales各种度量item_keyitem_namebrandtypesupplier_keyitem维表branch_keybranch_namebranch_typebranch维表supplier_keysupplier_typesupplier维表city_keycityprovince_or_streetcountrycity维表35雪花模式的例子time_keytime维表location_事实星座的度量time_keydayday_of_the_weekmonthquarteryeartime维表location_keystreetcityprovince_or_streetcountrylocation维表Sales事实表time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales各种度量item_keyitem_namebrandtypesupplier_typeitem维表branch_keybranch_namebranch_typebranch维表Shipping事实表time_key

item_key

shipper_key

from_location

to_location

dollars_cost

units_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper维表36事实星座的度量time_keytime维表location_数据挖掘查询语言DMQL立方体定义(对应事实表)definecube<cube_name>[<dimension_list>]:<measure_list>维定义(对应维表)definedimension<dimension_name>as(<attribute_or_subdimension_list>)特殊情况(共享的维表)先定义数据立方体definedimension<dimension_name>as<dimension_name_first_time>incube<cube_name_first_time>37数据挖掘查询语言DMQL立方体定义(对应事实表)37用DMQL定义星型模式definecubesales_star[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier_type)definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city,province_or_state,country)38用DMQL定义星型模式definecubesales_s用DMQL定义雪花模式definecubesales_snowflake[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier(supplier_key,supplier_type))definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city(city_key,province_or_state,country))39用DMQL定义雪花模式definecubesales_s用DMQL定义事实星座definecubesales[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier_type)definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city,province_or_state,country)definecubeshipping[time,item,shipper,from_location,to_location]:dollar_cost=sum(cost_in_dollars),unit_shipped=count(*)definedimensiontimeastimeincubesalesdefinedimensionitemasitemincubesalesdefinedimensionshipperas(shipper_key,shipper_name,locationaslocationincubesales,shipper_type)definedimensionfrom_locationaslocationincubesalesdefinedimensionto_locationaslocationincubesales40用DMQL定义事实星座definecubesales[度量的分类和计算分布的:设数据被划分为n个集合,函数在每一部分上的计算得到一个聚集值,如果将函数用于n个聚集值得到的结果,与将函数用于所有数据得到的结果一样,则该函数可以用分布方式计算,该聚集函数是分布的E.g.,count(),sum(),min(),max().41度量的分类和计算分布的:设数据被划分为n个集合,函数在每一代数的:

一个聚集函数是代数的,如果它能够由一个具有M个参数的代数函数计算(其中M是一个有界整数),而每个参数都可以用一个分布聚集函数得到E.g.,

avg(),min_N(),standard_deviation().42代数的:一个聚集函数是代数的,如果它能够由一个具有M个参数整体的:一个聚集函数是整体的,如果描述它的子聚集所需的存储没有一个常数界E.g.,median(),mode(),rank().43整体的:一个聚集函数是整体的,如果描述它的子聚集所需的存储概念分层allEuropeNorth_AmericaMexicoCanadaSpainGermanyVancouverM.WindL.Chan..................allregionofficecountryTorontoFrankfurtcity44概念分层allEuropeNorth_AmericaMexi数据仓库概念分层视图45数据仓库概念分层视图45概念分层分类模式分层day<{month<quarter;week}<year集合分组分层{1..10}<inexpensive46概念分层分类模式分层46多维数据模型数据立方体sales中每格的度量可以看作是关联Product、Region和Month的函数ProductRegionMonth涉及的维:Product,Location,Time属性的层次结构和格结构IndustryRegionYearCategoryCountryQuarterProductCityMonthWeekOfficeDay47多维数据模型数据立方体sales中每格的度量可以看作是关联P数据立方体样本全年度美国电视机的销售量DateProductCountryAll,All,Allsumsum

TVVCRPC1Qtr2Qtr3Qtr4QtrU.S.ACanadaMexicosum48数据立方体样本全年度美国电视机DateProductCoun立方体中不同汇总级相应的方体allproductdatecountryproduct,dateproduct,countrydate,countryproduct,date,country0-D(顶点)方体1-D方体2-D方体3-D(基本)方体49立方体中不同汇总级相应的方体allproductdateco数据立方体览图可视化适合OLAP操作交互式操作50数据立方体览图可视化50典型的OLAP操作上卷(上钻):

数据的汇总通过一个维的概念分层向上攀升或者通过维归约来实现下钻(下卷):上卷的逆操作通过沿维的概念分层由高粒度向下下钻到低粒度的层次或者通过引入新的维来实现切片和切块:

映射和选择

51典型的OLAP操作上卷(上钻):数据的汇总51转轴(旋转):

转动数据的视角,是一种目视操作,如将3-D立方转换成2-D平面序列其他OLAP操作钻过:涉及多个事实表的查询钻透:钻到数据立方体底层,到达后端关系表(使用SQL机制)52转轴(旋转):52星型网查询模型

ShippingMethodAIR-EXPRESSTRUCKORDERCustomerOrdersCONTRACTSCustomerProductPRODUCTGROUPPRODUCTLINEPRODUCTITEMSALESPERSONDISTRICTDIVISIONOrganizationPromotionCITYCOUNTRYREGIONLocationDAILYQTRLYANNUALYTime每个圈称为一个脚印53星型网查询模型ShippingMethodAIR-EXP第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?

多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘54第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?5数据仓库设计:一个商务分析框架数据仓库的设计必须考虑四种不同的视图自顶向下视图可以选择数据仓库所需的相关信息,这些信息能够满足当前和未来商务的需求数据源视图揭示被操作数据库系统捕获、存储和管理的信息数据仓库视图包括事实表和维表,提供存放在数据仓库内部的信息商务查询视图

从最终用户的角度透视数据仓库中的数据55数据仓库设计:一个商务分析框架数据仓库的设计必须考虑四种不同数据仓库设计过程采用自顶向下方法,或者自底向上方法,或者混合方法自顶向下:由总体规划和设计开始(成熟)自底向上:由实验和原型开始(快速)从软件工程的观点看瀑布式方法:在进行下一步之前,每一步都进行结构化和系统的分析,像瀑布一样从一级落到下一级螺旋式方法:涉及功能渐增的系统的快速产生,相继版本之间的间隔很短,对数据集市是一个好的选择典型的数据仓库设计过程选取待建模的商务处理,如订单、发票、出货、库存、记帐等选取商务处理的粒度(数据的原子级),如一天的快照等选取用于每个事实表的维选取将安放在事实表中的度量56数据仓库设计过程采用自顶向下方法,或者自底向上方法,或者混多层数据仓库体系结构数据仓库提取转换装入刷新OLAP服务器分析查询报告数据挖掘监控&汇总元数据前端工具输出数据集市操作数据库外部信息源数据源数据存储器OLAP服务器57多层数据仓库体系结构数据仓库提取OLAP服务器分析监控元数据三类数据仓库模型企业仓库搜集关于主题的所有信息,跨越整个组织,通常包括详细数据和汇总数据数据集市包含对于特定用户有用的企业范围内数据的一个子集,通常包括的数据是汇总的。其范围限于选定的主题,例如商场的顾客、商品和销售独立数据集市和依赖数据集市(数据直接来自企业仓库)的区别虚拟仓库操作数据库上视图的集合只有一些可能的汇总视图被物化58三类数据仓库模型企业仓库58数据仓库开发的推荐方法定义高层数据模型数据集市数据集市分布式数据集市多层数据仓库企业数据仓库模型提炼模型提炼59数据仓库开发的推荐方法定义高层数据模型数据集市数据集市分布式OLAP服务器类型关系OLAP(ROLAP)

服务器使用关系或扩充关系DBMS存放和管理数据仓库,而OLAP中间件支持其余部分多维OLAP(MOLAP)

服务器通过基于数组的多维存储引擎,支持数据的多维视图(采用稀疏矩阵技术)混合OLAP(HOLAP)服务器ROLAP和MOLAP技术的结合,有较大的灵活性。特殊的SQL服务器在星型和雪花模式上支持的特殊SQL查询60OLAP服务器类型关系OLAP(ROLAP)服务器60第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?

多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘61第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?6数据立方体的有效计算数据立方体可以看作是方体的格最底层的方体称为基本方体最高层(顶点)方体只包含一个单元一个具有L层的n维数据立方体一共有多少个方体?数据立方体的物化预先计算所有方体(全物化),不预先计算(不物化),

或者有选择的物化(部分物化)物化方体的选择考虑存储需求量、访问频率和开销、工作负荷的特点等62数据立方体的有效计算数据立方体可以看作是方体的格62数据立方体的计算用DMQL定义和计算数据立方体definecubesales[item,city,year]:sum(sales_in_dollars)computecubesales转换为类似SQL的语句(使用一种新的操作符cubeby(Grayetal.’96))SELECTitem,city,year,SUM(amount)FROMSALESCUBEBYitem,city,year需要计算下面的聚集子集

(date,product,customer),(date,product),(date,customer),(product,customer),(date),(product),(customer)()(item)(city)()(year)(city,item)(city,year)(item,year)(city,item,year)63数据立方体的计算用DMQL定义和计算数据立方体(item)(基于ROLAP的数据立方体

计算方法(1)有效率的数据立方体计算方法基于ROLAP的立方体算法(Agarwaletal’96)基于数组的立方体算法(Zhaoetal’97)自下向上的计算方法(Bayer&Ramarkrishnan’99)基于ROLAP的立方体算法排序、散列和分组操作用于维属性,以便对相关元组重新排序和聚类在某些子聚集上分组,作为“部分分组步骤”可以由以前计算的聚集计算新的聚集,而不必由基本事实表计算64基于ROLAP的数据立方体

计算方法(1)有效率的数据立方体基于ROLAP的数据立方体计算方法(2)基于散列、排序的方法(Agarwalet.al.

VLDB’96)挑选最小的“父方体”:从以前计算的方体中挑选最小的方体计算新的方体存储计算结果:将方体计算结果存储起来,用于其他方体的计算,有利于减少系统I/O减少扫描:同时计算尽可能多的方体,减少读磁盘次数共享排序成本:当使用基于排序的计算方法时,合理分配多维立方体上的排序成本共享分割成本:当使用基于散列的计算方法时,合理分配多维立方体上的分割成本65基于ROLAP的数据立方体计算方法(2)基于散列、排序的方法数据立方体计算中的

多路数组聚集(1)将数组分割成块(可以放入内存的子方)压缩稀疏数组结构(使用chunk_id+offset寻址)通过访问立方体单元计算聚集。可以优化访问单元的次序,使得每个单元必须重复访问的次数最小化,从而减少存储访问开销和存储开销在多路数组聚集中,怎样确定立方体的最佳访问途径?AB29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3CB44285640245236206066数据立方体计算中的

多路数组聚集(1)将数组分割成块(可以放数据立方体计算中的

多路数组聚集(2)AB29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C442856402452362060B67数据立方体计算中的

多路数组聚集(2)AB293031321数据立方体计算中的

多路数组聚集(3)AB29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C442856402452362060B68数据立方体计算中的

多路数组聚集(3)AB293031321数据立方体计算中的

多路数组聚集(4)计算方法:数据立方体中各块平面必须按它们的大小递增排序和计算具体请参考P50-51例2.12主要思想:在内存中存储具有最小面积的块平面,而对于具有最大面积的块平面,每次只取其中的一块进行计算算法的局限性:只适合于具有少数维的数据立方体这种算法要计算的方体个数随维数指数增长,为了避免维增长灾难,可以尝试使用“自底向上”计算方法和冰山方计算方法69数据立方体计算中的

多路数组聚集(4)计算方法:数据立方体中索引OLAP数据:位图索引在给定的属性上进行索引属性上的每个值都有一个对应的位向量:位操作比较快速位向量的长度由基本表的记录数量决定如果基本表中给定记录的属性值为v,则在位图索引的对应行,表示v的位为1,该行的其他位均为0不适合基数较大的域70索引OLAP数据:位图索引在给定的属性上进行索引70基本表Region位图索引表Type位图索引表71基本表Region位图索引表Type位图索引表71索引OLAP数据:连接索引连接索引:JI(R-id,S-id)whereR(R-id,…)S(S-id,…)传统的索引将给定列上的值映射到具有该值的行表上必须物化JI中的关系连接,执行有很大开销的连接操作在数据仓库的星型模式中,连接索引维护维的属性值和事实表的对应行之间的关系E.g.具有维city和product的事实表salescity维的连接索引维护了city维表上的值与sales事实表中的相应元组的连接关系连接索引可以跨越多维72索引OLAP数据:连接索引连接索引:JI(R-id,S-OLAP查询的有效处理确定哪些操作应当在可利用的方体上执行这涉及将查询中的选择、投影、上卷(分组)和下钻操作转换为对应的SQL和/或OLAP操作。例如,在数据立方体上,切片(切块)=选择+投影确定相关操作应当使用哪些物化的方体MOLAP查询处理最好采用二级方法:对于稠密数组使用数组结构,对于稀疏数组使用稀疏矩阵结构和数据压缩技术。二维稠密数组可以用B树索引73OLAP查询的有效处理确定哪些操作应当在可利用的方体上执行7元数据存储元数据是关于数据的数据。它包括以下类型:数据仓库结构的描述操作元数据汇总用的算法由操作环境到数据仓库的映射关于系统性能的数据数据仓库模式、视图和源数据定义商务元数据包括商务术语和定义、数据拥有者信息和收费策略74元数据存储74数据仓库后端工具和实用程序数据提取:通常从多个异种的外部数据源收集数据数据清理:检测数据中的错误,可能是订正它们数据变换:将数据由遗产或宿主格式转换成数据仓库格式装入:排序、综合、合并、计算视图、检查整体性,并建立索引和划分刷新:传播由数据源到数据仓库的更新75数据仓库后端工具和实用程序75第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?

多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘76第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?7数据立方体发现驱动的探查假定驱动:由用户根据自己直觉去探查,搜索空间非常大发现驱动(Sarawagietal.’98)预计算的度量指出数据异常,在所有的聚集级知道用户的数据分析过程异常:数据立方体的单元值,基于某种统计模型,显著的不同于预期值可视提示(如背景色),异常指示符的计算(模型符合和计算SelfExp、InExp、PathExp度量)77数据立方体发现驱动的探查假定驱动:由用户根据自己直觉去探查,发现驱动数据立方体的例子78发现驱动数据立方体的例子78多粒度上的复杂聚集:多特征方多特征方(Ross,etal.1998):计算复杂查询,这些查询涉及多粒度上多个依赖的聚集Ex.按{item,region,month}的所有子集分组,对每组找出2001年最高价格,以及所有具有最高价格的元组的总销售额selectitem,region,month,max(price),sum(R.sales)frompurchaseswhereyear=2001cubebyitem,region,month:RsuchthatR.price=max(price)在上面的例子中,在最高价格的元组中,找出最小和最大的商品货架寿命,并在所有最高价格的元组中,找出具有最小货架寿命的元组的总销售额部分79多粒度上的复杂聚集:多特征方多特征方(Ross,eta第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?

多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘80第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?8数据仓库的使用三种数据仓库应用信息处理:支持查询和基本的统计分析,并使用交叉表、表、图表或图进行报告分析处理:支持数据仓库的多维数据分析;支持基本的OLAP操作,包括切片和切块、下钻、上卷和转轴数据挖掘从隐藏的模式中发现知识;支持关联,构造分析模型,进行分类和预测,并用可视化工具提供挖掘结果81数据仓库的使用三种数据仓库应用81从联机分析处理到联机分析挖掘(OLAM)为什么要进行联机分析挖掘?数据仓库中数据的高质量数据仓库提供集成的、一致的和清理过的数据环绕数据仓库的有价值的信息处理基础设施ODBC/OLEDB连接、Web访问和服务工具以及报表和OLAP分析工具等基于OLAP的探测式数据分析采用上卷、切片、旋转等进行挖掘数据挖掘功能的联机选择将多种数据挖掘功能集成在一起,并可灵活动态的变换挖掘的功能、方式、任务等OLAM的体系结构82从联机分析处理到联机分析挖掘(OLAM)为什么要进行联机分析一个集成的OLAM和OLAP结构数据仓库元数据MDDBOLAM引擎OLAP引擎用户图形界面API数据方API数据库API数据清理数据集成第三层OLAP/OLAM第二层多维数据库第一层数据存储第四层用户界面数据过滤和集成过滤数据库挖掘查询挖掘结果83一个集成的OLAM和OLAP结构数据仓库元数据MDDBOLA广东移动计费数据仓库及在线分析服务对历史信息数据进行分析,得出各种信息之间的相互关系,分析不同用户的行为特征,为移动决策提供数据依据。分析手段有:l

通过多维图形和报表,了解业务发展情况。l

对历史数据进行挖掘分析,发现用户的行为特征。l

根据用户的行为特征,对用户进行分类。l

根据用户对价格政策和优惠政策的行为反映,优化价格和优惠政策。84广东移动计费数据仓库及在线分析服务对历史信息数据广东移动计费数据仓库用于集中存放用户需要分析的历史数据。放在数据仓库中的数据分成两种类型:详细历史信息和统计中间结果。其中,统计中间结果是业务系统平时在运行时生成的,中间表应能尽量齐全,具有业务运行时所关心的全部信息。85广东移动计费数据仓库85深圳移动2000年7月到2001年3月的移动通话记录以及

费用,总共有约1600,000,000条记录,生成表如下:

86深圳移动2000年7月到2001年3月的移动通话记录以及

费数据仓库建立过程数据仓库结构分析原始数据分析数据仓库主题确立数据仓据数据结构设计数据的抽取,转换和导入创建OLAP维,级别,成员和层次87数据仓库建立过程数据仓库结构分析87原始数据打过价的每日通话记录通话记录特征字节的解释号码段与所属号码段的对应表区号与地区名对应表层次关系88原始数据打过价的每日通话记录88主题确立时间客户费用89主题确立时间89数据仓库结构:维,层次,成员和级别call_direction

呼叫方向维90数据仓库结构:维,层次,成员和级别call_directioCall_character级别91Call_character级别91其他的维:Caller_numberCall_typeTimeYear—Month—DayYear—WeakDurationArea_code92其他的维:Caller_number92星型模型93星型模型93度量本地话费:对应fact表中的cfee,聚集运算为SUM(求和);长途话费:对应fact表中的lfee,聚集运算为SUM(求和);时长:对应fact表中的duration_m,聚集预算为SUM(求和);呼叫次数:对cfee的计数,聚集运算为

COUNT(计数)94度量本地话费:对应fact表中的cfee,聚集运算为SUM(确定计算成员话费总计:[Measures].[本地话费]+[Measures].[长途话费];每分钟单价:[Measures].[话费总计]/[Measures].[时长];

95确定计算成员话费总计:[Measures].[本地话费]+[应用例子:AnalysisServices切片(slice):96应用例子:AnalysisServices切片(slice下钻(drill-down)97下钻(drill-down)97多维分析98多维分析98对2000年7月到2001年三月的通话时长统计。从图中我们能很直观的看到各个时间段(小时为单位)内的通话时长,并可以依次制定时间段话费优惠政策。比如0点至8点完全可以半价优惠或更多

99对2000年7月到2001年三月的通话时长统计。从图中我们能100100101101102102103103104104105105以下话费范围均为2000年7月到2001年3月的单个用户话费总额:客户群一

161.153923536347<=Measures.本地话费<=1838.80496474669,82.1220194285768<=Measures.长途话费<=2575.4551077738客户群二87.5847189603284<=Measures.本地话费<=899.21982074227,18603781756622<=Measures.长途话费<=1436.64556622122106以下话费范围均为2000年7月到2001年3月的单个用户话费客户群三169.400528456003<=Measures.本地话费<=3214.97515325114,37.5080939959757<=Measures.长途话费<=5414.72828456636客户群四8.1470778909179<=Measures.本地话费<=351.653843468224,0<=Measures.长途话费<=604.446856910594客户群五0.400000005960464<=Measures.本地话费<=95.2801868556024,0<=Measures.长途话费<=148.124025509705客户群六Measures.长途话费>17990.9940991852,Measures.本地话费>7186.59052888867107客户群三107

总结数据仓库的加载和更新

按照决策的需要组织成不同主题的数据仓库表数据抽取过程多样化数据仓库存储的技术特性决策支持的数据仓库扩展108

总结数据仓库的加载和更新108第2章 数据仓库和数据挖掘

的OLAP技术什么是数据仓库多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘109第2章 数据仓库和数据挖掘

的OLAP技术什什么是数据仓库1、需求产生DW使顾客满意,不断增加利润,提高市场份额,这些是目前商业竞争的基本目标。利用IT可以使我们获得成功。答案之一就是DW:公司的目标如何与信息系统结合;如何建立具有交叉功能的信息系统;数据的合理组织和利用。

110什么是数据仓库1、需求产生DW22、数据处理分为两大类事务处理:DB联机的日常操作,对一个或一组记录的查询和修改,为企业服务。分析型处理:用于管理人员的决策分析。例如DSS、EIS和多维分析,经常要访问大量的历史数据。1112、数据处理分为两大类33、事务处理环境不适宜DSS应

用的原因事务处理和分析处理的性能特性不同数据集成问题(DSS需要集成的数据)a.事务处理应用的分散;b.蜘蛛网问题;

c.数据不一致问题;d.外部数据和非结构化数据。

数据动态集成问题:数据必须以一定的周期进行刷新。历史数据问题。在DB中存在大量的历史数据,没有充分利用。

1123、事务处理环境不适宜DSS应

用的原因事务处理和分析DW的主要驱动力是市场竞争要求捕获和分析事务的业务数据,必须把分析型数据从事务处理环境中提取出来;DW是为了建立这种新的分析处理环境而出现的一种数据存储和组织技术。4、数据综合1134、数据综合5“数据仓库是一个面向主题的、集成的、时变的、非易失的数据集合,支持管理部门的决策过程”—W.H.Inmon什么是建立数据仓库 我们把建立数据仓库看作是构造和使用数据仓库的过程1146数据仓库的面向主题性数据仓库是面向在数据模型中已定义好的公司的主要主题领域的,典型的例子有顾客、产品、销售等数据仓库主要关注DSS分析员的数据建模与分析,而不是集中于组织机构的日常操作和事务处理数据仓库排除对于决策无用的数据,提供特定主题的简明的视图115数据仓库的面向主题性数据仓库是面向在数据模型中已定义好的公司数据仓库的集成性数据仓库是将多个异种数据源的数据集成在一起a.异种数据源包括有关系数据库、一般文件和联机事务处理记录等数据仓库使用数据清理和数据集成技术a.数据清理和数据集成技术确保多个异种数据源中命名约定、编码结构、属性度量等的一致性b.当数据从操作型环境进入到数据仓库,已经被进行过清理和转换116数据仓库的集成性数据仓库是将多个异种数据源的数据集成在一起8数据仓库的时变性数据仓库中的数据时间期限要远远长于操作型系统中的数据时间期限a.操作型系统含有“当前值”数据,时间期限一般是60-90天b.数据仓库从历史的角度提供信息,其中的数据仅仅是一系列某一时刻生成的复杂的快照,时间期限通常是5-10年数据仓库中的键码结构a.数据仓库中的关键结构,隐式或显式地包含时间元素b.操作型系统的键码结构可能不包括时间元素117数据仓库的时变性数据仓库中的数据时间期限要远远长于操作型系统数据仓库是非易失的数据仓库总是物理地、分离存放数据数据仓库中不进行操作型环境中的数据更新a.数据仓库不需要事务处理、恢复和并发控制机制b.数据仓库通常只需要两种数据访问:数据的初始化装入和数据访问118数据仓库是非易失的数据仓库总是物理地、分离存放数据10怎样建立数据仓库

把建立数据仓库看作是构造和使用数据仓库的过程主题是对应某一分析领域的分析对象DW是一个用以更好地支持企业或组织的决策分析处理的、面向主题的、集成的、不可更新的、非易失的数据集合119怎样建立数据仓库 11实现DW要做:

从不同数据来源中如何集成数据数据质量:精确和简炼数据的概括和聚集每当数据源中创建了新数据时,如何保证DW和数据源的同步更新在同一台计算机和RDB的平台上,当DW的DB和工具共享时如何保证性能

120实现DW要做:

从不同数据来源中如何集成数据1DW中的数据组织在DW中的数据分为四个级别:早期细节级、当前细节级、轻度综合级、高度综合级源数据经过综合后,首先进入当前细节级,并根据具体需要进行进一步的综合从而进入轻度综合级及至高度综合级(以DW中数据的四个基本特征为基础)121DW中的数据组织在DW中的数据分为四个级别:早期细节级、当前1221412315数据仓库主要用于集中存放用户需要分析的历史数据数据仓库的逻辑结构:

a.近期基本数据层b.历史数据层c.综合数据层(为决策服务)数据仓库的物理结构:a.星型结构(一般使用)b.雪花结构124数据仓库主要用于集中存放用户需要分析的历史数据数据仓库的逻辑数据仓库的特征面向主题集成性时变的非易失的125数据仓库的特征17数据仓库中的数据分类详细型数据过去详细数据当前详细数据汇总型数据轻度汇总数据高度汇总数据元数据126数据仓库中的数据分类详细型数据18数据仓库的主要组成部分数据源数据抽取(Extraction)、

转换(Transformation)和装载(Load)工具。数据建模工具核心仓储(CentralRepository)数据仓库的目标数据库前端数据访问和分析工具数据仓库管理工具127数据仓库的主要组成部分数据源19数据仓库的主要特点数据仓库容量可存放TB级别的数据;获得快速抽样算法生成功能强大、容易使用的、高质量的报表;实现海量数据的快速查询功能;可视化分析良好的、模块划的多维分析模型多维模型升级快128数据仓库的主要特点数据仓库容量可存放TB级别的数据;获得快速什么是OLAP基本概念a.变量

b.维c.维的层次:d.维成员e.多维数组f.数据单元(单元格)多维分析的基本分析动作①切片(slice)②切块(Dice)③旋转:改变一个报告或页面显示的维方向通过OLAP服务器,将DB中的数据抽取和转换为多维数据结构,以反映用户所能理解的企业的真实的维。129什么是OLAP基本概念21OLTP与OLAP的关系级比较OLTP面对操作人员和低层管理人员,OLAP面对的决策人员和高层管理人员。数据的特点:130OLTP与OLAP的关系级比较22OLAP产品的十二条评价准则准则1OLAP模型必须提供多维概念视图准则2透明性准则准则3存取能力准则准则4稳定的报表性能准则5客户/服务器体系结构准则6维的等同性准则准则7动态的稀疏矩阵处理准则准则8多用户支持能力准则准则9非管理的跨维操作准则10直观的数据操纵准则11灵活的报表生成准则12不受限维与聚集层次131OLAP产品的十二条评价准则准则1OLAP模型必须提供多维OLAP的三层客户/服务器132OLAP的三层客户/服务器24基于多维数据库的OLAP实现

多维数据

维的层次关系和类维类维的层次和类的区别:时间序列数据类型多维DB存储MDDB存取133基于多维数据库的OLAP实现多维数据25基于RDB的OLAP实现OLAP数据处理的一般过程:即数据装入、汇总、建索引和提供使用。OLAP的特点OLAP最重要的特点是具有多维概念视图,这也常常被称作多维数据模型MDM,把业务过程转为一个多维模型的过程称为多维建模。OLAP技术主要使用的是事实表、分维表、层次、稀疏性等概念和方法。134基于RDB的OLAP实现OLAP数据处理的一般过程:即数据装数据仓库和异种DBMS数据集成的区别传统的异种数据库的数据集成:在多个异种数据库上建立一个包装程序和一个集成程序(或中介程序)查询驱动的方法数据仓库使用高效的更新驱动方法将来自多个异种数据源的信息预先集成,并储存在数据仓库中,供直接查询和分析135数据仓库和异种DBMS数据集成的区别传统的异种数据库的数据集OLTP系统和OLAP系统的比较136OLTP系统和OLAP系统的比较28为什么需要一个分离的数据仓库?分离的主要原因是提高两个系统的性能DBMS—适用于OLTP处理:数据仓库—适用于OLAP处理:两种系统中数据的结构、内容和用法都不相同数据内容:决策支持系统需要历史数据,而操作数据库一般不维护历史数据数据的统一性:决策支持需要将来自异种数据源的数据统一(如聚集和汇总),产生高质量的集成数据数据质量:异种数据源中的数据通常具有不同的数据表示法,不同的编码机制和格式,数据仓库将其统一,能产生高质量的、纯净的集成数据137为什么需要一个分离的数据仓库?分离的主要原因是提高两个系统的第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?

多维数据模型数据仓库的系统结构数据仓库的实现数据立方体技术的进一步发展从数据仓库到数据挖掘138第2章 数据仓库和数据挖掘的OLAP技术什么是数据仓库?3由表和电子数据表到数据立方体数据仓库和OLAP工具基于多维数据模型,该模型将数据看作数据立方体形式一个数据立方体,比如商店的销售,允许以多维对数据建模和观察例如item(item_name,brand,type),time(day,week,month,quarter,year)称为维表,关联维item和

time事实表包括事实的名称或度量(比如dollars_sold),以及每个相关维表的关键字在数据仓库研究文献中,存放最低层汇总数据的方体称为基本方体。0-维方体存放最高层的汇总数据,称作顶点方体。方体的格称为数据立方体139由表和电子数据表到数据立方体数据仓库和OLAP工具基于多维数数据立方体:方体的格alltimeitemlocationsuppliertime,itemtime,locationtime,supplieritem,locationitem,supplierlocation,suppliertime,item,locationtime,item,suppliertime,location,supplieritem,location,suppliertime,item,location,supplier0-D(顶点)方体1-D方体2-D方体3-D方体4-D(基本)方体140数据立方体:方体的格alltimeitemlocations数据仓库的概念建模数据仓库的建模:按维和度量星型模式:模式图很像星星爆发,维表围绕事实表显示在射线上雪花模式:雪花模式是星型模式的变种,其中某些维表是规范化的,把数据进一步分解到附加的表中,形成类似于雪花的形状事实星座:多个事实表共享维表,这种模式可以看作星型模式集,因此也可以称为星系模式,或者事实星座141数据仓库的概念建模数据仓库的建模:按维和度量33星型模式的例子

time_keydayday_of_the_weekmonthquarteryeartime维表location_keystreetcityprovince_or_streetcountrylocation维表Sales事实表

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales各种度量item_keyitem_namebrandtypesupplier_typeitem维表branch_keybranch_namebranch_typebranch维表142星型模式的例子time_keytime维表locati雪花模式的例子time_keydayday_of_the_weekmonthquarteryeartime维表location_keystreetcity_keylocation维表Sales事实表

time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales各种度量item_keyitem_namebrandtypesupplier_keyitem维表branch_keybranch_namebranch_typebranch维表supplier_keysupplier_typesupplier维表city_keycityprovince_or_streetcountrycity维表143雪花模式的例子time_keytime维表location_事实星座的度量time_keydayday_of_the_weekmonthquarteryeartime维表location_keystreetcityprovince_or_streetcountrylocation维表Sales事实表time_key

item_key

branch_key

location_key

units_sold

dollars_sold

avg_sales各种度量item_keyitem_namebrandtypesupplier_typeitem维表branch_keybranch_namebranch_typebranch维表Shipping事实表time_key

item_key

shipper_key

from_location

to_location

dollars_cost

units_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper维表144事实星座的度量time_keytime维表location_数据挖掘查询语言DMQL立方体定义(对应事实表)definecube<cube_name>[<dimension_list>]:<measure_list>维定义(对应维表)definedimension<dimension_name>as(<attribute_or_subdimension_list>)特殊情况(共享的维表)先定义数据立方体definedimension<dimension_name>as<dimension_name_first_time>incube<cube_name_first_time>145数据挖掘查询语言DMQL立方体定义(对应事实表)37用DMQL定义星型模式definecubesales_star[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier_type)definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city,province_or_state,country)146用DMQL定义星型模式definecubesales_s用DMQL定义雪花模式definecubesales_snowflake[time,item

温馨提示

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

评论

0/150

提交评论