数据仓库技术简介_第1页
数据仓库技术简介_第2页
数据仓库技术简介_第3页
数据仓库技术简介_第4页
数据仓库技术简介_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

数据仓库技术概述数据仓库技术随着数据库技术的日趋成熟以及应用系统逐渐完善,无论是利用早期的RDB、Dbase,还是后来以其领先的核心技术日渐垄断关系数据库市场的Oracle、Sysbase、DB2,企业已经积累了大量的数据,这些数据信息为企业的发展提供了客观依据。毫无疑问,在竞争激烈的商业环境下,信息将是取胜的关键因素,决策者必须能快速可靠、随时自主地访问企业数据,才能有效地做出计划和决策。在这种需求牵引下,形成了数据仓库(Data Warehouse)的新概念、新技术。1数据仓库的概念数据仓库的提出是以关系数据库、并行处理和分布式技术的飞速发展为基础,是解决信息技术(IT)在发展中存在的拥有大量数据,而其中有用信息贫乏的综合解决方案。数据仓库是一种新的数据处理体系结构,是对企业内部各部门业务数据进行统一和综合的中央数据仓库。它为企业决策支持系统(DSS)和经理信息系统(EIS)提供所需的信息。它是一种信息管理技术,为预测利润、风险分析、市场分析以及加强客户服务与营销活动等管理决策提供支持的新技术。数据仓库技术对大量分散、独立的数据库经过规划、平衡、协调和编辑后,向管理决策者提供辅助决策信息,发挥大量数据的作用和价值。概括地说,数据仓库是面向主题的(Subject-Oriented)、集成的(Integrated)、稳定的(Nonvolatile)、不同时间的(Timer-Variant)数据集合,用于支持经营管理中决策制订过程。数据仓库中的数据面向主题,与传统数据库面向应用相对应。主题是一个在较高层次上将数据归类的标准,每一个主题对应一个宏观的分析领域:数据仓库的集成特性是指在数据进入数据仓库之前,必须经过数据加工和集成,这是建立数据仓库的关键步骤,首先要统一原始数据中的矛盾之处,还要将原始数据结构做一个从面向应用向面向主题的转变;数据仓库的稳定性是指数据仓库反映的是历史数据的内容,而不是日常事务处理产生的数据,数据经加工和集成进入数据仓库后是极少或根本不修改的;数据仓库是不同时间的数据集合,它要求数据仓库中的数据保存时限能满足进行决策分析的需要,而且数据仓库中的数据都要标明该数据的历史时期。 数据仓库最根本的特点是物理地存放数据,而且这些数据并不是最新的、专有的,而是来源于其它数据库的。数据仓库的建立并不是要取代数据库,它要建立在一个较全面和完善的信息应用的基础上,用于支持高层决策分析,而事务处理数据库在企业的信息环境中承担的是日常操作性的任务。数据仓库是数据库技术的一种新的应用,而且到目前为止,数据仓库还是用关系数据库管理系统来管理其中的数据。传统数据库用于事务处理,也称为操作型处理,是指对数据库联机进行日常操作,即对一个或一组记录的查询和修改,主要面向企业特定的应用服务。用户关心的是响应时间、数据的安全性和完整性。数据仓库用于决策支持,也称分析型处理,它是解决决策支持系统的基础。 数据仓库的数据概念模型是数据的多维视图,它直接影响到前端工具、数据库的设计和联机分析处理(On Line Analytical Processing, OLAP)的查询引擎。在多维数据模型中,一部分数据是数字测量值,而这些数字测量值是依赖于一组维的,这些维提供了测量值的上下文关系。因此,多维数据视图就是这样一些由层次的维构成的多维空间中,存放着数字测量值。多维概念模型的另一个特点是对一个或多个维所做的集合运算。这些运算可以包括对于同样维所限定的测量值的比较。一般来说,时间维是一个有特殊意义的维,对决策中的趋势分析很重要。 针对多维模型产生了OLAP分析方法,包括以下三种:(1) 旋转:即将表格的横、纵坐标交换(x、y)(y、x).(2) 上钻和下钻:对所关心的数据根据维的层次提升或降低观察的层次。(3) 切片和切块:主要根据维的限定做投影、选择等数据库操作获得数据。2数据仓库的数据组织一个典型的数据仓库的数据组织结构如图2.10所示:数据仓库中的数据分为四个级别:早期细节级、当前细节级、轻度综合级、高度综合级。源数据经过综合后,首先进入当前细节级,并根据具体需要进行进一步的综合,从而进入轻度综合级乃至高度综合级,老化的数据将进入早期细节级由此可见,数据仓库中存在着不同的综合级别,一般称之为粒度。粒度越大,表示细节程度越低,综合程度越高。 图1 DW数据组织结构数据仓库中还有一种重要的数据-元数据(metadata)。元数据是关于数据的数据,在数据库中,元数据是对数据库中各个对象的描述;在关系数据库中,这种描述就是对表、列、数据库、视图和其他对象的定义。从广义上讲,数据仓库元数据代表定义数据仓库对象的任何东西,无论是一个表、一个列、一个查询、一个商业规则,还是数据仓库内部的数据转移。元数据是数据仓库中所有管理、操作数据的数据,是数据仓库的核心。数据仓库反映的是企业数据库的业务模型,其核心是管理元数据。数据仓库元数据被分成三类:(1) 管理元数据。它包括所有建立和使用数据仓库的信息,源数据库的描述,后端和前端工具选择,定义数据仓库的模式,综合数据、维和层次信息,预定义的查询和报表,数据集市的位置和内容,数据存储的物理组织、分段,数据抽取、清洗、转换的规则,数据刷新的策略,数据存取的权限、用户等限定。(2) 业务元数据。这一部分有业务流程和定义,数据所有关系和存取控制策略。(3) 操作元数据。它是数据仓库在运行时的管理信息,记录数据在进行层次分析时的层次位置、现在数据仓库中的数据信息、监测信息(包括使用统计、错误报告等)。 数据仓库的数据组织方式共有三种:虚拟存储方式、基于关系表的存储和多维数据库存储方式。虚拟存储方式是虚拟数据仓库的数据组织形式。没有专门的数据仓库来存储数据,数据仓库中的数据仍然在源数据库中,只是通过语义层工具根据用户的多维需求,完成多维分析的功能。这种方式组织比较简单,花费少,用户使用灵活。但同时这种方式也存在一个致命的缺点:当源数据库的数据组织比较规范,没有数据不完备、冗余,又比较接近于多维数据模型时,虚拟数据仓库的多维语义层就容易定义。而一般数据库的组织关系都比较复杂,数据库中的数据又有许多冗余和冲突的地方。在实际组织中,这种方式很难建立起为决策服务的有效数据支持。关系型数据仓库的组织是将数据仓库的数据存储在关系型数据库的表结构中,在元数据的管理下,完成数据仓库的功能。这种组织方式在建库时,有两个主要过程完成数据的抽取。首先要提供一种图形化的点击操作界面,让分析员对源数据库的内容进行选择,定义多维数据模型。然后再编制程序把数据库中的数据抽取数据仓库的数据库中。多维数据库的组织是直接面向OLAP分析操作的数据组织形式。这种数据库产品也比较多,实现方法不尽相同。其数据组织采用多维数据结构文件存储数据,相应有维索引及相应的元数据管理文件与数据相对应。1)、维表多维概念模型可以被多维数据库直接实现,然而,对于采用关系型OLAP方式,则只能将多维概念模型和多维操作映射到关系和SQL查询上。大多数数据仓库都采用星型模型来表示多维概念模型。数据库中包括一张事实表(Fact Table),另外对于每一维都有一张维表(Dimensional Table)。事实表中的每条元组都包括保证多维关系的指向各个维表的外键和一些相应的测量数据。维表中记录的是有关这一维的属性。星型模型使OLAP的复杂查询可以直接通过各维的层次,执行比较、上钻、下钻等操作。在数据仓库中除了维表和事实表的数据之外,数据仓库中应当包含一些预处理过的综合数据。预综合数据的组织可以有两种形式:增加概括表方式和使用多重编码的方式。这种数据组织方式 存在数据冗余、多维操作速度慢的缺点。但这种数据组织方式是主流方案,大多数现存数据仓库集成方案都采用这种形式。2)、多维数据库数据组织各公司多维数据库产品的数据组织不完全相同,Arob公司的EESbase多维数据库是一种具有代表性的产品。例如下面的这种组织方式,可以说明多维数据库的数据组织:用于分析的数据从关系数据库或关系数据仓库中抽取出来,被存放到多维数据库的超立方结构中多维体。这各种多维体是以多维数组方式记录各数值测量值的具体值。相应各维有一定的记录维及维内层次的元数据结构。这种数据组织方式消除了大量数据库表中的空穴造成的空间浪费,又没有了在每个元组中在存储的外键信息,而由统一的维与数组的对应系数来限定数据,大大减少了存储空间。当使用多维数据库作为数据仓库的基本数据存储形式时,最主要的缺点是使以维为基本框架的存储空间大大减少,针对多维数据组织的操作算法,大大提高了多维分析操作的效率。但多维数据库产品还没有统一的标准,应用还较少。3)、两种数据组织的等价性关系数据库和多维数据库两种数据组织方法可以构成等价的多维数据模型。多种数据组织方法的等价性的数学依据是:多维空间中各点在离散坐标中一一对应于多维数组。数据的存储同样是有层次性的。对一个系统的多维视图定义是存储方式的概念形式,是最高层次的模型。采用什么样的存储方式(即前面提到了关系数据库、多维数据库两种形式)是物理数据组织的最高层,它们都能实现对多维数据模型的存储。关系型数据库的组织形式和方式不尽相同。数据的具体物理存储(如数据文件的结构、索引、编码等技术的采用)是物理存储的最底层技术和方法。对于数据文件的不同组织方法形成关系型数据库或多维数据库,这两种数据库又都能完成数据仓库的数据组织,即实现多维数据的存储。4)、虚拟数据仓库虚拟数据仓库(Virtual Data Warehouse),即构造一个透明的访问机制(Demand Driven),使用户以习惯的方式及时、直接地访问大型企业数据库。虚拟数据仓库策略允许用户使用一些工具通过网络获取数据。因此这种方法最终会使提取和维护大量数据的开销最小。这种方法为用户提供了最多的非预先准备好的查询可能。虚拟数据仓库是在应用层上进行研究的,其组织形式是用原有的关系表模拟多维数据。用户通过可视化的维定义工具,定义数据仓库中的各维,但在物理存储上并不实际进行数据仓库的组织,而只是在用户进行数据查询使用时,临时从网络和数据库中获取数据源定义的各维数据。由于采用虚拟的方式,无需建立大量的数据存储,虚拟的数据访问方式着眼于最终用户对数据的直接访问,其特点在于用户可以直接访问数据而无需做大量的分析和结构映射。3数据仓库系统结构数据仓库是在原有关系数据库基础上发展形成的,但不同于数据库系统的组织结构形式,它从原有的业务数据库中获得的基本数据和综合数据被分成一些不同的层次。一般数据仓库的结构组成包括当前基本数据、历史基本数据、轻度综合数据、高度综合数据、元数据。当前基本数据是最近时期的业务数据,是数据仓库用户最感兴趣的部分,数据量大。当前基本数据随时间的推移,由数据仓库的时间控制机制转为历史基本数据,一般被转存于一些转换介质中,如磁带等。轻度综合数据是从当前基本数据中提取出来的,设计这层数据结构时会遇到“综合处理数据的时间段选取”、“综合数据包含哪些数据属性”和“内容”等问题。最高一层的数据十分精练,是一种准决策数据。数据仓库系统是一个广义概念。整个系统包括从操作数据库和外部其他数据源的提取、转换工具、数据仓库数据部分(主要指构成数据仓库数据存储的数据库和数据仓库管理系统)、基于数据仓库的数据分析工具以及与以上各部分相关的管理综合部件,构成了整个数据仓库系统。数据仓库系统所要完成的功能包括辅助用户设计建立数据仓库系统的数据组织和存储;管理、维护数据仓库的正常工作,即完成数据仓库服务器的管理,接受用户查询数据的请求,使数据仓库数据与操作数据库中的数据保持有效同步等工作;综合集成多种分析工具(包括数学统计分析工具、OLAP多维分析工具、数据开采工具),完成用户根据决策需求对数据仓库的有效使用。数据仓库系统的总体结构如图2.11所示:图2 数据仓库系统的总体结构从图中可以看出数据仓库系统包括以下内容: 数据抽取和转换工具,它们可以完成对数据源的抽取、清洗、维护等功能。 数据建模工具,用于建立数据仓库与源数据库间的概念模型。 模型、元数据。 能够支持高速存取、有效地支持多维数据模型的前端工具。这样,整个数据仓库的组织大致分为三个部分:数据在进入数据仓库的存储体之前,包括源数据库、外部数据文件的清洗、变换、装载和刷新的工具,这是第一部分。第二部分是数据仓库的具体数据、元数据的存储和数据仓库服务器(包括数据库服务器和OLAP服务器)。第三部分是基于数据仓库的查询工具,主要包括数学统计分析、OLAP查询和数据开采三类工具。数据仓库的建立首先是根据数据库(包括关系数据库和其他数据源)使用多维视图定义工具完成数据模型的设计,再通过“抽取”工具将数据库中原始数据转入数据仓库的存储结构(有关数据库和多维数据库两种存储形式)中。这部分要完成清洗、变换和集成数据,将数据装载到数据仓库中,定期清理数据仓库,消除数据仓库与源数据库的不一致,清除失效数据等。在数据初次提取和以后数据同步时,需要花费的时间开销大,需要留出充裕的时间。而且,这一部分的程序可能是数据仓库中最难管理的,并且有可能是各类软件组成的集成体。数据仓库中另一个比较重要的部分是元数据管理部件。数据仓库中数据的存储和管理由多维数据视图来表现,是元数据的最主要部分。元数据存储有数据仓库的结构信息,相应也有一些工具程序完成对多维视图的定义,元数据的管理、存储,对整个数据仓库的检测和管理。数据仓库系统是为决策支持服务的,在数据仓库的数据存储建立以后,用户可以使用系统提供的多分析工具完成对数据的操作,获取个人需要的信息。4数据仓库的关键技术 与关系数据库不同,数据仓库并没有严格的数学理论基础,它更偏向于工程。由于数据仓库的这种工程性,因而在技术上可以根据它的工作过程分为:数据的抽取、存储和管理、数据的表现以及数据仓库设计的技术咨询四个方面。1) 数据的抽取数据的抽取是数据进入仓库的入口。由于数据仓库是一个独立的数据环境,它需要通过抽取过程将数据从联机事务处理系统、外部数据源、脱机的数据存储介质中导入到数据仓库。数据抽取在技术上主要涉及互连、复制、增量、转换、调度和监控等几个方面。数据仓库的数据并不要求与联机事务处理系统保持实时的同步,因此数据抽取可以定时进行,但多个抽取操作执行的时间、相互的顺序、成败对数据仓库中信息的有效性则至关重要。 在技术发展上,数据抽取所涉及的单个技术环节都已相对成熟,其中有一些是躲不开编程的,但整体的集成度还很不够。目前市场上所提供的大多是数据抽取工具。这些工具通过用户选定源数据和目标数据的对应关系,会自动生成数据抽取的代码。但数据抽取工具支持的数据种类是有限的;同时数据抽取过程涉及数据的转换,它是一个与实际应用密切相关的部分,其复杂性使得不可嵌入用户编程的抽取工具往往不能满足要求。因此,实际的数据仓库实施过程中往往不一定使用抽取工具。整个抽取过程能否因工具的使用而纳入有效的管理、调度和维护则更为重要。从市场发展来看,以数据抽取、异构互连产品为主项的数据仓库厂商一般都很有可能被其它拥有数据库产品的公司吞并。在数据仓库的世界里,它们只能成为辅助的角色。)、 数据的存储和管理 数据仓库的真正关键是数据的存储和管理。数据仓库的组织管理方式决定了它有别于传统数据库的特性,同时也决定了其对外部数据表现形式。要决定采用什么产品和技术来建立数据仓库核心,则需要从数据仓库的技术特点着手分析 数据仓库遇到的第一个问题是对大量数据的存储和管理。这里所涉及的数据量比传统事务处理大得多,且随时间的推移而累积。从现有技术和产品来看,只有关系数据库系统能够担当此任。关系数据库经过近30年的发展,在数据存储和管理方面已经非常成熟,非其它数据管理系统可比。目前不少关系数据库系统已支持数据分割技术,能够将一个大的数据库表分散在多个物理存储设备中,进一步增强了系统管理大数据量的扩展能力。采用关系数据库管理数百个GB甚至到TB的数据已是一件平常的事情。一些厂商还专门考虑大数据量的系统备份问题,好在数据仓库对联机备份的要求并不高。 数据仓库要解决的第二个问题是并行处理。在传统联机事务处理应用中,用户访问系统的特点是短小而密集;对于一个多处理机系统来说,能够将用户的请求进行均衡分担是关键,这便是并发操作。而在数据仓库系统中,用户访问系统的特点是庞大而稀疏,每一个查询和统计都很复杂,但访问的频率并不是很高。此时系统需要有能力将所有的处理机调动起来为这一个复杂的查询请求服务,将该请求并行处理。因此,并行处理技术在数据仓库中比以往更加重要。 在针对数据仓库的TPC-D基准测试中,比以往增加了一个单用户环境的测试,成为系统功力(QPPD)。系统的并行处理能力对QPPD的值有重要影响。目前,关系数据库系统在并行处理方面已能做到对查询语句的分解并行、基于数据分割的并行、以及支持跨平台多处理机的群集环境和MPP环境,能够支持多达上百个处理机的硬件系统并保持性能的扩展能力。 数据仓库的第三个问题是针对决策支持查询的优化。这个问题主要针对关系数据库而言,因为其它数据管理环境连基本的通用查询能力都还不完善。在技术上,针对决策支持的优化涉及数据库系统的索引机制、查询优化器、连接策略、数据排序和采样等诸多部分。普通关系数据库采用B树类的索引,对于性别、年龄、地区等具有大量重复值的字段几乎没有效果。而扩充的关系数据库则引入了位图索引的机制,以二进制位表示字段的状态,将查询过程变为筛选过程,单个计算机的基本操作便可筛选多条记录。由于数据仓库中各数据表的数据量往往极不均匀,普通查询优化器所得出得最佳查询路径可能不是最优的。因此,面向决策支持的关系数据库在查询优化器上也作了改进,同时根据索引的使用特性增加了多重索引扫描的能力。 以关系数据库建立的数据仓库在应用时会遇到大量的表间连接操作,而连接操作对于关系数据库来说是一件耗时的操作。扩充的关系数据库中对连接操作可以做预先的定义,我们称之为连接索引,使得数据库在执行查询时可直接获取数据而不必实施具体的连接操作。数据仓库的查询常常只需要数据库中的部分记录,如最大的前50家客户,等等。普通关系数据库没有提供这样的查询能力,只好将整个表的记录进行排序,从而耗费了大量的时间。决策支持的关系数据库在此做了改进,提供了这一功能。此外,数据仓库的查询并不需要像事务处理系统那样精确,但在大容量数据环境中需要有足够短的系统响应时间。因此,一些数据库系统增加了采样数据的查询能力,在精确度允许的范围内,大幅度提高系统查询效率。总之,将普通关系数据库改造成适合担当数据仓库的服务器有许多工作可以做,它已成为关系数据库技术的一个重要研究课题和发展方向。可见,对于决策支持的扩充是传统关系数据库进入数据仓库市场的重要技术措施。 数据仓库的第四个问题是支持多维分析的查询模式,这也是关系数据库在数据仓库领域遇到的最严峻的挑战之一。用户在使用数据仓库时的访问方式与传统的关系数据库有很大的不同。对于数据仓库的访问往往不是简单的表和记录的查询,而是基于用户业务的分析模式,即联机分析。如图2.12所示,它的特点是将数据想象成多维的立方体,用户的查询便相当于在其中的部分维(棱)上施加条件,对立方体进行切片、分割,得到的结果则是数值的矩阵或向量,并将其制成图表或输入数理统计的算法。 图 3联机分析数据处理示意图关系数据库本身没有提供这种多维分析的查询功能,而且在数据仓库发展的早期,人们发现采用关系数据库去实现这种多维查询模式非常低效、查询处理的过程也难以自动化。为此,人们提出了多维数据库的概念。多维数据库是一种以多维数据存储形式来组织数据的数据管理系统,它不是关系型数据库,在使用时需要将数据从关系数据库中转载到多维数据库中方可访问。采用多维数据库实现的联机分析应用我们称之为MOLAP。多维数据库在针对小型的多维分析应用有较好的效果,但它缺少关系数据库所拥有的并行处理及大规模数据管理扩展性,因此难以承担大型数据仓库应用。这种状态由星型模式在关系数据库设计中得到广泛的应用才彻底改变。几年前,数据仓库专家们发现,关系数据库若采用星型模式来组织数据就能很好地解决多维分析的问题。星型模式只不过是数据库设计中数据表之间的一种关联形式,它的巧妙之处在于能够找到一个固定的算法,将用户的多维查询请求转换成针对该数据模式的标准SQL语句,而且该语句是最优化的。星型模式的应用为关系数据库在数据仓库领域打开绿灯。采用关系数据库实现的联机分析应用称为ROLAP。目前,大多数厂商提供的数据仓库解决方案都采用ROLAP。在数据仓库的数据存储管理领域,从当今的技术发展来看,面向决策支持扩充的并行关系数据库将是数据仓库的核心。在市场上,数据库厂商将成为数据仓库的中坚力量。)、数据的表现数据表现是数据仓库的门面。这是一个工具厂商的天下。它们主要集中在多维分析、数理统计和数据挖掘方面。多维分析是数据仓库的重要表现形式,由于MOLAP系统是专用的,因此,关于多维分析领域的工具和产品大多是ROLAP工具。这些产品近两年来更加注重提供基于Web的前端联机分析界面,而不仅仅是网上数据的发布。数理统计原本与数据仓库没有直接的联系,但在实际的应用中,客户需要通过对数据的统计来验证他们对某些事物的假设,以进行决策。与数理统计相似,数据挖掘与数据仓库也没有直接的联系。而且这个概念在现实中有些含混。数据挖掘强调的不仅仅是验证人们对数据特性的假设,而且它更要主动地寻找并发现蕴藏在数据之中的规律。这听起来虽然很吸引人,但在实现上却有很大的出入。市场上许多数据挖掘工具其实不过是数理统计的应用。它们并不是真正寻找出数据的规律,而是验证尽可能多的假设,其中包括许多毫无意义的组合,最后由人来判断其合理性。因此,在当前的数据仓库应用中,有效地利用数理统计就已经能够获得可观的效益。)、数据仓库设计的技术咨询在数据仓库的实施过程中,

温馨提示

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

评论

0/150

提交评论