数据仓库和数据挖掘的OLAP技术.pptx
- 文档编号:18672644
- 上传时间:2023-08-28
- 格式:PPTX
- 页数:76
- 大小:266.45KB
数据仓库和数据挖掘的OLAP技术.pptx
《数据仓库和数据挖掘的OLAP技术.pptx》由会员分享,可在线阅读,更多相关《数据仓库和数据挖掘的OLAP技术.pptx(76页珍藏版)》请在冰点文库上搜索。
数据仓库和数据挖掘的OLAP技术数据仓库和数据挖掘的OLAP技术什么是数据仓库?
多维数据模型数据仓库的体系结构数据仓库实现数据立方体技术的进一步发展从数据仓库到数据挖掘什么是数据仓库?
数据仓库的定义很多,但却很难有一种严格的定义它是一个提供决策支持功能的数据库,它与公司的操作数据库分开维护。
为统一的历史数据分析提供坚实的平台,对信息处理提供支持“数据仓库是一个面向主题的、集成的、随时间而变化的、不容易丢失的数据集合,支持管理部门的决策过程.”W.H.Inmon(数据仓库构造方面的领头设计师)建立数据仓库(datawarehousing):
构造和使用数据仓库的过程。
数据仓库关键特征一面向主题围绕一些主题,如顾客、供应商、产品等关注决策者的数据建模与分析,而不是集中于组织机构的日常操作和事务处理。
排除对于决策无用的数据,提供特定主题的简明视图。
数据仓库关键特征二数据集成一个数据仓库是通过集成多个异种数据源来构造的。
关系数据库,一般文件,联机事务处理记录使用数据清理和数据集成技术。
确保命名约定、编码结构、属性度量等的一致性。
当数据被移到数据仓库时,它们要经过转化。
数据仓库关键特征三随时间而变化数据仓库的时间范围比操作数据库系统要长的多。
操作数据库系统:
主要保存当前数据。
数据仓库:
从历史的角度提供信息(比如过去5-10年)数据仓库中的每一个关键结构都隐式或显式地包含时间元素,而操作数据库中的关键结构可能就不包括时间元素。
数据仓库关键特征四数据不易丢失尽管数据仓库中的数据来自于操作数据库,但他们却是在物理上分离保存的。
操作数据库的更新操作不会出现在数据仓库环境下。
不需要事务处理,恢复,和并发控制等机制只需要两种数据访问:
数据的初始转载和数据访问(读操作)数据仓库与异种数据库集成传统的异种数据库集成:
在多个异种数据库上建立包装程序(wrappers)和中介程序(mediators)查询驱动方法当从客户端传过来一个查询时,首先使用元数据字典将查询转换成相应异种数据库上的查询;然后,将这些查询映射和发送到局部查询处理器缺点:
复杂的信息过虑和集成处理,竞争资源数据仓库:
更新驱动将来自多个异种源的信息预先集成,并存储在数据仓库中,供直接查询和分析高性能数据仓库与操作数据库系统操作数据库系统的主要任务是联机事务处理OLTP日常操作:
购买,库存,银行,制造,工资,注册,记帐等数据仓库的主要任务是联机分析处理OLAP数据分析和决策OLTP和OLAP的主要区别:
用户和系统的面向性:
顾客VS.市场数据内容:
当前的、详细的数据VS.历史的、汇总的数据数据库设计:
实体联系模型(ER)和面向应用的数据库设计VS.星型/雪花模型和面向主题的数据库设计视图:
当前的、企业内部的数据VS.经过演化的、集成的数据访问模式:
事务操作VS.只读查询(但很多是复杂的查询)OLTP系统和OLAP系统的比较特征特征OLTPOLAP任务特点任务特点操作处理信息处理面向面向事务分析用户用户办事员、DBA、数据库专业人员经理、主管、数据分析员功能功能日常操作长期信息分析、决策支持DB设计设计基于E-R,面向应用星型/雪花,面向主体数据数据最新的、详细的历史的、汇总的视图视图详细的、二维关系型汇总的、多维的任务单位任务单位简短的事务复杂的查询访问数据量访问数据量数十个数百万个用户数用户数数千个数百个DB规模规模100M-数GB100GB-数TB优先性优先性高性能、高可用性高灵活性、端点用户自治度量度量事务吞吐量查询吞吐量、响应时间为什么需要一个分离的数据仓库?
提高两个系统的性能DBMS是为OLTP而设计的:
存储方式,索引,并发控制,恢复数据仓库是为OLAP而设计:
复杂的OLAP查询,多维视图,汇总不同的功能和不同的数据:
历史数据:
决策支持需要历史数据,而这些数据在操作数据库中一般不会去维护数据汇总:
决策支持需要将来自异种源的数据统一(如聚集和汇总)数据质量:
不同的源使用不一致的数据表示、编码和格式,对这些数据进行有效的分析需要将他们转化后进行集成从关系表和电子表格到数据立方体数据仓库和数据仓库技术基于多维数据模型。
这个模型把数据看作是数据立方体形式。
多维数据模型围绕中心主题组织,该主题用事实表表示。
事实是数值度量的。
数据立方体允许以多维数据建模和观察。
它由维和事实定义。
维是关于一个组织想要记录的视角或观点。
每个维都有一个表与之相关联,称为维表。
事实表包括事实的名称或度量以及每个相关维表的关键字在数据仓库的研究文献中,一个n维的数据的立方体叫做基本方体。
给定一个维的集合,我们可以构造一个方体的格,每个都在不同的汇总级或不同的数据子集显示数据,方体的格称为数据立方体。
0维方体存放最高层的汇总,称作顶点方体;而存放最底层汇总的方体则称为基本方体。
教科书第31页数据立方体一个方体的格alltimeitemlocationsuppliertime,itemtime,locationtime,supplieritem,locationitem,supplierlocation,suppliertime,item,locationtime,item,suppliertime,location,supplieritem,location,suppliertime,item,location,supplier0-D(apex)cuboid1-Dcuboids2-Dcuboids3-Dcuboids4-D(base)cuboid数据仓库的概念模型最流行的数据仓库概念模型是多维数据模型。
这种模型可以以星型模式、雪花模式、或事实星座模式的形式存在。
星型模式(Starschema):
事实表在中心,周围围绕地连接着维表(每维一个),事实表含有大量数据,没有冗余。
雪花模式(Snowflakeschema):
是星型模式的变种,其中某些维表是规范化的,因而把数据进一步分解到附加表中。
结果,模式图形成类似于雪花的形状。
事实星座(Factconstellations):
多个事实表共享维表,这种模式可以看作星型模式集,因此称为星系模式(galaxyschema),或者事实星座(factconstellation)星型模式实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcitystate_or_provincecountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranch雪花模式实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcity_keylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_keyitembranch_keybranch_namebranch_typebranchsupplier_keysupplier_typesuppliercity_keycitystate_or_provincecountrycity事实星座模式实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcityprovince_or_statecountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranchShippingFactTabletime_keyitem_keyshipper_keyfrom_locationto_locationdollars_costunits_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper一种数据挖掘查询语言:
DMQLDMQL首先包括定义数据仓库和数据集市的语言原语,这包括两种原语定义:
一种是立方体定义,一种是维定义立方体定义(事实表)definecube:
维定义(维表)definedimensionas()特殊案例(共享维表的定义)第一次作为维表定义“cubedefinition”然后:
definedimensionasincube实例:
使用DMQL定义星型模式definecubesales_startime,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)实例:
使用DMQL定义雪花模式definecubesales_snowflaketime,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)度量的分类一个数据立方体的度量是一个数值函数,该函数可以对数据立方体的每一个点求值。
度量可以根据其所用的聚集函数分为三类:
分布的(distributive):
将函数用于n个聚集值得到的结果和将函数用于所有数据得到的结果一样。
比如:
count(),sum(),min(),max()等代数的(algebraic):
函数可以由一个带M个参数的代数函数计算(M为有界整数),而每个参数值都可以有一个分布的聚集函数求得。
比如:
avg(),min_N(),standard_deviation()整体的(holistic):
描述函数的子聚集所需的存储没有一个常数界。
比如:
median(),mode(),rank()概念分层:
location维的一个概念分层allEuropeNorth_AmericaMexicoCanadaSpainGermanyVancouverM.WindL.Chan.allregionofficecountryTorontoFrankfurtcity多维数据模型上的OLAP操作上卷(roll-up):
汇总数据通过一个维的概念分层向上攀升或者通过维规约下钻(drill-down):
上卷的逆操作由不太详细的数据到更详细的数据,可以通过沿维的概念分层向下或引入新的维来实现切片和切块(sliceanddice)投影和选择操作转轴(pivot)立方体的重定位,可视化,或将一个3维立方体转化维一个2维平面序列其他OLAP操作钻过(drill_across):
执行涉及多个事实表的查询钻透(drill_through):
使用关系SQL机制,钻到数据立方体的底层,到后端关系表数据仓库设计:
一个商务分析框架数据仓库设计中必须考虑的四种视图自顶向下视图允许我们选择数据仓库所需的相关信息,这些信息能够满足当前和未来商务的需求。
数据源视图揭示被操作数据库系统所捕获、存储和管理的信息数据仓库视图有事实表和维表所组成,提供存放在数据仓库内部的信息,包括预先计算的综合与技术,以及关于源、日期和源时间等信息商务查询视图从最终用户的角度透视数据仓库中的数据数据仓库的设计过程(P43)自顶向下法、自底向上法或者两者的混合方法自顶向下法:
由总体设计和规划开始(成熟)自底向上法:
以实验和原型开始(快速)从软件过程的观点瀑布式方法:
在进行下一步前,每一步都进行结构化和系统的分析螺旋式方法:
功能渐增的系统的快速产生,相继版本之间间隔很短典型的数据仓库设计过程选取待建模的商务过程选取商务过程的粒度选取用于每个事实表记录的维选取将安放在事实表中的度量三层数据仓库架构DataWarehouseExtractTransformLoadRefreshOLAP服务器AnalysisQueryReportsDataminingMonitor&IntegratorMetadata数据源前端工具ServeDataMartsOperationalDBsothersources数据仓库服务器OLAPServer三种数据仓库模型(从结构的角度)企业仓库搜集关于跨越整个组织的主题的所有信息,来自一个或多个操作的系统,跨功能的。
数据集市企业范围数据的一个子集,对于特定的客户是有用的。
其范围限于选定的主题,比如一个商场的数据集市独立的数据集市VS.非独立的数据集市(数据来自于企业数据仓库)虚拟仓库操作数据库上的一系列视图只有一些可能的汇总视图被物化数据仓库开发自顶向下开发:
一种系统的而解决方法,并能最大限度地减少集成问题。
但费用高,长时间开发,缺乏灵活性,因为整个组织的共同数据模型达到一致是困难的。
自底向上:
设计、开发、部署独立的数据集市方法提供了灵活性、低花费,并能快速回报投资。
然后,将分散的数据集市集成,形成一个一致的企业数据仓库时,可能导致问题。
数据仓库开发一个推荐的方法定义高层数据模型定义高层数据模型数据数据集市集市数据数据集市集市分布式数据分布式数据集市集市多层数据仓库多层数据仓库企业数据仓库企业数据仓库模型提炼模型提炼模型提炼模型提炼OLAP服务器类型关系OLAP服务器(ROLAP)使用关系数据库或扩展的关系数据库存放并管理数据仓库的数据,而用OLAP中间件支持其余部分包括每个DBMS后端优化,聚集导航逻辑的实现,附加的工具和服务较大的可扩展性多维OLAP服务器(MOLAP)基于数组的多维存储引擎(稀疏矩阵技术)能对预计算的汇总数据快速索引混合OLAP服务器(HOLAP)结合上述两种技术,更大的使用灵活性特殊的SQL服务器在星型和雪花模型上支持SQL查询数据仓库的实现难点海量数据快速反应OLAP服务器要在几秒内响应决策支持查询方法高效的数据立方体计算技术高效的存取方法高效的查询处理技术数据立方体的有效计算数据立方体可以被看成是一个方体的格最底层的方体是基本方体最顶端的方体(顶点)只包含一个单元的值一个n维的数据立方体,每维Li层,可能产生的方体总数是多少?
数据立方体的物化(materialization)预先计算所有方体(全物化):
需要海量存储空间,存放预先计算的方体“”不预先计算任何非基本方体(不物化),在运行时计算昂贵的多维聚集,可能很慢有选择的计算一个所有方体的适当子集(部分物化):
相应时间和存储空间的折中。
确定物化哪些方体考虑工作负荷下的查询、它们的频率和它们的开销等等)11(niiLT方体的操作DMQL中的方体定义和计算definecubesalesitem,city,year:
sum(sales_in_dollars)computecubesales上述的computecube子句可以转化为一个类似于SQL的语句SELECTitem,city,year,SUM(amount)FROMSALESCUBEBYitem,city,year需要计算以下的groupby子句(item,city,year)(item,city),(itemyear),(city,year)(item),(city),(year)()(item)(city)()(year)(city,item)(city,year)(item,year)(city,item,year)方体计算:
关系型OLAP的方法(ROLAP)方体计算的有效方法基于ROLAP的方体算法(Agarwaletal96)基于数组的算法(MOLAP)(Zhaoetal97)自底向上的计算方法(Beyer&Ramarkrishnan99)H-cubing技术(Han,Pei,Dong&Wang:
SIGMOD01)基于ROLAP的方法将排序、散列(hashing)和分组操作应用于维的属性,以便对相关元组重新排序和聚类“”在某些子聚集上分组,作为部分分组步骤。
可以由以前计算的聚集计算新的聚集,而不必有基本事实表计算方体计算的多路数组聚集方法
(1)将数组分成块(chunk,一个可以装入内存的小子方)压缩的稀疏数组寻址:
(chunk_id,offset)通过访问立方体单元,计算聚集。
可以优化访问单元组的次序,使得每个单元被访问的次数最小化,从而减少内存访问和磁盘I/O的开销。
A(month)B29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C(item)B(city)442856402452362060哪个是多路数组哪个是多路数组聚集的最佳遍历聚集的最佳遍历次序?
次序?
方体计算的多路数组聚集方法
(2)A(month)40B29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C(item)4000442856402452362060B(city)400方体计算的多路数组聚集方法(3)AB29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C442856402452362060B方体计算的多路数组聚集方法(4)方法:
各平面要按他们大小的升序排列进行排序和计算详见书P50例2.12思想:
将最小的平面放在内存中,对最大的平面每次只是取并计算一块这种方法的限制:
只有在维数比较小的情况下,效果才比较理想(要计算的立方体随维数指数增长)“”“”如果维的数目比较多,可以考虑使用自底向上的计算或者时冰山方体计算元数据存储在数据仓库中,元数据就是定义数据仓库对象的数据。
关于数据的数据。
有以下几种:
数据仓库结构的描述仓库模式、视图、维、层次结构、导出数据的定义,以及数据集市的位置和内容操作元数据包括数据血统(datalineage)、数据类别(currencyofdata),以及监视信息汇总用的算法:
包括度量和维定义算法,数据粒度、分割、主题领域、聚集、汇总、预定义的查询和报告由操作环境到数据仓库的映射:
数据提取、清理、转换规则、剪裁规则、安全等关于系统性能的数据索引,profiles,数据刷新、更新或复制事件的调度和定时商务元数据商务术语和定义、数据拥有者信息、收费政策等元数据的使用元数据与数据一起,构成了数据仓库中的数据模型,元数据所描述的更多的是这个模型的结构方面的信息。
在数据仓库中,元数据的主要用途包括:
用作目录,帮助决策支持系统分析者对数据仓库的内容定义作为数据仓库和操作性数据库之间进行数据转换时的映射标准用于指导当前细节数据和稍加综合的数据之间的汇总算法,指导稍加综合的数据和高度综合的数据之间的汇总算法。
数据仓库后端工具和使用程序用于加载和刷新它的数据数据提取:
从多个外部的异构数据源收集数据数据清理检测数据种的错误并作可能的订正数据变换将数据由历史或主机的格式转化为数据仓库的格式装载排序、汇总、合并、计算视图,检查完整性,并建立索引和分区刷新将数据源的更新传播到数据仓库中数据仓库的应用数据仓库的三种应用信息处理支持查询和基本的统计分析,并使用交叉表、表、图标和图进行报表处理分析处理对数据仓库中的数据进行多维数据分析支持基本的OLAP操作,切块、切片、上卷、下钻、转轴等数据挖掘从隐藏模式中发现知识支持关联分析,构建分析性模型,分类和预测,并用可视化工具呈现挖掘的结果三种应用间的差别(P62)从联机分析处理到联机分析挖掘为什么要联机分析挖掘(P63)数据仓库中有高质量的数据数据仓库中存放着整合的、一致的、清理过的数据围绕数据仓库的信息处理结构存取、集成、合并多个异种数据库的转换,ODBC/OLEDB连接,Web访问和访问工具等基于OLAP的探测式数据分析使用上卷、下钻、切片、转轴等技术进行数据挖掘数据挖掘功能的联机选择多种数据挖掘功能、算法和任务的整合联机分析挖掘的体系结构数据仓库数据仓库元数据元数据多维数多维数据库据库OLAM引擎引擎OLAP引擎引擎用户图形界面用户图形界面API数据方体数据方体API数据库数据库API数据清理数据清理数据集成数据集成Layer3OLAP/OLAMLayer2多维数据库多维数据库Layer1数据存储数据存储Layer4用户界面用户界面数据的过滤、集成数据的过滤、集成过滤过滤数据库数据库基于约束的基于约束的数据挖掘数据挖掘挖掘结果挖掘结果数据预处理主要内容为什么要预处理数据?
数据清理数据集成和变换数据归约为什么要预处理数据?
“”现实世界的数据是肮脏的不完整的:
有些感兴趣的属性缺少属性值,或仅包含聚集数据“”含噪声的:
包含错误或者孤立点不一致的:
在编码或者命名上存在差异没有高质量的数据,就没有高质量的挖掘结果高质量的决策必须依赖高质量的数据数据仓库需要对高质量的数据进行一致地集成数据质量的多维度量一个广为认可的多维度量观点:
精确度完整度一致性合乎时机可信度附加价值可访问性跟数据本身的含义相关的内在的、上下文的、表象的数据预处理的主要任务数据清理填写空缺的值,平滑噪声数据,识别、删除孤立点,解决不一致性数据集成集成多个数据库、数据立方体或文件数据变换规范化和聚集数据归约得到数据集的压缩表示,它小得多,但可以得到相同或相近的结果数据离散化数据归约的一部分,通过概念分层和数据的离散化来规约数据,对数字型数据特别重要数据预处理的形式空缺值数据并不总是完整的例如:
数据库表中,很多条记录的对应字段没有相应值,比如销售表中的顾客收入引起空缺值的原因设备异常与其他已有数据不一致而被删除因为误解而没有被输入的数据在输入时,有些数据应为得不到重视而没有被输入对数据的改变没有进行日志记载空缺值
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据仓库 数据 挖掘 OLAP 技术