第11章数据库新技术.ppt

上传人:hyn****60 文档编号:71447998 上传时间:2023-02-03 格式:PPT 页数:54 大小:149KB
返回 下载 相关 举报
第11章数据库新技术.ppt_第1页
第1页 / 共54页
第11章数据库新技术.ppt_第2页
第2页 / 共54页
点击查看更多>>
资源描述

《第11章数据库新技术.ppt》由会员分享,可在线阅读,更多相关《第11章数据库新技术.ppt(54页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第11章章 数据库新技术数据库新技术数据库新技术:并行数据库、分布式数据库、模糊数据库、动态数据数据库新技术:并行数据库、分布式数据库、模糊数据库、动态数据库、主动数据库、面向对象数据库、工程数据库、空间数据库、多媒库、主动数据库、面向对象数据库、工程数据库、空间数据库、多媒体数据库、体数据库、XML数据库、数据仓库、数据挖掘和智能数据库等。数据库、数据仓库、数据挖掘和智能数据库等。主要介绍主要介绍XML数据库、数据仓库和数据挖掘等数据库新技术。数据库、数据仓库和数据挖掘等数据库新技术。11.1 XML数据库数据库随着随着Web技术的快速发展,技术的快速发展,XML数据已经成为网络数据交换的

2、基本形数据已经成为网络数据交换的基本形式,从而使式,从而使XML发展成为网络数据标准。发展成为网络数据标准。11.1.1 XML与数据描述与数据描述XML(eXtended Markup Language,扩展标记语言)是,扩展标记语言)是W3C(World Wide Web Consortium,万维网联盟)制定的用于网,万维网联盟)制定的用于网络数据交换,并且自行定义标记的语言(网络数据交换标准)。络数据交换,并且自行定义标记的语言(网络数据交换标准)。XML和和HTML(Hyper Text Markup Language,超文本标记语言),超文本标记语言)作为作为SGML(Standa

3、rd Generalized Markup Language,标准通用,标准通用标记语言)的子集,标记语言)的子集,XML吸取了吸取了SGML和和HTML的优点。即:扩展性、的优点。即:扩展性、描述性、简洁性、分离性和结构性等。描述性、简洁性、分离性和结构性等。XML的简单、开放、扩展、灵活、描述等特性,使得的简单、开放、扩展、灵活、描述等特性,使得XML在数据库领在数据库领域以及商业应用领域占据了重要位置。域以及商业应用领域占据了重要位置。11.1.1 XML与数据描述与数据描述XML文档是数据和标记及其数据描述的集合,而对文档是数据和标记及其数据描述的集合,而对XML数据的压缩、数据的压缩

4、、存储、索引、传输、交换和查询等管理技术则形成了存储、索引、传输、交换和查询等管理技术则形成了XML数据库技术。数据库技术。即:即:XML文档(如图文档(如图11-1所示)是数据集合,所示)是数据集合,XML及其相关技术是数及其相关技术是数据库管理系统,据库管理系统,DTD(Document Type Descriptors,文档类型定义),文档类型定义)或者或者Schema是数据库模式设计,是数据库模式设计,XQL(XML Query Language,XML查询语言)是数据库查询语言,查询语言)是数据库查询语言,SAX(Simple API for XML,简,简单单XML API)或者)

5、或者DOM(Document Object Model,文档对象模型),文档对象模型)是数据库处理工具。是数据库处理工具。XML数据库产品主要包括:中间件、支持数据库产品主要包括:中间件、支持XML的数据库、的数据库、XML本源数本源数据库、据库、XML服务器、服务器、Wrappers和内容管理系统等。和内容管理系统等。XML数据库主要用途概括:数据库主要用途概括:(1)有效管理)有效管理XML数据,并提供数据,并提供XML数据的查询和修改功能。数据的查询和修改功能。(2)高效集成基于)高效集成基于Web的各种数据源。的各种数据源。11.1.1 XML与数据描述与数据描述XML 数据库主要包括

6、两种类型:数据库主要包括两种类型:NXD(Native Xml Database,XML本源数据库):本源数据库):专门对专门对XML数据格式的文档进行存取管理和数据查询的数据库技术。数据格式的文档进行存取管理和数据查询的数据库技术。XED(Xml Enable Database,支持,支持XML的数据库):的数据库):在传统数据库的基础上,通过增加对在传统数据库的基础上,通过增加对XML数据的映射功能,从而实现数据的映射功能,从而实现对对XML数据进行存取管理的数据库技术。数据进行存取管理的数据库技术。11.1.2 XML数据模型数据模型XML文档是文档是XML数据库的数据区,是基本存储单元

7、,是数据库的数据区,是基本存储单元,是XML数据的存数据的存储格式。储格式。XML文档相当于关系数据库的表。文档相当于关系数据库的表。XML文档由说明、元素、属性、处理指令和注释等组成。文档由说明、元素、属性、处理指令和注释等组成。XML数据库的数据模型包括数据库的数据模型包括DTD和和Schema等,用来描述等,用来描述XML数据的数据的结构(相当于关系数据库的模式)。根据结构(相当于关系数据库的模式)。根据DTD和和Schema可以存取可以存取XML数据。数据。XML数据模型可以支持任意层次的数据嵌套,对半结构化数据模型可以支持任意层次的数据嵌套,对半结构化数据提供了良好的支持。数据提供了

8、良好的支持。DTD规定元素、属性、规定元素、属性、PCDATA(非嵌套字符型数据)及文档内(非嵌套字符型数据)及文档内容的顺序和嵌套关系等信息。容的顺序和嵌套关系等信息。DTD通常存入通常存入*.dtd文件,可被文件,可被XML文档共享,因此文档共享,因此DTD是对是对XML数据建立索引的主要方法。数据建立索引的主要方法。Schema 是是W3C 推荐的推荐的XML 数据模型标准,数据模型标准,Schema比比DTD提供提供了更加严格的规范。了更加严格的规范。例如:在例如:在DTD中,不支持参照约束;而在中,不支持参照约束;而在Schema中,则可以方便的中,则可以方便的进行参照约束控制。进行

9、参照约束控制。11.1.3 XML查询与处理查询与处理常用的常用的XML数据库查询语言是:数据库查询语言是:XQL、XPath和和XSLT。XQL是是W3C提出的对提出的对XML文档进行信息检索的查询语言标准。文档进行信息检索的查询语言标准。XPath是是W3C提出的描述数据元素在提出的描述数据元素在XML文档内部位置的标准。文档内部位置的标准。XSLT(eXtensible Stylesheet Language Transformation)是对)是对XML 数据进行转换的语言。数据进行转换的语言。XSLT与与XML的关系,相当于的关系,相当于SQL语语言与关系数据库的关系。言与关系数据库

10、的关系。常用的常用的XML数据库处理工具是数据库处理工具是DOM、JDOM和和SAX等。等。DOM是对是对XML数据进行组织管理的标准和编程接口规范。数据进行组织管理的标准和编程接口规范。JDOM是采用是采用JAVA 语言实现的语言实现的DOM。SAX是目前多数是目前多数XML数据库使用的开发标准。数据库使用的开发标准。SAX几乎支持所有几乎支持所有的的XML解析器。解析器。SAX与与DOM相比,相比,SAX 是轻量级的处理工具。是轻量级的处理工具。11.1.4 NXDNXD作为直接对作为直接对XML文档进行存取管理和数据查询的专用数据库技术,文档进行存取管理和数据查询的专用数据库技术,是通过

11、基于是通过基于XML文档的逻辑模型,来实现文档的逻辑模型,来实现XML数据的存取。数据的存取。NXD分为:文本类型和模型类型。分为:文本类型和模型类型。基于文本的基于文本的NXD是文本格式文件,是是文本格式文件,是RDBMS的二进制大型对象的二进制大型对象(Binary Large Object,BLOB)或者特定文件格式。)或者特定文件格式。基于模型的基于模型的NXD非文本格式文件,是根据文件构造内部模型,并非文本格式文件,是根据文件构造内部模型,并将模型存储于数据库。其数据存取依赖于数据库。将模型存储于数据库。其数据存取依赖于数据库。NXD数据库设数据库设计的可塑性好,变化空间较大计的可塑

12、性好,变化空间较大 NXD的关键技术:的关键技术:数据存储、查询处理、事务处理、代数系统和模式规范化。数据存储、查询处理、事务处理、代数系统和模式规范化。11.1.4 NXDNXD相对于传统数据库,具有如下特点:相对于传统数据库,具有如下特点:(1)有效管理半结构化)有效管理半结构化Web数据。数据。(2)提供对标签和路径的操作。传统)提供对标签和路径的操作。传统DBMS不能对元素名称操作。不能对元素名称操作。(3)有序性。)有序性。XML文档的内容是有顺序的,不许随便调整元素、属性、文档的内容是有顺序的,不许随便调整元素、属性、PCDATA的顺序。缺点是有序性使得的顺序。缺点是有序性使得XM

13、L文档的查询操作比较复杂。文档的查询操作比较复杂。(4)便利的层次化数据操作。)便利的层次化数据操作。(5)Web数据的交换能力。由于数据的交换能力。由于XML是标准的数据交换格式,因此是标准的数据交换格式,因此NXD 能够存储和查询各种不同结构类型的文档,对异构环境的信息存能够存储和查询各种不同结构类型的文档,对异构环境的信息存取提供了良好的支持,为异构环境的数据集成提供了一种新的方法。取提供了良好的支持,为异构环境的数据集成提供了一种新的方法。总之,总之,NXD适合管理复杂数据结构的数据集,对于适合管理复杂数据结构的数据集,对于XML格式的格式的Web信信息管理,采用息管理,采用NXD利于

14、文档的存取和检索,能够提供高质量的全文搜利于文档的存取和检索,能够提供高质量的全文搜索引擎,特别适合半结构化数据的管理;对于结构化数据管理,则索引擎,特别适合半结构化数据的管理;对于结构化数据管理,则RDBMS会更适宜。会更适宜。11.1.5 XEDXED作为支持作为支持XML数据管理的数据库技术,是通过数据管理的数据库技术,是通过XML数据与数据与DBMS数据的映射功能实现对数据的映射功能实现对XML数据的存取管理。数据的存取管理。支持:支持:SQL Server系列(例如:系列(例如:SQL Server 2008)、)、Access系列系列(例如:(例如:Access 2007)、)、I

15、BM 的的DB2 XML系列、系列、Informix系列和系列和Oracle系列(例如:系列(例如:Oracle 9i)等。)等。XED产品基本均是使用产品基本均是使用DTD实现与关系数据的转换,而且对实现与关系数据的转换,而且对XML文档文档的查询符合的查询符合XPath标准,执行查询的标准,执行查询的XED 核心是采用核心是采用XQL标准。标准。由于传统关系数据库的表与以数据为中心的由于传统关系数据库的表与以数据为中心的XML文档,在数据结构上文档,在数据结构上很类似,因此由很类似,因此由XED管理的管理的XML文档可以方便的存入关系数据库,同文档可以方便的存入关系数据库,同理关系数据库的

16、表可以转换成理关系数据库的表可以转换成XML文档。文档。事实上,事实上,XED是在传统数据库的基础上增加了对是在传统数据库的基础上增加了对XML数据的映射机制,数据的映射机制,通常只能对结构化程度较高的通常只能对结构化程度较高的XML文档进行管理,实现文档进行管理,实现XML文档与传文档与传统数据库之间的映射。统数据库之间的映射。11.1.5 XED关键技术是关键技术是XML文档与关系模式的映射与存储。文档与关系模式的映射与存储。(1)模型映射。需要把)模型映射。需要把XML文档模型(即:文档树结构)映射为关文档模型(即:文档树结构)映射为关系模式,使用关系模式表示系模式,使用关系模式表示XM

17、L文档的构造。文档的构造。(2)结构映射。需要把)结构映射。需要把XML模式(或者模式(或者DTD)映射为关系模式,使)映射为关系模式,使用关系模式表示用关系模式表示XML文档的逻辑结构。文档的逻辑结构。利用利用RDBMS存储和查询存储和查询XML数据的常用策略:数据的常用策略:(1)边模型映射法。)边模型映射法。(2)点模型映射法。)点模型映射法。(3)结构映射方法。)结构映射方法。(4)模式设计法。)模式设计法。要求用户或者要求用户或者DBA自行设计用于存储自行设计用于存储XML文档的表结构;而表中的数文档的表结构;而表中的数据,则直接以据,则直接以XML文档方式发布,也可以由用户或者文档

18、方式发布,也可以由用户或者DBA使用使用XML查查询语言或者中间件定义关系对应的询语言或者中间件定义关系对应的XML视图。视图。NXD和和XED的优点和缺点对比的优点和缺点对比类型类型优点优点缺点缺点XED(1)用)用户户不需要将不需要将传统传统数据数据库库的数的数据,重新移植到新系据,重新移植到新系统统中,只需稍中,只需稍加改加改变变,就可以支持,就可以支持XML应应用。用。(2)传统传统数据数据库库技技术术(例如:范式(例如:范式理理论论、并、并发发控制、完整性控制和关控制、完整性控制和关系代数等),已系代数等),已经经非常成熟。非常成熟。(3)传统传统数据数据库库的知的知识识和和经验经验

19、依然依然有效,用有效,用户户不需要不需要为为了了XML应应用而用而再去学再去学习习一套新的数据一套新的数据库库技技术术。(1)XML文档存入数据文档存入数据库时库时需需要将其分解,取出要将其分解,取出时时需要需要组组合,合,不但不但费时费时,而且文档格式可能不,而且文档格式可能不同。同。(2)XML文档和数据文档和数据库库之之间间的的模式模式转换转换复复杂杂,前期开,前期开发阶发阶段投段投入很大。入很大。(3)以文档)以文档为为中心、格式复中心、格式复杂杂的的XML文档文档处处理性能理性能较较差。采差。采纳纳的的XML技技术标术标准准较较落后。落后。NXD(1)XML文档存取无需模式文档存取无

20、需模式转换转换,存取速度快。存取速度快。(2)对对格式复格式复杂杂的的XML文档支持比文档支持比XED好。好。(3)支持最新的)支持最新的XML技技术标术标准。准。(1)传统传统数据数据库库技技术术比比较较薄弱,薄弱,没有没有经过时间经过时间考考验验。(2)知)知识较识较新,相新,相应应的支持人的支持人员员和文档和文档资资源源较较少。少。(3)应应用范用范围围局限在局限在XML应应用用领领域中。域中。选择选择XML数据库的考虑方面数据库的考虑方面(1)针对格式复杂的,而且数据本身包含复杂层次关系,或者只有)针对格式复杂的,而且数据本身包含复杂层次关系,或者只有XML数据的情况,由于数据的情况,

21、由于NXD对对XML标准有更完备的支持,而且能够提标准有更完备的支持,而且能够提供更好的访问性能,则可以选择供更好的访问性能,则可以选择NXD。(2)针对格式简单、内容比格式更重要的)针对格式简单、内容比格式更重要的XML文档,特别是在传统文档,特别是在传统数据库上需要提供数据库上需要提供XML访问接口的应用,则可以考虑选择访问接口的应用,则可以考虑选择XED。(3)针对数据安全要求较高的应用(例如:银行系统、财政系统、)针对数据安全要求较高的应用(例如:银行系统、财政系统、股票系统和金融系统的数据库),由于股票系统和金融系统的数据库),由于NXD在完整性控制、并发控制、在完整性控制、并发控制

22、、数据恢复等传统数据库技术方面还需要进一步的检验,而建立在传统数据恢复等传统数据库技术方面还需要进一步的检验,而建立在传统数据库上的数据库上的XED相对更有优势,因此建议选择相对更有优势,因此建议选择XED。11.2 数据仓库数据仓库数据库系统是以数据库为中心,进行联机事务处理(数据库系统是以数据库为中心,进行联机事务处理(On Line Transaction Processing,OLTP)的技术,并得到了非常成功的广)的技术,并得到了非常成功的广泛应用,但是却无法满足管理人员的决策分析需求。为此,在数据库泛应用,但是却无法满足管理人员的决策分析需求。为此,在数据库技术的基础上,产生了以历

23、史数据为中心的联机分析处理(技术的基础上,产生了以历史数据为中心的联机分析处理(On Line Analytical Processing,OLAP;关系数据库之父;关系数据库之父E.F.Codd 于于1992年提出)技术,以及能够满足决策分析需要的数据仓库(年提出)技术,以及能够满足决策分析需要的数据仓库(Data Warehouse,DW)。)。11.2.1 数据仓库的概念数据仓库的概念从不同角度给出的数据仓库不同定义:从不同角度给出的数据仓库不同定义:(1)W.H.Inmon定义(创始人):数据仓库是面向主题的、集成的、稳定义(创始人):数据仓库是面向主题的、集成的、稳定的、随时间变化的

24、数据集合,用以支持经营管理中的决策制定过程。定的、随时间变化的数据集合,用以支持经营管理中的决策制定过程。(2)Informix定义(公司):数据仓库将分布在企业网络中不同信息岛定义(公司):数据仓库将分布在企业网络中不同信息岛上的业务数据集成到一起,存储在一个单一的关系型数据库中,利用上的业务数据集成到一起,存储在一个单一的关系型数据库中,利用这种集成信息,可方便用户对信息的访问,更可使决策人员对一段时这种集成信息,可方便用户对信息的访问,更可使决策人员对一段时间内的历史数据进行分析,研究事务的发展走势。间内的历史数据进行分析,研究事务的发展走势。(3)SAS定义(软件研究所):数据仓库是一

25、种管理技术,旨在通过流定义(软件研究所):数据仓库是一种管理技术,旨在通过流畅、合理、全面的信息管理,达到有效的决策支持。畅、合理、全面的信息管理,达到有效的决策支持。数据仓库的基本特征:数据仓库的基本特征:(1)主题性。从高层对系统数据,进行面向应用主题的综合、分类、分)主题性。从高层对系统数据,进行面向应用主题的综合、分类、分析和抽象。析和抽象。(2)集成性。对历史数据进行抽取,并进行清理、转化和装载等加工处)集成性。对历史数据进行抽取,并进行清理、转化和装载等加工处理和集成。理和集成。(3)稳定性。数据仓库中的数据,通常是不可更新的。)稳定性。数据仓库中的数据,通常是不可更新的。(4)时

26、变性。随着时间的变化,需要不断增加新数据;同时删除确实无)时变性。随着时间的变化,需要不断增加新数据;同时删除确实无用的数据。用的数据。(5)集合性。数据是以多维数据集合、关系集合、或者混合模式的数据)集合性。数据是以多维数据集合、关系集合、或者混合模式的数据集合进行存储的。集合进行存储的。不难看出,数据仓库是对原始数据进行多种处理,并且转换成面向主题不难看出,数据仓库是对原始数据进行多种处理,并且转换成面向主题的、集成的、稳定的、时变的综合数据集合,同时提供功能强大的分的、集成的、稳定的、时变的综合数据集合,同时提供功能强大的分析工具,对数据集合进行多方位的分析,以帮助决策人员做出更符合析工

27、具,对数据集合进行多方位的分析,以帮助决策人员做出更符合发展规律的正确决策。发展规律的正确决策。11.2.2 数据仓库的数据模型数据仓库的数据模型多维数据模型的建模要素是观察事物的角度和希望得到(关注)的事多维数据模型的建模要素是观察事物的角度和希望得到(关注)的事实数据。前者称为维度,后者称为事实。因此,主题可以表示为由多实数据。前者称为维度,后者称为事实。因此,主题可以表示为由多个维度数据和多个事实数据构成的数据模型。个维度数据和多个事实数据构成的数据模型。多维数据模型是根据分析主题所涉及数据的特征,确定分析问题的角多维数据模型是根据分析主题所涉及数据的特征,确定分析问题的角度和需要得到的

28、数据,从而确定相应的维度表和事实表及其二者之间度和需要得到的数据,从而确定相应的维度表和事实表及其二者之间的关联关系,进而抽象并建立的数据模型。即:多维数据模型是由多的关联关系,进而抽象并建立的数据模型。即:多维数据模型是由多个维度表和事实表及其关联关系组成的结构模型(如图个维度表和事实表及其关联关系组成的结构模型(如图11-2所示)。所示)。关于多维数据模型的存储,既可以使用多维数组直接存储多维数据,关于多维数据模型的存储,既可以使用多维数组直接存储多维数据,也可以使用也可以使用RDBMS的表依次存储维度表和事实表及其关联关系。的表依次存储维度表和事实表及其关联关系。说明:多维数据模型中的维

29、度表和事实表可以直接来自多维数据,说明:多维数据模型中的维度表和事实表可以直接来自多维数据,也可以来自也可以来自RDBMS的关系表。的关系表。不难看出,关系模型关注的是数据的结构;而多维数据模型关注的是不难看出,关系模型关注的是数据的结构;而多维数据模型关注的是数据的含义。数据的含义。11.2.2 数据仓库的数据模型数据仓库的数据模型常用多维数据模型:星型模型、雪花模型、星座模型和星系模型等。常用多维数据模型:星型模型、雪花模型、星座模型和星系模型等。星型模型:最常用的多维数据模型,它是以事实表为中心,维度表为星型模型:最常用的多维数据模型,它是以事实表为中心,维度表为叶结点组成的星型结构。事

30、实表用来存储事实的度量值和各个维度的叶结点组成的星型结构。事实表用来存储事实的度量值和各个维度的主码值,而维度表用来存放维度数据(维度属性数据、属性类别等信主码值,而维度表用来存放维度数据(维度属性数据、属性类别等信息)。星型模型的结构如图息)。星型模型的结构如图11-2所示。所示。事实表事实表维度维度表表维度维度表表维维 度度表表维度维度表表维度维度表表11.2.2 数据仓库的数据模型数据仓库的数据模型星座模型:由一系列同质而不同综合程度(粒度)的事实表共享一系星座模型:由一系列同质而不同综合程度(粒度)的事实表共享一系列维表而形成的星型模型。星座模型的结构如图列维表而形成的星型模型。星座模

31、型的结构如图11-3所示。所示。事实表事实表维度维度表表维度维度表表维度维度表表维度维度表表事实表事实表事实表事实表11.2.2 数据仓库的数据模型数据仓库的数据模型星系模型:如果星型模型中包含多个不同的事实表,且这些事实表连星系模型:如果星型模型中包含多个不同的事实表,且这些事实表连接的维表不完全相同,但共享多个维表,则这种星型模型称为星系模接的维表不完全相同,但共享多个维表,则这种星型模型称为星系模型。星系模型的结构如图型。星系模型的结构如图11-4所示。所示。事实表事实表维度维度表表维度维度表表维度维度表表维度维度表表维度维度表表事实表事实表维度维度表表维度维度表表维度维度表表11.2.

32、2 数据仓库的数据模型数据仓库的数据模型雪花模型:对星型模型维度表的进一步拓展、标准化和规范化。对维雪花模型:对星型模型维度表的进一步拓展、标准化和规范化。对维度层次较多的数据,则需要把星型模型中的每个维度表展开为二级维度层次较多的数据,则需要把星型模型中的每个维度表展开为二级维度表(即:雪花模型)。在雪花模型中,每个维度表都具有标准化的度表(即:雪花模型)。在雪花模型中,每个维度表都具有标准化的形式,可以最大限度地减少数据冗余,节省存储空间。形式,可以最大限度地减少数据冗余,节省存储空间。事实表事实表维度维度表表维度维度表表维度维度表表维度维度表表维度维度表表二级维二级维度表度表二级维二级维

33、度表度表二级维二级维度表度表二级维二级维度表度表二级维二级维度表度表二级维二级维度表度表11.2.3 数据仓库的数据仓库的ETLETL(Extraction,抽取;,抽取;Transformation,转换;,转换;Loading,加载),加载)是把是把OLTP系统中的数据抽取出来,并把不同数据源的数据进行转换、系统中的数据抽取出来,并把不同数据源的数据进行转换、整合和规范化,然后装入数据仓库的过程。整合和规范化,然后装入数据仓库的过程。在创建数据仓库的过程中,在创建数据仓库的过程中,ETL贯穿整个过程,贯穿整个过程,ETL整合数据的质量整合数据的质量直接影响后续的分析结果。把系统数据经过抽取

34、和转换,并载入数据直接影响后续的分析结果。把系统数据经过抽取和转换,并载入数据仓库的过程称为仓库的过程称为ETL过程,制定过程,制定ETL过程的策略称为过程的策略称为ETL策略,而完策略,而完成成ETL过程的工具称为过程的工具称为ETL工具。工具。ETL过程主要包括:数据抽取、数据转换和数据加载等。如果抽取出过程主要包括:数据抽取、数据转换和数据加载等。如果抽取出来的数据存在来的数据存在“脏脏”数据,则对数据进行转换之前,需要进行数据清数据,则对数据进行转换之前,需要进行数据清洗。洗。1.数据抽取数据抽取数据抽取是数据抽取是ETL的首要步骤,用于确定需要抽取的数据和抽取方式,的首要步骤,用于确

35、定需要抽取的数据和抽取方式,从而从一个或多个源数据库中通过记录选取,进行数据复制的过程。从而从一个或多个源数据库中通过记录选取,进行数据复制的过程。数据抽取过程将记录写入数据抽取过程将记录写入ODS(Operational Data Store)或者临时)或者临时区(区(Staging Area)以备后用。数据抽取的常用策略如下:)以备后用。数据抽取的常用策略如下:(1)陈旧档案数据抽取。一般用于保险公司和危险品公司等。)陈旧档案数据抽取。一般用于保险公司和危险品公司等。(2)全部数据抽取。抽取现存操作型环境中的全部数据。)全部数据抽取。抽取现存操作型环境中的全部数据。(3)差额数据抽取。抽取

36、上次抽取后的更新数据。变化数据捕获)差额数据抽取。抽取上次抽取后的更新数据。变化数据捕获(Change Data Capture,CDC)可以使用时间戳、)可以使用时间戳、DELTA文件、文件、读取读取RDBMS日志文件或者使用源系统中的触发器等方法实现。使用日志文件或者使用源系统中的触发器等方法实现。使用时间戳是最简单、最常用的方法。例如:超市管理系统数据库中几乎时间戳是最简单、最常用的方法。例如:超市管理系统数据库中几乎每个表均设计了每个表均设计了“插入记录日期插入记录日期”和和“更新记录日期更新记录日期”字段,这是规字段,这是规范数据库的基本标准。范数据库的基本标准。2.数据转换数据转换

37、数据转换是指根据抽取数据的特征和应用需求,设计转换规则,对抽数据转换是指根据抽取数据的特征和应用需求,设计转换规则,对抽取出的数据进行过滤、合并、解码、翻译等转换,从而为数据仓库创取出的数据进行过滤、合并、解码、翻译等转换,从而为数据仓库创建有效数据的过程。建有效数据的过程。转换过程需要理解业务侧重点(转换过程需要理解业务侧重点(Business Focus)、信息需求)、信息需求(Informational Needs)和可用源数据()和可用源数据(Available Sources)。)。具体转换原则如下:具体转换原则如下:(1)字段级数据类型转换以及增加上下文数据。)字段级数据类型转换以

38、及增加上下文数据。(2)清洗和净化。保留特定值字段或者特定范围记录、检查完整性)清洗和净化。保留特定值字段或者特定范围记录、检查完整性和清除重复记录。和清除重复记录。(3)多数据源整合。采取字段映射、代码变换、合并和派生等进行)多数据源整合。采取字段映射、代码变换、合并和派生等进行数据整合。数据整合。(4)聚合和汇总。)聚合和汇总。2.数据转换数据转换在在ETL中,中,T是核心,是核心,E和和L可以看成可以看成T的输入和输出。的输入和输出。ETL和和OLTP的的区别是区别是OLTP系统通常是单个记录的系统通常是单个记录的Insert、Update、Delete和和Select等操作,而等操作,

39、而ETL过程一般是批量操作。所以实现过程一般是批量操作。所以实现ETL,主要是,主要是实现实现ETL的转换,而且需要考虑如下方面:的转换,而且需要考虑如下方面:(1)空值处理。捕获字段空值,进行加载或者替换为具有确定含义)空值处理。捕获字段空值,进行加载或者替换为具有确定含义的数据。的数据。(2)规范数据格式。实现字段格式约束定义,对于数据源的数据,)规范数据格式。实现字段格式约束定义,对于数据源的数据,可以自行定义加载格式。可以自行定义加载格式。(3)拆分数据。依据应用需求,可以对字段进行分解。)拆分数据。依据应用需求,可以对字段进行分解。(4)验证数据正确性。利用)验证数据正确性。利用Lo

40、okup及其拆分功能进行数据验证。及其拆分功能进行数据验证。(5)数据替换。根据应用需求,可以实现无效数据或者缺失数据的)数据替换。根据应用需求,可以实现无效数据或者缺失数据的替换,建立替换,建立ETL过程的主码、外码约束,保证字段完整性。对于无依过程的主码、外码约束,保证字段完整性。对于无依赖关系的非法数据,可以替换或者导出到错误数据文件,保证记录数赖关系的非法数据,可以替换或者导出到错误数据文件,保证记录数据的加载。据的加载。3.数据清洗数据清洗数据仓库中必须存放大家公认或者经过验证是有价值的,符合一致性数据仓库中必须存放大家公认或者经过验证是有价值的,符合一致性要求的、并且符合元数据定义

41、的要求的、并且符合元数据定义的“优质数据优质数据”(Quality Data)。)。数据清洗(数据清洗(Cleaning)是指对通过检测发现的违规数据,或者清除,)是指对通过检测发现的违规数据,或者清除,或者转换成或者转换成“清洁清洁”数据,使其符合规则,然后加载到数据仓库。数据,使其符合规则,然后加载到数据仓库。常用方法:拼写检查、分类检查、名字和地址的检查与修正等。常用方法:拼写检查、分类检查、名字和地址的检查与修正等。数据清洗的执行过程:数据清洗的执行过程:(1)预处理。对于数据加载文件(特别是新的文件和数据集合)进)预处理。对于数据加载文件(特别是新的文件和数据集合)进行预诊断和检测。

42、行预诊断和检测。(2)标准化处理。利用数据仓库的标准字典,对地名、人名和产品)标准化处理。利用数据仓库的标准字典,对地名、人名和产品名等进行标准化处理。名等进行标准化处理。(3)查重。利用各种数据查询手段,避免装入重复数据。)查重。利用各种数据查询手段,避免装入重复数据。(4)出错处理和修正。出错记录和数据写入日志文件,以备后用。)出错处理和修正。出错记录和数据写入日志文件,以备后用。4.数据加载数据加载数据加载是指在完成数据的抽取、转换和清洗后,利用数据加载工具数据加载是指在完成数据的抽取、转换和清洗后,利用数据加载工具或者加载程序,把正确的、完整的、一致的高质量数据加载到数据仓或者加载程序

43、,把正确的、完整的、一致的高质量数据加载到数据仓库的过程。库的过程。在数据加载时,可以选择最基本的在数据加载时,可以选择最基本的Import、SQL Loader和和SQL语言语言等加载工具和实用程序,也可以自行设计数据转换函数库(或者子程等加载工具和实用程序,也可以自行设计数据转换函数库(或者子程序库)。序库)。通过通过ETL,可以利用源系统的数据生成数据仓库。,可以利用源系统的数据生成数据仓库。ETL是是OLTP和和OLAP的桥梁。的桥梁。ETL的常用工具:的常用工具:Informatica、Datastage、OWB、DTS和和IBM Visual Warehouse 等。等。11.2.

44、4 数据仓库设计数据仓库设计数据仓库的开发过程通常包括数据仓库的规划与分析、数据仓库的设数据仓库的开发过程通常包括数据仓库的规划与分析、数据仓库的设计与实施和数据仓库的应用等阶段。其中数据仓库的设计与实施是整计与实施和数据仓库的应用等阶段。其中数据仓库的设计与实施是整个过程的重点。个过程的重点。数据仓库设计与实施的内容主要包括:数据仓库的概念模型设计、数数据仓库设计与实施的内容主要包括:数据仓库的概念模型设计、数据仓库的逻辑模型设计、数据仓库的物理模型设计、源数据的据仓库的逻辑模型设计、数据仓库的物理模型设计、源数据的ETL设设计、数据表达与访问设计和数据仓库维护方案设计等。其中数据仓库计、数

45、据表达与访问设计和数据仓库维护方案设计等。其中数据仓库(概念模型、逻辑模型和物理模型)设计是该阶段的核心。(概念模型、逻辑模型和物理模型)设计是该阶段的核心。1.数据仓库的概念模型设计数据仓库的概念模型设计概念模型设计的主要任务是通过分析系统的运行过程和系统需求,确概念模型设计的主要任务是通过分析系统的运行过程和系统需求,确定系统的主题域,从而确定数据仓库的数据类型及其相互关系(即:定系统的主题域,从而确定数据仓库的数据类型及其相互关系(即:事实表和维度表),进而创建概念模型。事实表和维度表),进而创建概念模型。(1)需求分析。分析用户需求,确定决策类型、原始数据和系统边界。)需求分析。分析用

46、户需求,确定决策类型、原始数据和系统边界。(2)确定主题。根据用户需求和决策分析类型,确定系统应该包含的主)确定主题。根据用户需求和决策分析类型,确定系统应该包含的主题域;从而进一步确定各个主题域的要素及其描述属性。具体包括:题域;从而进一步确定各个主题域的要素及其描述属性。具体包括:分析问题时所关心的事实、分析问题时的各种观察角度和描述事实及分析问题时所关心的事实、分析问题时的各种观察角度和描述事实及其观察角度的属性。其观察角度的属性。(3)确定事实。根据主题域所包含的事实,确定用于描述事实的各个属)确定事实。根据主题域所包含的事实,确定用于描述事实的各个属性的名称、类型和粒度等具体信息。性

47、的名称、类型和粒度等具体信息。(4)确定维度。根据分析问题的观察角度,确定主题域所包含的维度,)确定维度。根据分析问题的观察角度,确定主题域所包含的维度,进一步确定用于描述维度的属性的名称、类型和粒度等具体信息。进一步确定用于描述维度的属性的名称、类型和粒度等具体信息。(5)建立概念模型。根据主题域所包含的事实和维度及其关系,建立适)建立概念模型。根据主题域所包含的事实和维度及其关系,建立适合于决策分析系统的多维数据模型。合于决策分析系统的多维数据模型。2.数据仓库的逻辑模型设计数据仓库的逻辑模型设计根据数据仓库的概念模型,不能直接建立数据仓库的物理模型,必须根据数据仓库的概念模型,不能直接建

48、立数据仓库的物理模型,必须首先建立数据仓库的逻辑模型,由逻辑模型指导首先建立数据仓库的逻辑模型,由逻辑模型指导DW的物理实施。的物理实施。设计数据仓库逻辑模型的主要任务是粒度层次划分,数据分割策略的设计数据仓库逻辑模型的主要任务是粒度层次划分,数据分割策略的确定,关系模式的定义,数据源及其数据抽取模型的确定等。确定,关系模式的定义,数据源及其数据抽取模型的确定等。(1)定义事实实体。利用)定义事实实体。利用RDBMS的关系模型,定义事实实体的关系模的关系模型,定义事实实体的关系模式及其详细信息。式及其详细信息。(2)定义维度实体。利用)定义维度实体。利用RDBMS的关系模型,定义维度实体的关系

49、模的关系模型,定义维度实体的关系模式及其详细信息。式及其详细信息。(3)定义事实实体与维度实体的联系及其属性。)定义事实实体与维度实体的联系及其属性。在设计数据仓库的逻辑模型时,需要进行适当的粒度划分、采取合理在设计数据仓库的逻辑模型时,需要进行适当的粒度划分、采取合理的数据分割策略,对事实表和维度表进行适当的划分,并定义相应的的数据分割策略,对事实表和维度表进行适当的划分,并定义相应的数据源。数据源。3.数据仓库的物理模型设计数据仓库的物理模型设计物理模型是根据逻辑模型,选择数据仓库的访问方法、设计数据仓库物理模型是根据逻辑模型,选择数据仓库的访问方法、设计数据仓库的存储结构、确定数据仓库的

50、存储位置和选择存储介质等,从而为数的存储结构、确定数据仓库的存储位置和选择存储介质等,从而为数据仓库提供最佳的物理环境。据仓库提供最佳的物理环境。主要任务:设计数据的存储结构、确定数据的存储位置和索引策略主要任务:设计数据的存储结构、确定数据的存储位置和索引策略(1)设计存储结构)设计存储结构(2)确定存储位置。)确定存储位置。(3)确定索引策略。)确定索引策略。总之,数据仓库是企业体系化环境的核心,是建立智能决策支持系统总之,数据仓库是企业体系化环境的核心,是建立智能决策支持系统的基础。在实施其数据仓库时,数据仓库模型设计是关系到数据仓库的基础。在实施其数据仓库时,数据仓库模型设计是关系到数

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁