数据仓库和数据挖掘的OLAP技术(武汉大学-李春葆).pptx
- 文档编号:15122956
- 上传时间:2023-07-01
- 格式:PPTX
- 页数:106
- 大小:2.03MB
数据仓库和数据挖掘的OLAP技术(武汉大学-李春葆).pptx
《数据仓库和数据挖掘的OLAP技术(武汉大学-李春葆).pptx》由会员分享,可在线阅读,更多相关《数据仓库和数据挖掘的OLAP技术(武汉大学-李春葆).pptx(106页珍藏版)》请在冰点文库上搜索。
第2章数据仓库和数据挖掘的OLAP技术,数据仓库数据挖掘的有效平台。
数据仓库中的数据清理和数据集成,是数据挖掘的重要数据预处理步骤。
数据仓库提供OLAP工具,可用于不同粒度的数据分析。
很多数据挖掘功能都可以和OLAP操作集成,以提供不同概念层上的知识发现。
分类预测关联聚集,2.1什么是数据仓库,20世纪80年代中期,“数据仓库”这个名词首次出现在号称“数据仓库之父”W.H.Inmon的BuildingDataWarehouse一书中。
在该书中,W.H.Inmon把数据仓库定义为“一个面向主题的、集成的、稳定的、随时间变化的数据的集合,以用于支持管理决策过程”。
2.1.1数据仓库的定义,数据仓库还有许多不同的定义,如:
“数据仓库是融合方法、技术和工具以在完整的平台上将数据提交给终端用户的一种手段”。
“数据仓库是对分布在企业内部各处的业务数据的整合、加工和分析的过程”。
“数据仓库是一种具有集成性、稳定性和提供决策支持的处理”。
“为查询和分析(不是事务处理)而设计的关系数据库”,在众多的数据仓库定义中,公认的仍然是W.H.Inmon的定义,该定义指出了数据仓库面向主题、集成、稳定、随时间变化这4个最重要的特征。
(1)面向主题主题就是在一个较高的管理层次上对信息系统的数据按照某一具体的管理对象进行综合、归类所形成的分析对象。
如顾客、供应商、产品和销售组织等。
从数据组织的角度看,主题是一些数据集合,这些数据集合对分析对象作了比较完整的、一致的描述,这种描述不仅涉及到数据自身,而且涉及到数据之间的关系。
面向主题的数据组织方式,就是在较高层次上对分析对象的数据的一个完整、一致的描述,能完整、统一地刻画各个分析对象所涉及的企业的各项数据,以及数据之间的联系。
(2)集成数据仓库中存储的数据一般从企业原来已建立的数据库系统中提取出来,但并不是原有数据的简单拷贝,而是经过了抽取、筛选、清理、综合等工作。
这是因为:
1)原有数据库系统记录的是每一项业务处理的流水帐,这些数据不适合于分析处理。
在进入数据仓库之前必须经过综合、计算,同时抛弃一些分析处理不需要的数据项,必要时还要增加一些可能涉及的外部数据。
2)数据仓库每一个主题所对应的源数据在源分散数据库中有许多重复或不一致之处,必须将这些数据转换成全局统一的定义,消除不一致和错误之处,以保证数据的质量;显然,对不准确,甚至不正确的数据分析得出的结果将不能用于指导企业做出科学的决策。
3)源数据加载到数据仓库后,还要根据决策分析的需要对这些数据进行概括、聚集处理。
(3)稳定性即非易失的业务系统的数据库中一般只存储短期数据,因此在数据库系统中数据是不稳定的,它记录的是系统中数据变化的瞬态。
但对于决策分析而言,历史数据是相当重要的,许多分析方法必须以大量的历史数据为依托。
没有大量历史数据的支持是难以进行企业的决策分析的,因此数据仓库中的数据大多表示过去某一时刻的数据,主要用于查询、分析,不像业务系统中的数据库那样,要经常进行修改、添加,除非数据仓库中的数据是错误的。
(4)随时间而变化即时变的数据仓库中数据是批量载入的,是稳定的,这使得数据仓库中的数据总是拥有时间维度。
从这个角度,数据仓库实际是记录了系统的各个瞬态,并通过将各个瞬态连接起来形成动画,从而在数据分析的时候再现系统运动的全过程。
数据批量载入(提取)的周期实际上决定了动画间隔的时间,数据提取的周期短,则动画的速度快。
2.1.2数据仓库与操作数据库系统的区别,操作数据库系统的主要任务是联机事务处理OLTP日常操作:
购买,库存,银行,制造,工资,注册,记帐等。
数据仓库的主要任务是联机分析处理OLAP数据分析和决策支持,支持以不同的形式显示数据以满足不同的用户需要。
OLTP和OLAP的比较(1/3),用户和系统的面向性面向顾客(事务)面向市场(分析)。
数据内容当前的、详细的数据历史的、汇总的数据。
数据库设计实体联系模型(ER)和面向应用的数据库设计星型/雪花模型和面向主题的数据库设计。
OLTP和OLAP的比较
(2),数据视图当前的、企业内部的数据经过演化的、集成的数据。
访问模式事务操作只读查询(但很多是复杂的查询)任务单位简短的事务复杂的查询。
访问数据量数十个数百万个。
OLTP和OLAP的比较(3),用户数数千个数百个。
数据库规模100M数GB100GB数TB。
设计优先性高性能、高可用性高灵活性、端点用户自治。
度量事务吞吐量查询吞吐量、响应时间。
2.1.3为什么需要一个分离的数据仓库?
提高两个系统的性能DBMS是为OLTP而设计的:
存储方式、索引、并发控制和恢复。
数据仓库是为OLAP而设计:
复杂的OLAP查询、多维视图和汇总。
不同的功能和不同的数据:
历史数据:
决策支持需要历史数据,而这些数据在操作数据库中一般不会去维护。
数据汇总:
决策支持需要将来自异种源的数据统一(如聚集和汇总)。
数据质量:
不同的源使用不一致的数据表示、编码和格式,对这些数据进行有效的分析需要将他们转化后进行集成。
2.1.4数据仓库中的关键名词,1.ETL(Extract/Transformation/Load)数据抽取、转换、加载工具ETL工具就是进行数据的抽取、转换和加载工具。
(1)数据提取(DataExtract)从业务数据库只需提取出系统分析必需的那一部分数据。
例如,某超市确定以分析客户的购买行为为主题建立数据仓库,则我们只需将与客户购买行为相关的数据提取出来,而超市服务员工的数据就没有必要放进数据仓库。
现有的数据仓库产品几乎都提供各种关系型数据接口,提供提取引擎,从关系型数据中提取数据。
(2)数据转换(DataTransform)由于业务系统可能使用不同的数据库厂商的产品,比如IBMDB2、Oracle、Informix、Sybase、NCRTeradata、SQLServer等,各种数据库产品提供的数据类型可能不同,因此需要将不同格式的数据转换成统一的数据格式。
如时间格式“年/月/日”,“月/日/年”、“日-月-年”的不一致问题等。
(3)数据清洗(DataClean)所谓“清洗”就是将错误的、不一致的数据在进入数据仓库之前予以更正或删除,以免影响决策支持系统决策的正确性。
(4)数据加载(DataLoad)数据加载部件负责将数据按照物理数据模型定义的表结构装入数据仓库,包括清空数据域、填充空格、有效性检查等步骤。
2.元数据(MetaData)“什么是元数据?
”元数据是描述数据的数据。
在数据仓库中,元数据是定义数据仓库对象的数据。
元数据包括相应数据仓库的数据名和定义、数据提取操作时被提取数据的时间和地点以及数据清理或数据集成过程添加的字段等。
它提供了有关数据的环境,用于构造、维持、管理、和使用数据仓库,在数据仓库中尤为重要。
CREATETABLEstudentnoint;namechar(10);sexchar
(2);classchar(8);,数据,数据的数据:
元数据,3.数据集市(DataMarket)数据仓库中存放的是整个企业的信息,并且数据是按照不同主题来组织的。
比如市场发展规律的分析主题主要由市场部门的人员使用,我们可以在逻辑上或者物理上将这部分数据分离出来,当市场部门人员需要信息时,不需要到数据仓库的巨量数据中检索,而只需在相应的部门数据上进行分析,因此从效率和处理速度的角度出发,这种划分是合算的。
这种面向企业中的某个部门(主题)而在逻辑上或物理上划分出来的数据仓库中的数据子集称为数据集市。
换句话说,数据集市包含了用于特殊目的数据仓库的部分数据。
数据仓库面向整个企业,而数据集市则是面向企业中的某个部门。
典型示例是销售部门、库存和发货部门、财务部门和高级管理部门等的数据集市。
数据仓库中存放了企业的整体信息,而数据集市只存放了某个主题需要的信息,其目的是减少数据处理量,使信息的利用更快捷、灵活。
4.OLAPOLAP(On-lineAnalyticalProcessing,在线分析处理或联机分析处理)就是一个应用广泛的数据仓库使用技术。
它可以根据分析人员的要求,迅速灵活地对大量的数据进行复杂的查询处理,并以直观的容易理解的形式将查询结果提供给各种决策人员,使他们能够迅速准确地掌握企业的运营情况,了解市场的需求。
2.2多维数据模型,2.2.1由表到数据立方体,数据仓库和OLAP工具基于多维数据模型。
在多维数据模型中,数据以数据立方体(datacube)的形式存在。
数据立方体允许以多维数据建模和观察。
它由维和事实定义。
维是人们观察数据的特定角度,是考虑问题时的一类属性。
属性的集合构成一个维(如时间维、机构维等)。
维分层:
同一维度还可以在细节程度不同的各个描述方面(如时间维可包含年、季度、月份和日期等)。
维属性:
维的一个取值,是数据项在某维中位置的描述(如2013年11月2日在时间维上位置的描述)。
每个维都有一个表与之相关联,称为维表。
一个数据立方体:
多维数据模型围绕中心主题组织,该主题用事实表表示。
事实表包括事实的名称或度量以及每个相关维表的关键字。
事实指的是一些数字度量。
学生,课程,分数,1001,2001,89,1002,2002,83,1005,2004,90,学号,姓名,班号,1,张三,1201,学生,1001,课程,编号,名称,2001,1,C+,学生维表,成绩事实表,课程维表,OLTP系统是为了快速回答简单查询,而不是为了存储分析趋势的历史数据而创建的。
一般的OLTP提供了大量的原始数据,这些数据不易被分析。
查询某人买房记录。
查询某房的价值。
一个英国房屋销售系统:
两个系统数据组织模式比较示例1,来源于事务型的数据库,如采用关系型数据库进行数据存储,数据仓库需要回答更复杂的查询,而不仅仅是一些像“英国主要城市的商品平均销售价格是多少”之类的简单聚集数据查询。
数据仓库需要回答的查询类型可以是简单的查询,也可以是高度复杂的,且还与终端用户使用的查询工具相关。
2008年第三季度,整个英格兰的总收入是多少?
2007年英国每一类房产销售的总收入是多少?
2008年租借房产业务中每个城市哪个地域最受欢迎?
与过去的两年相比有何不同?
每个分支机构本月的房产销售月收入是多少,并与刚过去的12个月相比较。
如果对于10万英镑以上的房产,法定价格上升3.5%而政府税收下降1.5%,对英国不同区域的销售会产生什么影响?
在英国主要城市中,哪种类型的房产销售价格高于平均房产销售价格?
这与人口统计数据有何联系?
英国房屋销售数据仓库系统:
来源于已处理的或汇总的数据,要预先采用数据结构如多维模型存放这些汇总的数据。
两个系统数据组织模式比较示例2,数据库系统,面向“商品”、“供应商”和“顾客”的数据仓库系统,来源于的前面的多个表的数据,从上述实例,不难看出:
在从面向应用到面向主题的转变过程中,丢弃了原来有的但不必要的、不适于分析的信息;在原有的数据库模式中,有关商品的信息分散在各个子系统之中;面向主题的数据组织方式所强调的就是要形成关于主题一致的信息集合;不同主题之间有重叠内容。
2.2.2多维数据模型,time_keydayday_of_the_weekmonthquarteryear,time维表,location_keystreetcitystate_or_provincecountry,location维表,Sales事实表,time_key,item_key,branch_key,location_key,units_sold,dollars_sold,item_keyitem_namebrandtypesupplier_type,item维表,branch_keybranch_namebranch_type,branch维表,数据仓库:
事实表维表,度量,在数据仓库中,数据立方体是n-D的(n维)(关系表和电子表格是几维的?
)多维数据模型为不同角度上的数据建模和观察提供了一个良好的基础。
示例AllElectronics的销售数据按维time,item的2-D视图。
location“Vancouver“(温哥华),item(类型),time(季度)家庭娱乐计算机电话安全,Q160582514400Q268095231512Q3812102330501Q4927103838580,AllElectronics的销售数据按维time,item和location的3-D视图。
location“Chicage”item,time家庭娱乐计算机电话安全,Q185488289623Q294389064698Q3103292459789Q4112999263870,location“NewYork”item,time家庭娱乐计算机电话安全,Q1108796838623Q294389064698Q3103292459789Q4112999263870,.,AllElectronics的销售数据按维time、item和location的3-D视图的3-D数据立方体表示。
销售数据的4-D立方体表示。
4维分别是time、item、location和supplier。
一个n维的数据的立方体叫做基本立方体。
给定一个维的集合,我们可以构造一个立方体的格,每个都在不同的汇总级或不同的数据子集显示数据,立方体的格称为数据立方体。
0维立方体存放最高层的汇总,称作顶点立方体;而存放最底层汇总的立方体则称为基本立方体。
数据立方体格,all,time,item,location,supplier,time,item,time,location,time,supplier,item,location,item,supplier,location,supplier,time,item,location,time,item,supplier,time,location,supplier,item,location,supplier,time,item,location,supplier,0维顶点立方体,1维立方体,2维立方体,3维立方体,4维基本立方体,i-1维立方体,i维立方体,上卷,下钻,i越大,数据越细,2.2.3数据仓库的概念模型,最流行的数据仓库概念模型是多维数据模型。
这种模型可以以星型模式、雪花模式、或事实星座模式的形式存在。
星型模式(Starschema):
事实表在中心,周围围绕地连接着维表(每维一个),事实表含有大量数据,没有冗余。
1.星型模式,星型模式实例,sales事实表,time_key,item_key,branch_key,location_key,units_sold,dollars_sold,维表,度量,维表,维表,维表,雪花模式(Snowflakeschema):
是星型模式的变种,其中某些维表是规范化的,因而把数据进一步分解到附加表中。
结果,模式图形成类似于雪花的形状。
2.雪花模式,雪花模式实例,sales事实表,time_key,item_key,branch_key,location_key,units_sold,dollars_sold,星型模式,雪花模式,维表规格化,维表,度量,维表,维表,维表,维表,维表,事实星座(Factconstellations):
多个事实表共享维表,这种模式可以看作星型模式集,因此称为星系模式(galaxyschema),或者事实星座(factconstellation)。
2.事实星座模式,事实星座模式实例,sales事实表,time_key,item_key,branch_key,location_key,units_sold,dollars_sold,航运事实表,time_key,item_key,shipper_key,from_location,to_location,dollars_cost,units_shipped,星型/雪花模式,事实模式,多个事实表共享维表,度量,维表,维表,维表,维表,维表,2.2.4一种数据仓库查询语言:
DMQL,DMQL首先包括定义数据仓库和数据集市的语言原语,这包括两种原语定义:
一种是立方体定义,一种是维定义立方体定义(事实表)definecube:
维定义(维表)definedimensionas(),实例:
使用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),星型模式实例,sales事实表,time_key,item_key,branch_key,location_key,units_sold,dollars_sold,维表,度量,实例:
使用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),雪花模式实例,sales事实表,time_key,item_key,branch_key,location_key,units_sold,dollars_sold,星型模式,雪花模式,维表规格化,维表,度量,实例:
使用DMQL定义事实星座模式,definecubesalestime,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)definecubeshippingtime,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_locationaslocationincubesales,事实星座模式实例,sales事实表,time_key,item_key,branch_key,location_key,units_sold,dollars_sold,航运事实表,time_key,item_key,shipper_key,from_location,to_location,dollars_cost,units_shipped,星型/雪花模式,事实模式,多个事实表共享维表,维表,度量,2.2.5度量的分类,一个数据立方体的度量是一个数值函数,该函数可以对数据立方体的每一个点求值。
度量可以根据其所用的聚集函数分为三类:
分布的:
将函数用于n个聚集值得到的结果和将函数用于所有数据得到的结果一样。
比如:
count(),sum(),min(),max()等代数的:
函数可以由一个带M个参数的代数函数计算(M为有界整数),而每个参数值都可以由一个分布的聚集函数求得。
比如:
avg(),min_N(),standard_deviation()整体的:
描述函数的子聚集所需的存储没有一个常数界。
比如:
median(),mode(),rank(),2.2.6概念分层,一个概念分层(concepthierarchy)定义一个映射序列,将低层概念映射到更一般的高层概念例如表示location的概念:
杭州浙江中国亚洲。
概念分层允许我们在各种抽象级审查和处理数据。
概念分层可以由系统用户、领域专家、知识工程师人工地提供,也可以根据数据分布的统计分析自动地产生。
概念分层:
location维的一个概念分层,all,Europe,North_America,Mexico,Canada,Spain,Germany,Vancouver,M.Wind,L.Chan,.,.,.,.,.,.,all,region,office,country,Toronto,Frankfurt,city,许多概念分层的定义隐含在数据库的模式中。
比如:
location维的定义,officecitycountryregion;这些属性按一个全序相关,形成一个层次结构:
year,day,quarter,month,week,维的属性也可以组成一个偏序,形成一个格:
price属性上的概念分层,概念层次是一个偏序集(H,),其中,H是概念的一个有限集,是关于H的一个偏序。
年,月,季度,日,星期,概念分层使用,概念分层为不同级别上的数据汇总提供了一个良好的基础综合概念分层和多维数据模型的潜力,可以对数据获得更深入的洞察力通过在多维数据模型中,在不同的维上定义概念分层,使得用户在不同的维上从不同的层次对数据进行观察成为可能。
多维数据模型(数据立方体)使得从不同的角度对数据进行观察成为可能,而概念分层则提供了从不同层次对数据进行观察的能力;结合这两者的特征,我们可以在多维数据模型上定义各种OLAP操作,为用户从不同角度不同层次观察数据提供了灵活性。
2.2.7多维数据模型上的OLAP操作,上卷(roll-up):
汇总数据通过一个维
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据仓库 数据 挖掘 OLAP 技术 武汉大学 李春葆