1第3讲数据仓库中的数据及组织2数据仓库产生的原因数据处理的类型操作型处理(OLTP):数据的收集、整理、存储、查询和增、删、改操作。分析型处理(OLAP):数据的再加工,往往要访问大量的历史数据,进行复杂的统计分析。3数据仓库的四个基本特征:数据仓库的数据是面向主题的(SubjectOriented);数据仓库的数据时集成的(Integrate);数据仓库的数据不可更新(Non-Volatile);数据仓库的数据时随时间不断变化(TimeVariant)的。数据仓库的基本概念4数据仓库的体系结构5数据库和数据仓库两层体系结构(DB-DW)并不能涵盖企业所有的数据处理要求。某些应用既不是纯粹的联机事务处理,又不是高层决策分析。什么是ODS6ODS的定义及特点定义:是用于支持企业日常的全局应用的数据集合。ODS中的数据具有4各基本特征:面向主题的、集成的、可更新的、数据是当前或接近当前的。ODS中只存放当前或接近当前的数据,并且可以进行联机修改,包括增、删、改等操作。7DW与ODS面向不同的用户、不同的需求,都有其不可替代的作用,彼此间不是相互包含的,同时两者又可以相互结合、相互补充。DBDBDBODSDW应用操作型环境分析型环境三层体系结构83.1数据仓库中的数据组织3.2数据仓库中数据的追加3.3数据仓库中的元数据9数据仓库中存储两类数据:业务数据和元数据3.1数据仓库中的数据组织10数据仓库的体系结构11数据仓库中存储的数据3.1数据仓库中的数据组织后备数据后备数据后备数据高度综合级轻度综合级当前细节级早期细节级元数据13数据组织的实例3.1数据仓库中的数据组织数据仓库层后备数据后备数据后备数据高度综合级轻度综合级当前细节级早期细节级2015每“月”电话呼叫情况信息2015每“天”电话呼叫情况信息2015每个电话呼叫情况信息2010~2014电话呼叫明细情况信息141)数据粒度数据粒度是数据仓库的重要概念。存在两种形式,形式一:粒度是对数据仓库中数据的综合程度高低的一个度量。粒度越小,细节程度越高,综合程度越低。15不同的情况组织数据的粒度会不同。如:电信通话细节数据:记录每一次通话情况。轻度综合数据:记录顾客每天的通话情况。高度综合数据:记录顾客每月的通话情况。1)数据粒度16超市购物细节数据:记录顾客每一次购物细节。轻度综合数据:记录每个顾客每次的购物金额,或每种商品每一天的销售数据。高度综合数据:记录每个顾客每月或每年的购物金额,或每种商品每月或每年的销售数据。1)数据粒度171)数据粒度数据粒度的确定是业务分析、硬件、软件的一个折中。在数据仓库中多重粒度是必不可少的181)数据粒度数据粒度是数据仓库的重要概念。存在两种形式,形式二:样本数据库,其粒度是根据采样率的高低来划分的。盖洛普民意测验是一种观点的民意测验,其特点是用简单的随机取样法并且试图把偏差度保持在最低。192)数据分割数据分割是数据仓库中的另一个重要概念。它是指将数据分布到各自的物理单元中,以便能分别独立处理,提高数据分析效率。数据分割后的数据单元称为分片。20MySQLMySQLMySQLMySQLMySQLMySQLMySQLMySQLMySQLMySQLMySQLMySQLMySQL212)数据分割数据分割的标准可以根据实际情况来确定,通常选择:按日期、地域、业务领域等来进行。222)数据分割数据分割的方法垂直分割:垂直分割就是把一个表垂直分成两部分。水平分割:水平分割就是把表按行分成两部分。23AppIDMEMBE_IDINFO1pavarotti17…11pavarotti17…MySQLIDMEMBE_IDINFO4test1234…5test1234…IDMEMBE_IDINFO3abcd…9abcd…20abcd…MySQLMySQLCobarProxyAppAppAppAppAppAppApp2)数据分割242)数据分割一个简单的分割例子。年份健康保险生命保险事故保险2008分片1分片2分片32009分片4分片5分片62010分片7分片8分片9253.1数据仓库中的数据组织3.2数据仓库中数据的追加3.3数据仓库中的元数据263.2数据仓库中数据的追加当数据仓库的数据初装完成以后,再向数据仓库输入(导入)数据的过程称为数据追加。如何能够确切地感知究竟哪些数据是在上一次追加过程以后新生成的,这项工作称为变化数据的捕捉。27需要对源数据库的数据模式加以修改,加上时标字段。对新插入或更新的数据记录,在记录中加更新时的时标。1)时标法28由应用生成的文件,用来记录应用所改变的数据内容。在要被抽取的源表上建立插入、修改、删除3个触发器,每当源表中的数据发生变化,相应的触发器将变化的数据写入一个增量日志表。2)DELTA文件29在上次抽取数据库数据到数据仓库之后及本次将抽取数据库数据之前,对数据库分别做一次快照,然后比较两幅快照的不同。缺点:需要占用大量资源,影响系统性能。3)前后快照文件的方法30通过分析数据库自身的日志来判断变化的数据。优点:提取的变化数据只局限于日志文件,不需扫描整个数据库。4)日志文件313.1数据仓库中的数据组织3.2数据仓库中数据的追加3.3数据仓库中的元数据323.3数据仓库中的元数据传统数据库中为了说明数据引入了数据字典的概念。数据字典是描述数据的数据。333.3.1元数据的定义元数据:是用来描述数据的数据。它描述和定位数据组件、它们的来源及它们在数据仓库进程中的活动;关于数据和操作的相关描述(输入、计算和输出)。343.3.1元数据的定义其主要目标是提供数据资源的全面指南,使得数据仓库管理员和开发人员可以方便地了解数据仓库中有什么数据?数据在什么地方?它们来源于哪里,以及数据仓库系统中是如何利用这些数据?如何管理这些数据?35与元数据产生、存储有关的工具:数据抽取工具:完成ETL操作。前端展现工具:实现把关系表映射成与业务相关的事实表和维表来支持多维业务视图,进行多维分析。建模工具:提供更高层次的、与特定业务相关的语义。元数据存储工具:用于将元数据存储在专门的数据库中。3.3.1元数据的定义363.3.2元数据的分类元数据可以按多种方式分类:按用户分类按功能分类371)按使用元数据的用户分类按使用元数据的用户分类:技术元数据:是关于数据仓库系统技术细节的描述数据,是数据仓库开发人员和管理人员需要使用的重要信息。主要包括数据仓库结构的描述等。业务元数据:从业务角度描述数据仓库中的数据,它提供了介于使用者和实际系统之间的语义层定义,使得不懂计算机技术的业务人员也能够理解数据仓库中的数据。383.按功能分类按功能分类:数据源元数据ETL规则元数据ODS元数据和DW元数据报表元数据接口数据文件格式元数据商业元数据1)按使用元数据的用户分类393.3.3元数据管理的标准化元数据在数据仓库系统中占有十分重要的地位,但是目前工业界的各种数据仓库管理和分析工具却常常使用不同的元数据标准,使得元数据管理、不同系统之间的迁移、数据交换变得困难。迫切需要建立一种统一的标准,使得不同数据仓库和商务智能系统之间可以相互交换元数据。从而产生了基于元数据联盟(MetaDataCoalition,MDC)和OMG组织的相关元数据标准。401)MDC的OIM标准背景MDC成立于1995年。致力于建立于厂商无关、不依赖于具体技术的企业元数据管理标准的非营利技术联盟。有150多个会员。提出了开放信息模型(OpenInformationModel,OIM)。1999年7月接受微软的建议,将OIM作为元数据标准。411)MDC的OIM标准OIM标准的目的通过公共的元数据信息来支持不同工具和系统之间数据的共享和重用。它涉及信息系统的各个阶段。采用UML描述。422)OMG组织的CWM标准背景对象管理组织(英文ObjectManagementGroup,缩写为OMG),是一个国际协会,开始的目的是为分布式面向对象系统建立标准,现在致力于建立对程序、系统和业务流程的建模标准,以及基于模型的标准。有500多个会员。提出了公共仓库元模型(CommonWarehouseMetamodel,CWM)。432)OMG组织的CWM标准CWM标准的目的异构环境下,帮助不同的数据仓库工具、平台和元数据知识库进行元数据交换。443)CWM标准与OIM标准之间的关系CWM专门为数据仓库元数据而制定的一套标准,只限于数据仓库领域。OIM包括:分析与设计模型、对象与组件、数据库与数据仓库、商业工程、知识管理等5个领域。目前MDC与OMG组织已经合并,今后所有的工具都将遵循统一的CWM标准。