《数据仓库基本原理.ppt》由会员分享,可在线阅读,更多相关《数据仓库基本原理.ppt(131页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第二章第二章 数据仓库基本原理数据仓库基本原理第第2章章 数据仓库的基本原理数据仓库的基本原理 2.1数据仓库的体系结构数据仓库的体系结构2.1.1数据仓库的体系结构数据仓库的体系结构 数数据据仓仓库库的的体体系系结结构构可可以以用用图图2-1来来表表示示。由由于于数数据据库库和和数数据据仓仓库库应应用用的的出出发发点点不不同同,数数据据仓仓库库将将独独立立于于业业务务数数据据库库系系统统,但但是是数数据据仓仓库库与与业业务务数数据据库库系系统统息息息息相相关关。数数据据仓仓库库不不是是简简单单的的对对数数据据进进行行存存储储,而而是对数据进行是对数据进行“再组织再组织”。2.1.1 数据仓库
2、的体系结构数据仓库的体系结构2.1.2 数据仓库的关键名词数据仓库的关键名词下下面面我我们们沿沿着着数数据据的的流流向向详详细细说说明明数数据据在在数数据仓库处理的过程,以及一些关键名词。据仓库处理的过程,以及一些关键名词。1.数据提取(数据提取(DataExtraction)从从数数据据仓仓库库的的角角度度来来看看,并并不不是是业业务务数数据据库库中中的的所所有有数数据据都都是是决决策策支支持持所所必必需需的的。通通常常,数数据据仓仓库库按按照照分分析析的的主主题题来来组组织织数数据据,我我们们只只需需要要提提取取出出系系统统分分析析必必需需的的那那一一部部分分数数据据。例例如如,某某超超市
3、市确确定定以以分分析析客客户户的的购购买买行行为为为为主主题题建建立立数数据据仓仓库库,则则我我们们只只需需将将同同客客户户购购买买行行为为相相关关的的数数据据提提取取出出来来,而而超超市市服服务务员员工工的的数数据据就就没没有有必必要要放放进数据仓库。进数据仓库。现有的数据仓库产品几乎都提供各种关系型现有的数据仓库产品几乎都提供各种关系型数据接口,从关系型数据中提取数据。数据接口,从关系型数据中提取数据。2.1.2 数据仓库的关键名词数据仓库的关键名词2.数据清洗(数据清洗(DataCleaning)由由于于企企业业常常常常为为不不同同的的应应用用对对象象建建立立不不同同的的业业务务数数据据
4、库库,比比如如一一个个电电信信运运营营公公司司拥拥有有计计费费数数据据库库、账账务务数数据据库库、客客户户数数据据库库、客客户户投投诉诉数数据据库库等等业业务务系系统统,这这些些业业务务系系统统中中可可能能包包含含重重复复的的信信息息,比比如如客客户户数数据据库库中中的的部部分分客客户户基基本本信信息息也也在在客客户户投投诉诉数数据据库库中中存在。存在。由由于于不不同同的的数数据据库库可可能能使使用用不不同同数数据据库库公公司司的的产产品品,不不同同的的业业务务系系统统可可能能有有不不同同的的软软件件开开发发商商提提供供,这这使使得得各各个个业业务务数数据据库库中中的的数数据据存存在在不不一一
5、致致的的现现象象,数数据据库库使使用用人人员员的操作失误也会造成数据的不一致。的操作失误也会造成数据的不一致。2.1.2 数据仓库的关键名词数据仓库的关键名词如图如图2-2所示,显示了一个数据不一致的例子。所示,显示了一个数据不一致的例子。客户数据库中有一张客户基本信息表,客户数据库中有一张客户基本信息表,其中记录了客户的客户号、姓名、年龄等其中记录了客户的客户号、姓名、年龄等基本信息。在客户服务数据库中有一张客基本信息。在客户服务数据库中有一张客户咨询信息表用于记录客户咨询问题的内户咨询信息表用于记录客户咨询问题的内容和解答。由于数据库使用人员的失误,容和解答。由于数据库使用人员的失误,使得
6、在客户基本信息表中的使得在客户基本信息表中的100号客户号客户“张张山山”,在客户咨询表中的客户姓名被错误,在客户咨询表中的客户姓名被错误的录入为的录入为“张三张三”。客户基本信息表客户咨询信息表客户号:100姓名:张山年龄:23客户号:100姓名:张三咨询问题:图2-2 操作失误导致数据不一致2.1.2 数据仓库的关键名词数据仓库的关键名词 由于冗余的数据存放在不同的数据库中,如由于冗余的数据存放在不同的数据库中,如果不同数据库间的数据刷新不是实时的,则可能果不同数据库间的数据刷新不是实时的,则可能出现出现数据不同步数据不同步的情况。如图的情况。如图2-3所示,在客户基所示,在客户基本信息表
7、中记录了本信息表中记录了100号客户号客户“张山张山”的手机状的手机状态正常,如果此时张山去办理停机手续,在客户态正常,如果此时张山去办理停机手续,在客户业务变更表中,张山的手机状态将被修改为业务变更表中,张山的手机状态将被修改为“停停机机”,如果数据刷新不够实时,客户基本信息表,如果数据刷新不够实时,客户基本信息表中的手机服务状态将与客户业务变更表不同步。中的手机服务状态将与客户业务变更表不同步。客户基本信息表客户业务变更表客户号:100姓名:张山年龄:23手机服务状态:正常客户号:100姓名:张三业务变更:停机图2-3 数据刷新不实时导致数据不同步2.1.2 数据仓库的关键名词数据仓库的关
8、键名词对对于于决决策策支支持持系系统统来来说说,最最重重要要的的是是决决策策的的准准确确性性,因因此此确确保保数数据据仓仓库库中中数数据据的的准准确确性性是是极极其其重重要要的的。从从多多个个业业务务系系统统中中获获取取数数据据时时,必必须须对对数数据据进进行行必必要要的的清清洗洗,从而得到准确的数据。从而得到准确的数据。所谓所谓“清洗清洗”就是将错误的、不一致就是将错误的、不一致的数据在进入数据仓库之前予以更正或删的数据在进入数据仓库之前予以更正或删除,以免影响决策支持系统决策的正确性。除,以免影响决策支持系统决策的正确性。2.1.2 数据仓库的关键名词数据仓库的关键名词3.数据转化(数据转
9、化(DataTransformation)由于业务系统可能使用不同的数据库厂由于业务系统可能使用不同的数据库厂商的产品,比如商的产品,比如IBMDB2、Informix、Sybase、SQLServer、NCR等,各种数据等,各种数据库产品提供的数据类型可能不同,因此需要库产品提供的数据类型可能不同,因此需要将不同格式的数据转换成统一的数据格式。将不同格式的数据转换成统一的数据格式。比如比如图图2-4中所示的不同时间格式的差异。中所示的不同时间格式的差异。2.1.2 数据仓库的关键名词数据仓库的关键名词4.提取仓库(提取仓库(ExtractionStore)由于业务数据库系统中的数据和数据由于
10、业务数据库系统中的数据和数据格式存在不一致的问题,因此在把数据放格式存在不一致的问题,因此在把数据放进数据仓库前需要进行缓存,以等待清洗进数据仓库前需要进行缓存,以等待清洗和转换,这些数据缓存的位置即提取仓库。和转换,这些数据缓存的位置即提取仓库。5.提取日志(提取日志(ExtractionLog)当当从从业业务务系系统统提提取取数数据据时时,需需要要记记录录提提取取数数据据的的过过程程,这这个个过过程程被被记记载载在在提提取取日日志志中中。提提取取日日志志详详细细记记录录了了数数据据的的来来源源,数数据据的的转转化化过过程程等等,它它是是数数据据仓仓库库元元数数据据的的重重要要组组成成部部分
11、分,它它对对于于保保证证数数据据质质量量非非常常重重要要,并并且且便便于于数数据据管管理理员员验验证证数数据据的的质量。质量。2.1.2 数据仓库的关键名词数据仓库的关键名词6.数据管理员数据管理员 在数据仓库中,还有一个重要的角色,在数据仓库中,还有一个重要的角色,就是数据管理员。数据管理员不同于数据就是数据管理员。数据管理员不同于数据库管理员和系统管理员。数据库管理员负库管理员和系统管理员。数据库管理员负责数据库系统的数据备份、恢复、性能优责数据库系统的数据备份、恢复、性能优化等工作,系统管理员负责操作系统级的化等工作,系统管理员负责操作系统级的维护和管理,而数据管理员是负责数据质维护和管
12、理,而数据管理员是负责数据质量的专业人员,数据管理员查阅提取日志,量的专业人员,数据管理员查阅提取日志,发现其中记载的数据提取中出现的错误,发现其中记载的数据提取中出现的错误,有时候数据管理员还要检测源业务系统的有时候数据管理员还要检测源业务系统的错误,比如业务系统中的程序或者不正确错误,比如业务系统中的程序或者不正确的数据项造成的错误。的数据项造成的错误。2.1.2 数据仓库的关键名词数据仓库的关键名词7.外部数据源(外部数据源(ExternalSource)外外部部数数据据源源就就是是从从系系统统外外部部获获取取的的同同分析主题相关的数据。分析主题相关的数据。对对于于一一个个好好的的决决策
13、策,不不但但需需要要系系统统内内部部的的信信息息,还还需需要要来来自自系系统统外外部部的的相相关关信信息息。比比如如,超超市市的的采采购购部部门门要要确确定定采采购购货货单单,不不但但要要了了解解超超市市内内部部产产品品的的销销售售情情况况,还还需需要要了了解解市市场场上上各各种种商商品品的的价价格格水水平平、质质量量水水平平、竞竞争争对对手手的的采采购购信信息息等等。因因此此一一个个好好的的决决策策支支持持系系统统必必须须综综合合考考虑虑系系统统内内部和外部的相关数据。部和外部的相关数据。2.1.2 数据仓库的关键名词数据仓库的关键名词8.数据仓库存储(数据仓库存储(DataReposito
14、ry)数据仓库存储就是用于存放数据仓库数据和数据仓库存储就是用于存放数据仓库数据和元数据的存储空间。数据的存储方式主要有元数据的存储空间。数据的存储方式主要有3种:种:多维数据库、关系型数据库以及前两种存储方式多维数据库、关系型数据库以及前两种存储方式的结合(在第的结合(在第3章章OLAP的基本概念中将详细讲解)的基本概念中将详细讲解)。9.数据数据业业务务系系统统中中提提取取的的或或者者从从外外部部数数据据源源中中导导入入的的数数据据经经过过清清洗洗、转转化化后后成成为为数数据据仓仓库库的的原原始始数数据据,需需要要注注意意的的是是,它它们们是是数数据据仓仓库库数数据据的的一一部部分分,但但
15、不不是是全全部部。由由于于需需要要数数据据仓仓库库进进行行OLAP分分析析和和数数据据挖挖掘掘,因因此此需需要要在在原原始始数数据据的的基基础础上上增增加加冗冗余余信信息息,比比如如进进行行大大量量的的预预运运算算,建建立立多多维数据库,以求迅速的展现数据。维数据库,以求迅速的展现数据。2.1.2 数据仓库的关键名词数据仓库的关键名词10.元数据元数据 数据是对事物的描述,数据是对事物的描述,“元数据元数据”就是描述数据就是描述数据的数据,它提供了有关数据的环境。的数据,它提供了有关数据的环境。数据仓库的元数数据仓库的元数据主要包含两类数据:第一种是为了从操作型环境向据主要包含两类数据:第一种
16、是为了从操作型环境向数据仓库环境转换而建立的元数据,它包括所有源数数据仓库环境转换而建立的元数据,它包括所有源数据项的名称、属性及其在提取仓库中的转化;第二种据项的名称、属性及其在提取仓库中的转化;第二种元数据在仓库中是用来与最终用户的多维商业模型和元数据在仓库中是用来与最终用户的多维商业模型和前端工具之间建立映射的,这种数据称为决策支持系前端工具之间建立映射的,这种数据称为决策支持系统(统(DSS)元数据,它包括:)元数据,它包括:(1)数据仓库中信息的种类、存储位置、存储格式;)数据仓库中信息的种类、存储位置、存储格式;(2)信息之间的关系、信息和业务的关系、数据使)信息之间的关系、信息和
17、业务的关系、数据使用的业务规则;用的业务规则;(3)数据模型;)数据模型;(4)数据模型和数据仓库的关系。)数据模型和数据仓库的关系。2.1.2 数据仓库的关键名词数据仓库的关键名词下面通过一个简单的例子说明元数据的基本内容,如图下面通过一个简单的例子说明元数据的基本内容,如图2-5所示所示:我们从我们从Customer业务数据库的业务数据库的user表中取出表中取出3列列(user_id,user_name,address),在清洗转换过程中,将在清洗转换过程中,将user_name从从char(20)转化成转化成varchar(50)格式,最终放进格式,最终放进User维表(维表(User
18、_ID,User_Name,Address)中。在转换后,)中。在转换后,(User_ID,User_Name,Address)3列原始的存放位置、列原始的存放位置、进行的清洗转化处理、数据最终的存放位置、数据格式、进行的清洗转化处理、数据最终的存放位置、数据格式、数据使用的规则等等都将作为元数据的一部分数据使用的规则等等都将作为元数据的一部分。通常数据库将建立专用的元数据库来存放和管理元数据。通常数据库将建立专用的元数据库来存放和管理元数据。2.1.2 数据仓库的关键名词数据仓库的关键名词11.数据集市(数据集市(DataMarket)数数据据仓仓库库中中存存放放的的是是整整个个企企业业的的
19、信信息息,并并且且数数据据是是按按照照不不同同的的主主题题来来组组织织的的。比比如如市市场场发发展展趋趋势势的的分分析析主主题题主主要要由由市市场场部部门门的的人人员员使使用用,我我们们可可以以将将这这部部分分数数据据逻逻辑辑上上或或者者物物理理上上分分离离出出来来,当当市市场场部部使使用用数数据据时时,不不需需要要到到数数据据仓仓库库的的巨巨量量数数据据中中检检索索,而而只只需需要要在在这这些些数数据据上上进进行行分分析析,因因此此从从效效率率和和处处理理速速度度的的角角度度出出发发,这这种种划划分分是是合理的。合理的。我我们们把把这这种种面面向向企企业业的的某某个个部部门门(主主题题)而而
20、在在逻逻辑辑上上或或物物理理上上划划分分出出来来的的数数据据仓仓库库中中的的数数据据子集称为数据集市。子集称为数据集市。数数据据仓仓库库面面向向整整个个企企业业,而而数数据据集集市市则则是是面面向向企企业业中中的的某某个个部部门门。数数据据仓仓库库中中存存放放了了企企业业的的整整体体信信息息,而而数数据据集集市市只只存存放放了了某某个个主主题题需需要要的的信信息息,其其目目的的是是减减少少数数据据处处理理量量,使使信信息息的的利利用用更快捷、灵活。更快捷、灵活。2.2 数据仓库的特点数据仓库的特点 通过对数据仓库体系结构的完整介绍,通过对数据仓库体系结构的完整介绍,我们对数据仓库有了一定的感性
21、认识。现我们对数据仓库有了一定的感性认识。现在我们来分析数据库和数据仓库在功能、在我们来分析数据库和数据仓库在功能、技术上的差异,以加深理解。技术上的差异,以加深理解。2.2.1数据库的功能和特点数据库的功能和特点 对于一个大型的处理多用户并发的数据对于一个大型的处理多用户并发的数据库系统,数据的安全性、数据处理的并发库系统,数据的安全性、数据处理的并发性、事务处理的可靠性、数据的一致性和性、事务处理的可靠性、数据的一致性和完整性可能是其最为关心的问题。完整性可能是其最为关心的问题。2.2.1 数据库的功能和特点数据库的功能和特点 1.数据的安全性数据的安全性 首先是本地数据的安全性。数据库应
22、首先是本地数据的安全性。数据库应当防止数据被不必要的用户访问,因此需当防止数据被不必要的用户访问,因此需要使用数据加密技术,使得数据不能轻易要使用数据加密技术,使得数据不能轻易的被读取。的被读取。可以为数据库系统定义不同的角色,可以为数据库系统定义不同的角色,每个角色具有不同的访问权限,从而控制每个角色具有不同的访问权限,从而控制不同用户的访问权限。不同用户的访问权限。当数据库通过网络被访问时,还需要当数据库通过网络被访问时,还需要增加新的网络安全机制来确保网络的安全增加新的网络安全机制来确保网络的安全性,在网络传输中使用数据加密技术,防性,在网络传输中使用数据加密技术,防止数据在网络中被监听
23、,防止管理员的口止数据在网络中被监听,防止管理员的口令泄漏。令泄漏。2.2.1 数据库的功能和特点数据库的功能和特点 2.数据处理的并发性数据处理的并发性在在多多用用户户的的环环境境下下,多多个个进进程程将将并并发发地地访访问问数数据据库库,这这使使得得数数据据库库管管理理系系统统必必须须提提供供高高效效的的加加锁锁解解锁锁方方法法以以实实现现进进程程间间的的同同步步和和互互斥斥,使使用用多多线线程程、多多进进程程技技术术、磁磁盘盘的的存存储储优优化化、合合适适的的索索引引等等来来提提高高并并发访问的效率。发访问的效率。3.事务处理的可靠性事务处理的可靠性为为了了保保证证业业务务逻逻辑辑的的正
24、正确确性性,数数据据库库系系统统必必须须提提供供良良好好的的事事务务处处理理能能力力,一一个个原原子子操操作作(逻逻辑辑上上不不可可分分的的操操作作)不不能能被被分分开开执执行行,如如果果其其中中某某个个步步骤骤失失败败,则则数数据据库库系系统统必必须须返返回回并并更更改改操操作作,以以确确保保数数据的一致性和完整性。据的一致性和完整性。2.2.1 数据库的功能和特点数据库的功能和特点 4.数据的一致性和完整性数据的一致性和完整性为为了了确确保保数数据据的的一一致致性性和和完完整整性性,需需要要在在数数据据库库的的设设计计、应应用用程程序序的的开开发发、系系统的维护等环节上进行复杂的工作。统的
25、维护等环节上进行复杂的工作。由此可见,操作型的环境涉及到事务由此可见,操作型的环境涉及到事务处理、封锁管理、数据备份恢复、系统日处理、封锁管理、数据备份恢复、系统日志管理、数据存储管理等一系列复杂技术。志管理、数据存储管理等一系列复杂技术。2.2.2 数据仓库的功能和特征数据仓库的功能和特征 在在BuildingtheDataWarehouse一书中列一书中列出了操作型数据和分析型数据的区别,如出了操作型数据和分析型数据的区别,如表表2-1所示。所示。2.2.2 数据仓库的功能和特征数据仓库的功能和特征 二二者者的的区区别别从从根根本本上上体体现现了了事事务务处处理理和和分分析析处处理理的的差
26、差异异。传传统统的的数数据据库库系系统统由由于于主主要要用用于于企企业业的的日日常常事事务务处处理理工工作作,存存放放在在数数据据库库中中的的数数据据基基本本符符合合操操作作型型数数据据的的特特点点。而而为为了了适适宜宜数数据据分分析析处处理理的的要要求求而而产产生生的的数数据据仓仓库库中中存存放放的的数数据据,基基本本符符合合分析型数据的特点。分析型数据的特点。进而把数据仓库定义为进而把数据仓库定义为“用于支持管理决策用于支持管理决策的面向主题、集成、稳定、随时间变化的的面向主题、集成、稳定、随时间变化的数据集合数据集合”。他指出了数据仓库面向主题、。他指出了数据仓库面向主题、集成、稳定、随
27、时间变化这集成、稳定、随时间变化这4个最重要的特个最重要的特征。征。2.2.3 面向主题面向主题 业业务务系系统统是是以以优优化化事事务务处处理理的的方方式式来来构构造造数数据据结结构构的的,对对于于某某个个主主题题的的数数据据常常常常分分布布在在不不同同的的业业务务数数据据库库中中。这这对对于于决决策策支支持持系系统统来来说说是是极极为为不不利利的的,因因为为这这意意味味着着访访问问某某个个主主题题的的时时间间实实际际上上需需要要去去访访问问多多个个分分布布在在不不同同数数据据库库中中的的数数据据集合。集合。如在电信企业的情况。该企业已经有计费数如在电信企业的情况。该企业已经有计费数据库、帐
28、务数据库、客户服务数据库、市场信息据库、帐务数据库、客户服务数据库、市场信息数据库。其中,计费数据库记录了客户的消费情数据库。其中,计费数据库记录了客户的消费情况,客户服务数据库记录了客户的咨询和投诉情况,客户服务数据库记录了客户的咨询和投诉情况,帐务数据库记录了客户的缴费情况,这些数况,帐务数据库记录了客户的缴费情况,这些数据都是客户主题的相关数据。如果直接使用业务据都是客户主题的相关数据。如果直接使用业务系统进行决策支持,则需要访问计费数据库、客系统进行决策支持,则需要访问计费数据库、客户服务数据库、帐务数据库才能获得客户各个侧户服务数据库、帐务数据库才能获得客户各个侧面的信息,这样将极大
29、的浪费系统处理的时间和面的信息,这样将极大的浪费系统处理的时间和效率,并且数据之间的不一致性和不同步问题,效率,并且数据之间的不一致性和不同步问题,将极大影响决策的可靠性。将极大影响决策的可靠性。2.2.3 面向主题面向主题 基于以上的原因,数据仓库将这些数基于以上的原因,数据仓库将这些数据集中于一个地方,在这种结构中,对应据集中于一个地方,在这种结构中,对应某个主题的全部数据被存放在同一数据表,某个主题的全部数据被存放在同一数据表,这样决策者可以非常方便地在数据仓库中这样决策者可以非常方便地在数据仓库中的一个位置检索包含某个主题的所有数据。的一个位置检索包含某个主题的所有数据。在图在图2-6
30、中,我们选择收益、客户、市中,我们选择收益、客户、市场场3个主题。则收益主题可以从计费数据库个主题。则收益主题可以从计费数据库和账务数据库中了解公司各项业务的收入和账务数据库中了解公司各项业务的收入情况;客户主题可以从计费数据库、账务情况;客户主题可以从计费数据库、账务数据库、客户服务数据库中获得客户消费、数据库、客户服务数据库中获得客户消费、交费、咨询等全方位的信息;市场主题可交费、咨询等全方位的信息;市场主题可以从市场信息数据库分析市场的发展趋势。以从市场信息数据库分析市场的发展趋势。通过这种按主题的数据组织方法,数据仓通过这种按主题的数据组织方法,数据仓库极大地方便了数据分析的过程。库极
31、大地方便了数据分析的过程。2.2.3 面向主题面向主题2.2.3 面向主题面向主题如图如图2-7所示显示了以客户为主题的数据存储所示显示了以客户为主题的数据存储2.2.3 面向主题面向主题 属于属于“客户客户”主题域的数据集合使用主题域的数据集合使用相同的公共键码相同的公共键码“客户标识客户标识”来连接。从来连接。从图图2-7我们可以看出,数据在数据仓库中还我们可以看出,数据在数据仓库中还是以数据表的方式进行存储,但是,数据是以数据表的方式进行存储,但是,数据的组织方式和建模方法已经同数据库系统的组织方式和建模方法已经同数据库系统有了较大的改变。有了较大的改变。2.2.4 数据的集成性数据的集
32、成性 决决策策支支持持系系统统需需要要集集成成的的数数据据。全全面面而而正正确确的的数数据据是是有有效效地地分分析析和和决决策策的的首首要要前前提提,相相关关数数据据收收集集得得越越完完整整,得得到到的的结结果果就就越越可可靠靠。而而当当前前绝绝大大多多数数企企业业内内现现有有的的业业务务数数据据库库系系统统中中的的数数据据是是分分散散而而非非集集成成的的。造造成成这这种种分分散散的的原原因因有有多多种种,主主要要有有事事务务处处理理应应用用分分散散、“蜘蜘蛛蛛网网”问问题题、数数据不一致问题、外部数据和非结构化数据。据不一致问题、外部数据和非结构化数据。如图如图2-8所示中,示例了一个数据集
33、成的例子。所示中,示例了一个数据集成的例子。某电信公司在建立数据仓库时包括了客户这个主某电信公司在建立数据仓库时包括了客户这个主题,公司的业务系统中,客户的信息分散在各个题,公司的业务系统中,客户的信息分散在各个业务数据库中,需要从客户基本信息表、客户呼业务数据库中,需要从客户基本信息表、客户呼叫记录表、客户话费表、客户咨询表等表中将数叫记录表、客户话费表、客户咨询表等表中将数据提取并进行集成。据提取并进行集成。2.2.4 数据的集成性数据的集成性 图图2-8数据从操作型环境提取到分析型环境的同时进行数据集成数据从操作型环境提取到分析型环境的同时进行数据集成2.2.4 数据的集成性数据的集成性
34、 要要实实现现数数据据的的集集成成,就就必必须须对对数数据据进进行行清清洗洗和和转转化化。数数据据转转化化需需要要特特别别的的注注意意,通常可能包含如下的问题:通常可能包含如下的问题:1.数据格式数据格式不不同同的的业业务务数数据据库库设设计计者者对对于于同同一一属属性性可可能能使使用用不不同同的的格格式式,比比如如电电话话号号码码使使用用char(10)、varchar(50)、integer等等格格式式,各各个数据库没有统一的定义。个数据库没有统一的定义。2.测量单位测量单位 不同的数据库中对于统一属性的测量单不同的数据库中对于统一属性的测量单位可能不同,比如时间使用微秒、秒、分位可能不同
35、,比如时间使用微秒、秒、分钟、小时等来记录,各个数据库也没有进钟、小时等来记录,各个数据库也没有进行统一的定义。行统一的定义。2.2.4 数据的集成性数据的集成性 3.数据代码含义混乱数据代码含义混乱 在在数数据据库库的的设设计计中中常常常常需需要要定定义义代代码码和和枚枚举举类类型型的的变变量量,比比如如用用定定义义H-高高、M-中中、L-低低分分别别表表示示收收入入级级别别。有有的的数数据据库库设设计计者者可可能能定定义义1-高高、2-中中、3-低低分分别别表表示示收收入入级级别别。在在处处理理这这类类问问题题时时,必必须须仔仔细细阅阅读读业务数据库的物理设计文档。业务数据库的物理设计文档
36、。4.数据名称混乱数据名称混乱数数据据名名称称混混乱乱使使得得数数据据项项的的实实际际含含义义模模糊糊。比比如如客客户户名名称称,有有的的设设计计者者定定义义为为user_name,有有的的定定义义为为name,有有的的定定义义为为USERNAME等等。在在进进行行数数据据导导入入时时,只只有有通通过过细细致致地地阅阅读读业业务务数数据据库库的的设设计计文文档档才才能明确数据项的含义。能明确数据项的含义。2.2.4 数据的集成性数据的集成性 图图2-9中示例了在实际问题中可能遇到的需要进行数中示例了在实际问题中可能遇到的需要进行数据转化的工作。据转化的工作。2.2.4 数据的集成性数据的集成性
37、 如果更进一步考虑,决策支持系统需如果更进一步考虑,决策支持系统需要的不是静态的集成,而是动态的集成。要的不是静态的集成,而是动态的集成。静态集成的最大缺点在于数据集成后数据静态集成的最大缺点在于数据集成后数据源中的数据发生了变化,这些变化将不能源中的数据发生了变化,这些变化将不能反映给决策者,导致决策者使用的是过时反映给决策者,导致决策者使用的是过时的数据。因此数据仓库必须能够使集成数的数据。因此数据仓库必须能够使集成数据以一定的周期(例如据以一定的周期(例如24小时)进行刷新,小时)进行刷新,使决策者能够使用新增的数据,其过程如使决策者能够使用新增的数据,其过程如图图2-10所示。所示。2
38、.2.4 数据的集成性数据的集成性 实实际际系系统统的的数数据据刷刷新新周周期期应应当当取取决决于于需需要要分分析析的的问问题题。例例如如,如如果果我我们们想想分分析析某某超超市市这这几几年年来来的的销销售售额额的的发发展展趋趋势势,在在数数据据刷刷新新的的周周期期可可定定为为“月月”,但但是是如如果果想想分分析析这这个个月月走走俏俏的的商商品品,则则数数据据刷刷新新的周期定为的周期定为“日日”比较合适。比较合适。过短的数据刷新周期,不但没有必要,而且浪费了系统的处理资过短的数据刷新周期,不但没有必要,而且浪费了系统的处理资源,增加了数据仓库中的数据量。过长的数据刷新周期,可能使得许源,增加了
39、数据仓库中的数据量。过长的数据刷新周期,可能使得许多细节信息丢失,不能达到分析的目的。多细节信息丢失,不能达到分析的目的。2.2.5 数据的稳定性数据的稳定性 业业务务系系统统一一般般只只需需要要当当前前的的数数据据,在在数数据据库库中中一一般般只只存存储储短短期期数数据据,因因此此在在数数据据库库系系统统中中数数据据是是不不稳稳定定的的,它它记记录录的的是是系统中每一个变化的瞬态。系统中每一个变化的瞬态。但对于决策分析而言,历史数据是相但对于决策分析而言,历史数据是相当重要的,许多分析方法必须以大量的历当重要的,许多分析方法必须以大量的历史数据为依托。没有历史数据的详细分析史数据为依托。没有
40、历史数据的详细分析是难以把握企业的发展趋势的,因此是难以把握企业的发展趋势的,因此DSS对数据在空间和时间的广度上都有了更高对数据在空间和时间的广度上都有了更高的要求。的要求。2.2.5 数据的稳定性数据的稳定性 在在数数据据仓仓库库中中,数数据据一一旦旦被被写写入入就就不不再再变变化化了了。数数据据仓仓库库可可以以看看成成是是一一个个虚虚拟拟的的只只读读数数据据库库系系统统。我我们们在在数数据据集集成成性性中中说说明明了了数数据据仓仓库库在在数数据据存存储储方方面面是是分分批批进进行行,定定期期执执行行提提取取过过程程为为数数据据仓仓库库增增加加记记录录,但但是是这这些些记记录录一一旦旦加加
41、入入,就就不不再再从从系系统统中中删删除除。正正是是由由于于数数据据仓仓库库的的这这个个显显著著的的特特点点,使使得得数数据据仓仓库库不不需需要要在在并并发发读读写写控控制制上上投投入入过过多多的的精精力力,因因为为所所有有用用户户只只是是以以只只读读方方式式访访问问数数据据仓仓库库。我我们们在在图图2-11中中演演示了一个简单的例子。示了一个简单的例子。2.2.5 数据的稳定性数据的稳定性 2.2.5 数据的稳定性数据的稳定性 在在3月月23日日,100号号客客户户的的消消费费金金额额为为200元元,当当时时间间推推移移到到3月月24日日,100号号客客户户的的消消费费金金额额变变成成220
42、元元,这这一一信信息息在在业业务务系系统统中中被被更更新新了了。但但是是在在数数据据仓仓库库中中(我我们们假假定定数数据据仓仓库库每每天天进进行行一一次次数数据据提提取取),3月月23日日的的数数据据提提取取结结果果是是在在数数据据仓仓库库中中增增加加了了记记录录XXX,说说明明100号号客客户户在在3月月23日日的的消消费费金金额额为为200元元,在在执执行行3月月24日日的的数数据据提提取取工工作作之之后后,原原先先的的记记录录XXX并并没没有有发发生生任任何何的的改改变变,而而是是在在数数据据仓仓库库中中增增加加了了一一条条新新的的记记录录YYY,说说明明100号号客客户户在在3月月24
43、日日的的消消费费金金额额为为220元元。可可见见,数数据据仓仓库库实实际际上上是是为为100号号客客户户的的消消费费行行为为进进行行了了定定期期的的快快照照,并并将将快快照照存存储储起起来来供后续的分析工作使用。供后续的分析工作使用。2.2.6 数据随时间变化的特点数据随时间变化的特点 由于在数据仓库中数据只增不删,这使得数据仓库中的数据总由于在数据仓库中数据只增不删,这使得数据仓库中的数据总是拥有时间维度。数据仓库实际上就是记录系统的各个瞬态,并通过是拥有时间维度。数据仓库实际上就是记录系统的各个瞬态,并通过将各个瞬态连接起来形成动画,从而在数据分析的时候再现系统运动将各个瞬态连接起来形成动
44、画,从而在数据分析的时候再现系统运动的全过程。数据提取的周期实际上决定了动画间隔的时间,数据提取的全过程。数据提取的周期实际上决定了动画间隔的时间,数据提取的周期短,则动画的速度快,图的周期短,则动画的速度快,图2-12示意了这种特点。示意了这种特点。数据仓库的快照集合业务系统的运营t1t2t3tn图2-12 数据仓库数据随时 间变化的特点2.2 数据仓库的特点数据仓库的特点 数据仓库同数据库相比,还具有其他数据仓库同数据库相比,还具有其他的特点。如数据仓库中的数据不再像数据的特点。如数据仓库中的数据不再像数据库中的数据具有严格的规范化的特点,这库中的数据具有严格的规范化的特点,这也是有数据仓
45、库的应用需求决定的。数据也是有数据仓库的应用需求决定的。数据仓库为了能够在尽量短的时间内将数据呈仓库为了能够在尽量短的时间内将数据呈现给使用人员,使用所谓的现给使用人员,使用所谓的“空间换时间空间换时间”的技术,牺牲了数据的规范化,增加了的技术,牺牲了数据的规范化,增加了数据的冗余度,从而减小系统的响应时间。数据的冗余度,从而减小系统的响应时间。2.3 数据仓库的数据组织数据仓库的数据组织 在对数据仓库的特点进行分析后,我在对数据仓库的特点进行分析后,我们来学习数据仓库的数据组织结构和组织们来学习数据仓库的数据组织结构和组织方式。方式。2.3.1数据仓库的数据组织结构数据仓库的数据组织结构一一
46、个个典典型型的的数数据据仓仓库库的的数数据据组组织织结结构构图图如图如图2-14所示。所示。在数据仓库中,数据被分成在数据仓库中,数据被分成4种级别,种级别,分别是高度综合级、轻度综合级、当前细分别是高度综合级、轻度综合级、当前细节级、早期细节级。节级、早期细节级。2.3.1 数据仓库的数据组织结构数据仓库的数据组织结构 2.3.1 数据仓库的数据组织结构数据仓库的数据组织结构 当当前前的的数数据据总总是是首首先先进进入入当当前前细细节节级级,然然后后根根据据应应用用的的需需求求,通通过过预预运运算算将将数数据据聚聚合合成成轻轻度度综综合合和和高高度度综综合合级级。比比如如,在在电电信信公公司
47、司中中的的电电话话呼呼叫叫数数据据中中记记录录了了每每个个用用户户的的每每次次呼呼叫叫。进进行行OLAP分分析析时时,常常常常需需要要不不同同层层次次的的数数据据颗颗粒粒度度,因因此此可可以以通通过过预预运运算算将将数数据据综综合合成成每每个个用用户户每每“天天”的的通通话话次次数数,还还可可以以进进一一步步聚聚合合成成每每个个用用户每户每“月月”的通话次数。的通话次数。随着时间的推移,系统中的一些细节随着时间的推移,系统中的一些细节数据已经老化了,很少会被用户使用,此数据已经老化了,很少会被用户使用,此时为了节省系统的存储空间,可以将这些时为了节省系统的存储空间,可以将这些老化的细节数据导出
48、到备份设备上。如图老化的细节数据导出到备份设备上。如图2-15所示是一个数据仓库数据组织的示例。所示是一个数据仓库数据组织的示例。2.3.1 数据仓库的数据组织结构数据仓库的数据组织结构 2.3.1 数据仓库的数据组织结构数据仓库的数据组织结构 由由于于客客户户呼呼叫叫数数据据的的数数据据量量很很大大,并并且且数数据据仓仓库库的的使使用用者者常常常常只只关关心心近近期期的的细细节节数数据据,因因此此我我们们可可以以在在系系统统中中只只保保存存近近3个个月月的的呼呼叫叫细细节节数数据据,而而将将3个个月月之之前前的的详详细数据导出到备份设备中。细数据导出到备份设备中。在在数数据据仓仓库库中中,细
49、细节节数数据据可可以以聚聚合合成成轻轻度度和和高高度度综综合合级级别别的的数数据据,比比如如按按“月月”、“季季度度”、“年年”统统计计,需需要要说说明明的的是是轻轻度度和和高高度度是是一一种种相相对对的的概概念念,而而没没有有绝绝对对的的边边界界,并并且且在在数数据据仓仓库库中中数数据据的的综综合程度常常有很多的级别。合程度常常有很多的级别。2.3.1 数据仓库的数据组织结构数据仓库的数据组织结构 实实际际上上综综合合数数据据也也可可能能被被导导出出系系统统。比比如如企企业业的的管管理理者者认认为为企企业业的的决决策策只只同同企企业业近近15年年来来的的运运营营数数据据有有关关,则则15年年
50、之之前前的的综综合合数数据据也也可可以以导导出出。对对于于高高度度综综合合的的数数据据,由由于于其其数数据据量量已已经经很很少少,所所以以一一般般可以不考虑它们的导出问题。可以不考虑它们的导出问题。2.3.1 数据仓库的数据组织结构数据仓库的数据组织结构 总总的的来来说说,数数据据仓仓库库的的这这种种组组织织方方式式的的核核心心思思想想是是:在在系系统统中中保保留留最最有有可可能能被被用用户户使使用用的的数数据据,而而用用户户很很少少使使用用的的数数据据则备份出系统。则备份出系统。2.3.2 数据颗粒度数据颗粒度 数数据据颗颗粒粒度度是是数数据据仓仓库库中中极极其其重重要要的的概概念念。我我们