(计算机软件与理论专业论文)基于ogsadai的分布式异构数据集成.pdf_第1页
(计算机软件与理论专业论文)基于ogsadai的分布式异构数据集成.pdf_第2页
(计算机软件与理论专业论文)基于ogsadai的分布式异构数据集成.pdf_第3页
(计算机软件与理论专业论文)基于ogsadai的分布式异构数据集成.pdf_第4页
(计算机软件与理论专业论文)基于ogsadai的分布式异构数据集成.pdf_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

山东大学硕士学位论文 摘要 随着互联网与网格的发展,许多应用开发中遇到了数据分布在不同的地点 的情况,而且这些数据存在着异构性,不但在数据存储上不同的,在信息表示上 也不同。为开发应用需要对这些分布式的异构数据进行有效集成。同时由于在这 些数据的基础上已经开发了各种应用系统,所以在对数据进行集成时要求不能影 响已有的系统。数据集成的目的是实现对分布式异构数据的有效集成和透明访 问,而不改变原有的数据。数据集成中数据提供者希望能方便地将数据发布出去 供集成,并要求保证自身数据源的安全性,数据使用者希望通过数据集成能透明 访问需要的数据,而不必了解太多的细节。 针对分布式异构数据集成的特点和要求,在o g s a - d a i 的基础上,本文设 计和实现了一个数据集成中间件,满足各方面的要求,实现对异构数据的有效集 成。本文首先分析了数据的异构性和数据集成中各角色的特点要求,以及数据集 成的模式,进而提出了一种有效实现异构数据集成的方法。对于各数据源中数据 的异构性,设计实现了数据服务来进行屏蔽,在指定信息描述标准的基础上,提 出了通过映射的方法解决数据在信息表示上的异构性。根据信息描述标准将数据 源中的数据映射到一张虚拟数据表中,数据源中数据与信息标准之间的映射关系 保存在数据服务中的信息映射表中,这种映射关系可以动态改变,用户通过数据 服务对虚拟表进行查询。为将对关系数据库和x h l 数据的查询相统一,本文提 出了一种简化s q l 语言s i m s q l ,用户使用s i 卜1 一s q l 对虚拟数据表中进行 查询,数据服务在真正访问数据源时需要将s i m s q l 转化为s q l 或p a t h , 这种转化依据信息映射表进行,同时对于从数据源获取的数据,根据信息映射表 进行格式的转化,本文中给出了这些转化的具体算法,最后通过数据服务传递给 用户。由于数据服务具有标准的w e bs e r v i c e 接口,从而实现r 对数据源的细 节信息隐藏,达到对数据源的透明访问。本文中还介绍了一个数据服务开发部署 工具,说明了如何通过这个工具将数据源封装为数据服务并部署发布出去。 文章中介绍了建立的信息发布中心,其实现对实体信息标准描述的建立和 发布,以及对数据服务的分类、注册和管理。最后,介绍了数据集成中心的设计 和实现,数据集成中心实现对多个数据服务的数据集成,数据集成中心将原分布 山东大学硕士学位论文 式的异构数据有效的集成起来,对用户提供数据集成访问,隐藏了数据源的细节, 提供对分布式异构数据源的集成和透明访问。 关键词:数据集成,异构,分布式,0 g s a - d a i i 山东大学硕士学位论文 a b s t r a c t a l o n g 谢也也ed e v e l o p m e n to f t h ei l l t e m e ta n dg r i d ,m a n ya p p j i c 撕o n sf i n dt h e n e e d e dd a t aa td i b r e n t1 0 c a t i o n st h ed a t aa r eh e t e r o g e n e o u s ,n o to n l y 血ew a yo f d a t as t o r a g e ,a l s ot 1 1 es t y l eo fi n f o m a 矗o ne x p r e s s e di tn e e d st oe f f b c 石v e l yi n t e g r a t e t h ed l s 蜘b u t e dh e t e g e n e o u sd a t af 。rd e v e l o p l n g 印p l i c a t l o n s b a s e do n 出e s ed a t aa v a n e 移o f 印p l i c 撕o n sh a v eb e e nd e v e l o p e d ,s oi n t e g r 撕o no ft l l ed a t as h o u l dn o t a f f e c tm ee x i s t i n g s y s t e m d a _ c ai n t e g r a t i o n i sa i m e da ta c h i e v i n gt h ee h b c d v e m t e g r a n o no fd i s 砸b u t e dh e t e r o g e n e o u sd a t aa n dp r o v n gt r a 】1 s p a r e n n yd a t aa c c e s s t h ed a t ap r 0 、,i d e r sh o p ef o rd a t ae a s i l yp r o v i d e d ,a 1 1 d 肌s 埘n gt l l es a f e 哆o fm e i ro 啪 d a t as o u r c e sd a t au s e r sc a l lt r a n s p a r e n t l ya c c e s st h en e e d e dd a t a 谢t 1 1 0 u tl d l o 、i n gt 0 0 m u c hd e t a j l a c c o r d i n gt ot 1 1 ec h a r a c t e r i s t l c sa 1 1 dr e q u i r e m e i 】t so fd i s t r i b u t e dh e t e r o g e n e o u s d a t ai n t e g r a t i o n ,廿l i sp 印e rd e s l 印sa 工l di m p l e m e n t sad a t ai n t e g r 丽o n 嘶d d l e 啪r e b a s e do n0 g s a d a inm e e t sa l lt h er e q u i r e m e n t s 趾da c h i e v e sa ne 舭c 廿v e i n t e g r a t i o no fh e t e r o g e n e o u sd a t a t h i sp 印e ra n a l y z e sm eh e t e r o g e n e 崎o fd a t aa 1 1 d t 1 1 er 0 1 ei ni n t e g r a t i o n ,a n dd a t ai n t e g r a t e dm o d e ld a t as e r v i c ei sd e s i g n e dt oh i d et h e h e t e r o g e n e o u sd a t as o u r c e s o nm eb a s i so fs p e c i 母i n gt 1 1 ec r j t e r i ao fi n f o 肌a t i o n d e s c r i p d o n ,b yt l ew a yo fm a p p i n gs o l v et 1 1 e d a t ah e t e m g e n e i t ) ro ni n f o r m a t i o n e x p r e s s e da c c o r d i n gt 0m ei n f o m l a t i o l ld e s c r i b e ds t a 工1 d a r d s ,m a pm ed a t at oa 访r 七i l a l t d b l eu s e r sq u e r yt h ev i r t u a ld a t at h r o u g hd a t as e i c e t h i sp 印e rp r e s e n t sa s i m p l m e ds q ln 锄e ds m 互- s q lt oq u e r yr e l 撕o n a ld a t a b a s ea n dx m ld a t a b a s e w h e nr e a l l yn e e dt o 、,i s i tt l l ed a t as o u r c e ,s i m s q ls h o u l db e 拄a n s f o n n e di m os q l o rx p a t h t h et r a n s f o 肿撕o na l g o r i t h mi sp r e s e n t e di n 也1 sp 印e lm e a l l w h n e ,m e d a t ao b t a i n e df r o mt 1 1 ed a t as o u r c e 龇dt 1 1 ef o m l a ti sa l s oc h a n g e da c c o r d i n gt ot h e i n f o r m a t i o nm a p p i n gd a t as e r v i c e sh a v os t a i l d a r dw e bs e r v i c ei n t e h c e ,m u s r e a l i 五n gt h ei n f o m l a t i o nh i d i n ga n d 廿a 1 1 s p a r e n c yv i s i 缸n gf o rd a t as o u r c e st h i sp 印e r m s op r e s e n t sad a t as e r v i c ed e v e l o p m e n ta i l dd e p l o y m e n tt 0 0 1a 1 1 de x p l a i n sh o wt ou s e 1 l l i st 0 0 1f o re n c 印s u l a t i n gd a t as o u r c e i i i 山东大学硕士学位论文 t h ep a p e ra l s oi n 订o d u c e sa ni n f o 册a t i o n d i s 们b u t i o nc e i l t e r i tr e a l i z e s e s t a b l i s h i n ga n dp u b l i s h i n gt h ec r i t e r i ao fi n f o r m a t i o nd e s c r i p t i o ni ta 】s oh a sm e 矗m c t i o no fc l a s s i f i c 甜o n ,r e g i s t r a c i o n ,d i s c o v e r ya n dm a n a g e m e n tf o rd a t as e n ,i c e s f i n a l l y t 1 1 ed e s i g na n dr e a l i z 弧o no fd a t ai n t e g r a t i o nc e n t e ri sp r o v i d e dt h ed a t a i n t e g r a t i o nc e n t e re f f e c t i v e l yi n t e 舒a t e sd i s t 曲u t e dh e t e r o g e n e o u sd a 协u s i n gd a t a s e v i c e s柚d p r o v i d e s t h e i n t e g r a d o n越dt r a n s p a r e n c yv j s n o f d s t r i b u t e d h e t e r o g e n e o u sc l a t a k e yw 口r d s :d a t aj n t e g l - a t i o n ,h e t e r o g e n e o u s ,d i s t r i b u t e d ,o g s a d a i 原创性声明和关于论文使用授权的说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究所取得的成果。除文中已经注明引用的内容外,本论文不 包含任何其他个人或集体已经发表或撰写过的科研成果。对本文的研 究做出重要贡献的个人和集体,均已在文中以明确方式标明。本声明 的法律责任由本人承担。 论文作者签名:堑纽日期 。州7 5 列 关于学位论文使用授权的声明 本人完全了解l i j 东大学有关保留、使用学位论文的规定,同 意学校保留或向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅;本人授权山东大学可以将本学位论 文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或其他复制手段保存论文和汇编本学位论文。 ( 保密论文在解密后应遵守此规定1 论文作者签名:j 猛逸 导师签名: 日期:型虫:盎幽 山东大学硕士学位论文 第一章绪论 1 1 研究背景 随着i n t e r n e t 的飞速发展、计算机应用技术的普及和深入,越来越多的企 事业单位建立了基于i n t e m e t 的应用系统,从而提高各个单位的业务运作效率、 节约成本、规范管理,增强其竞争力。然而,各企业通常采用不同的技术和体系 结构来构建自身的信息系统,企业内部以及企业之间各个的应用系统在发挥其各 自的作用,各系统的数据是动态的、异构的,多数情况下,这些系统己形成了一 个个巨大的信息孤岛。有限的缺少数据交换和信息不一致成为各企业信息共享的 严重缺陷,使得资源得不到最大利用。现在集成原有系统和数据是开发新系统的 有效途径,如过采用全盘推翻重新开发的方案,考虑重新开发业务系统,无论实 际从时间、成本、或者是实施等方面考虑都是不可行和不现实的。实现企业信息 集成的关键是底层异构数据的集成【l ,z j 。 同时,网格( g r i d ) 是成为互联网信息技术发展的新趋势,是现代信息技术 发展的必然产物【3 ,4 】。现代社会产生大量的数据和信息,而利用这些数据需要更 大的计算能力,许多领域的计算和资源共享问题促使要利用分布在各地的计算机 和信息资源,只有通过高速网络连接起来,才能共同完成有关的任务。网格是高 性能计算机、数据资源、因特网三种技术的有机组合和发展,它把分布在各地的 各种计算机连接起来,进行资源共享。网格的根本特征是资源共享,将软件资源、 计算资源、存储资源通信资源、信息资源、知识资源等的全面连通,通过网格系 统进行利用,使网络信息资源能充分利用,从而发挥网络信息资源的价值,相互 协同组成强大的解决问题环境。需要解决的问题通过网格环境找到相应的资源并 得到解决。随着网格应用范围的扩大,建立问题解决环境用到的资源越来越多, 其中对数据资源进行有效地访问成为必须解决的重要问题之一【5 ,6 ,7 ,引。在而在实 际应用中,用到的数据分布在不同的节点上,并且这些数据是异构的,同时在这 些数据的基础上开发了应用的系统,所以我们需要考虑如何将多个节点上的异构 数据资源有效的集成起来开发新的应用,而不影响已有的系统【9 】。 数据的异构性【1 0 ,1 1 ,1 2 】主要体现在以下几个方面:一方面数据资源在存储管 理上是异构的,存储在不同的操作系统以及数据库管理系统( d b m s ) 和文件系 山东大学硕士学位论文 统中,而不同的数据库管理系统和文件系统其连接使用方式是不同的,另一方面 数据资源在表示上也是异构的,由于没有完整权威的标准,同类资源信息描述表 示的格式也是不同的。异构性的存在阻碍了用户对数据资源的有效访问,用户如 想获取相关数据首先要知道数据资源所在管理系统的类型和使用方式,如数据库 类型、地址等,同时还必须要知道数据资源的表示细节,如存储在哪几个数据库 表中、用哪些字段来表示、每个字段类型和含义等,对于用户来说完全了解这些 表示细节是困难的,尤其是在需要访问许多个数据资源,而每个数据资源的存储 细节都是完全不同的时候。 因此,在不重新设计已有的数据库和改动应用系统的前提下,开发一个异 构数据集成中间件是非常必要的,是解决数据以及信息集成的有效方式。本文主 要研究如何将异构的数据有效的集成起来,并且保证异构数据源的可扩展性,使 用户可透明地获取需要的数据,而不用考虑数据源在什么位置、使用什么工具存 储、其内部是如何表示信息的、应用环境中有多少个可用数据源,实现了对数据 资源的集成和透明访问。同时保证新的数据资源可方便地扩充集成进来从而提供 访问使用。 1 2 研究现状 目前,人们研究的关于数据集成方案的很多【1 3 2 1 1 ,各不相同。但就其基本 方法来说,大体上可归为两类:仓库法和虚拟法。 仓库法:建立一个数据仓库,将参加集成的各数据源的数据副本,按照集 中、统一的视图要求,转换成符合数据仓库的模式,并存入数据仓库,同时,系 统将提供对该数据仓库的查询机制。这种方式的优点是既可用于数据集成,又可 用于决策支持;缺点是数据更新不及时、数据重复存储,比较适用于简单系统中。 使用的技术主要涉及如何有效的加载数据,增量维护数据等【2 2 】。 虚拟法:也称为中间件法,在这种方式下,数据存储位置保持不变,集成 系统仅提供一个虚拟的集成视图以及对这个集成视图的查询处理机制,用户针对 集成视图提出查询,集成系统必须将全局查询重写为对各数据源的查询然后各数 据源根据查询要求自行独立处理。这种方式不需要重复存储大量数据,数据更新 及时,比较适合于高度自治、集成数量多且更新变化快的数据集成系统,是目前 2 山东大学硕士学位论文 主要的研究方向。虚拟法体系结构中使用的技术与传统的数据服务器中的技术有 着很大的不同,前者采用的技术更多地涉及到查询上的代数操作,后者采用的技 术大部分集中在的查询计算以及与存储有关的问题上。 网格中数据存取和集成 2 3 】的主要研究项目是o g s j - d a i 2 4 1 。o ( 迟a d a i ( o p 翻ds 酬c e 觚h i t e c 帆d a t aa c c 豁s 觚dn e g r a l i o l l ) 是由苏格兰e p c c 和英格兰的mh u r s l 盯合作开发的一个网格中间件,用于简化对数据网格中 的数据访问和集成。0 g s a d 越项目产生的催化剂是大量具有数据库访问需求 的“大型科学”项目,例如a s 仃0 g f i d 、e d i a m o n d 、d a _ t a m i n i n g 筋d 和m y g 砌, 这些“大型科学”项目需要一个中间件提供对大型数据库的访问。o g s a d a i 的 结构如同一个工具包,并且带有一些扩展接口,开发人员可以扩充自己的功能来 满足特定的需要。它通过基于w e b 服务的接口来提供数据资源,这样就可以简 单地将数据资源作为网格中的基本元素进行操作。目前所支持的数据源有关系数 据库( 通过j d b c ) 、诅。数据库( 通过咀d b ) 和文件系统。当新的需求 出现时,开发人员也可以编写自己的数据源支持模块。o g s a - d a j 对数据资源如 关系数据库、咀,数据库l 2 5 j 进行封装,使用户通过w e bs e i c e 来访问数据资 源,通过o g s a d a lw e bs e r v i c e 可以对数据资源进行查询、更新和传输等。 o g s a d a i 致力于建造通过网格访问和集成来自不同的孤立数据源的中问 件,定义了数据访问的接口,隐藏了数据库驱动、数据传输等技术细节,使用户 通过统一的w e bs e i c e 接口连接使用数据资源,为资源的使用提供的便利,为 资源的共享提供了基础。但0 g s a d a j 只是屏蔽了数据资源在存储管理上的异 构,对于数据资源信息表示上的异构性没有进行处理,如想获得资源还必须要了 解原信息表示的细节,所以还不能实现对数据资源的有效访问。在数据集成中, 要提供对单一数据源的方便透明访问,同时由于资源的分布式特点,还需要对多 个异构的数据资源进行集成,使用户能透明地获取多个同类的数据资源。 1 3 本文研究内容 本文探讨了分布式异构数据的集成方式,从数据提供者和使用者的角度出 发,分析和解决了数据集成中的数据异构性问题。提出通过信息映射,将原关系 数据库和沮。数据库中的数据映射到一张虚拟的表中,使用户不必了解原数据 山东大学硕士学位论文 资源的表式信息即可查询获取数据。通过信息映射解决数据在表示上的异构性, 通过w e bs e n ,i c e 解决数据在存储上的异构。同时设计和实现了一个分布式异构 数据集成中间件,使数据提供者方便地将数据资源发布出去供使用,使数据使用 者方便透明地访问分布式异构数据资源。 本文的主要工作有: 1 ) 分析分布式异构数据集成中的问题,提出和实现了异构数据集成的中间 件,结合信息中心实现对多个分布式异构数据的有效集成,并有很强的扩充性, 能方便地添加新的异构数据资源。 2 ) 分析了数据的异构性,提出并详细讨论了如何通过信息映射机制来解决 数据在表示上的异构。 3 ) 开发了数据服务部署工具,方便地将资源封装为屏蔽异构的数据服务。 4 ) 提出了对关系数据库和血数据库的统一查询方式,并实现。 5 ) 开发信息发布中心和数据集成中心,用于信息标准的发布和数据的集成。 1 3 本文组织结构 第二章介绍了分布式异构数据集成用到的技术以及数据的异构性。 第三章分析了异构数据集成中的问题,给出了分布式异构数据集成中间件 的设计。 第四章具体介绍了如何解决数据的异构性问题。 第五章介绍了一个信息发布和数据服务注册检索中心,以及数据集成中心 的设计和实现。 第六章总结了本文的工作并提出了工作展望。 4 山东大学硕士学位论文 第二章相关介绍 2 1 x m l 和w e b s e r v i ) m 也是w 3 c ( w o r l d w i d ew e bc o n s o n i 硼幻于1 9 9 8 年定义发布的s g m l 的 一个简化子集口们。它是一种标准化了的可以在w e b 上表示结构化信息的文本格 式。 hl 具有良好的可伸缩性和灵活性,不仅提供对资源内容的表示,同时也 提供资源所具有的结构信息,适合于表示各种信息,因而被广泛接受。目前已经 被应用于多领域中。 在进行异构数据集成方面f 珊8 一,) ( 1 儿具有如下重要特征和优势: 1 咀。直接用于i i l t e m e c ,它的主要设计目标是在w e b 上保存和传递信息。 2 ) m 几是可扩展的,用户可以根据需要定义自己的标记。 3 沮。具灵活性,儿提供了一种结构化的数据表示方式,使得用户界 面与结构化数据相分离。 4 ,) m 几支持以全球统一的标准来定义描述数据。 5 沮。支持将不同来源的信息集成为统一的文档。 6 沮。可支持在各种分布应用程序之间传递信息。 7 ) m 几的自描述性质能够很好地表现许多复杂的数据关系,使得基于儿 的应用程序可以在沮。文件中准确高效的搜索相关的数据内容【3 0 】。 儿已成为数据表示的一个开放标准,它的这些特征有利于不同系统之间 的信息交流,因而在异构系统的数据交换和集成中发挥了重要的作用p 1 2 3 3 1 。 w e bs e r v i c e 是一套标准,它描述了一个面向服务的、基于组件的应用体 系结构 】。它使用开放的标准协议,将各种组织、应用程序、服务及数据链接起 来,实现跨平台数据和服务的共享。w e bs e n ,i c 嚣技术基于w e bs e n ,i c e 标准, 可以从多个角度来定义:从技术方面讲,一个w e bs e i c 鼯是可以被u r i 识别 的应用软件,其接口和绑定能被咀。描述和发现,并可与其他基于v 儿消息 的应用程序交互。从功能角度讲,w e bs e i c 路是一种新型的w e b 应用程序, 具有自包含、自描述以及模块化的特点,可以通过w e b 发布、查找和调用。w e b s e i c e s 是h l t e m e t 分布式计算环境中提供基础功能的编程模块( 网络组件1 ,、b 山东大学硕士学位论文 s e i c 豁具有的开放通讯标准和强调互操作的特点,已经使其成为异构系统集成 的平台和主要手段。尽管不同的组织和机构对于w e bs e r v i c 铭的定义略有不同, 但具有共同点: ( 1 ) w e bs e i c 髂通过标准协议向网络程序提供一定的功能,通常采用的标 准协议是s o a p ( s i m p l e0 b j e c ta c c 嚣sp r o t o c 0 1 ) 。 ( 2 ) w e bs e r v i c e s 使用w s d l ( w e bs e r v i c e sd e s c r i p t i 伽l 粕g g e ) 详细描述其 接口,用户使用w s d l 这个文档和w e bs e n ,i c 鹤进行交互。 ( 3 ) w e bs e i s 需要注册到u u d i 注册中心( 嘶v e r s a ld i s c o v e r yd e s 翻p t i o n 锄d i n t e g r 撕o n ) ,便于潜在用户查询、发现和使用。 w e bs e r v i c e 是一套基于旺的标准,提供了采用统一的方法进行服务的描 述、注册、查询的模式,可以用它来解决信息孤岛问题,实现了信息的共享。也 可以将w 曲s e r 、,i s 理解为种部署在w e b 上的对象,以一种松散的服务捆绑集 合形式动态地创建应用,是以) m 几为主的、开放的w e b 规范技术,适合用于异构 数据集成中f 3 6 ,3 口”。 2 2 分布式数据的异构性 分布式异构数据集成的要集成的数据首先是分布式的,他们分布在不同的 地点,这一方面是由于历史的原因,另一方面也可能是应用的需要。随着网络的 普及以及性能的提高,集成原有系统和数据是开发新系统的有效途径,同时分布 式应用的开展和业务数据的增多,将数据存放到不同的地点成为必然。相对于分 布式的特点,要集成的数据更重要的在于其异构性。最常见的情况是采用异构数 据库系统。异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共 享和透明访问。每个数据库系统在加入异构数据库系统之前就已经存在,拥有自 己的册m s ,异构数据库的各个组成部分具有自身的自治性,在实现数据共享的 同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构 数据的异构性主要体现在以下两个方面: 1 ) 数据在存储上的异构。数据所在的基础操作系统不同,他们可能是 w i n d 0 哪、l i n 慨、d o s 等,这些操作系统的使用方式完全不同。最主要的是数据 存储在不同的数据库和文件系统中,数据在存储模式上不同,一般的存储模式包 6 山东大学硕士学位论文 括关系模式、对象模式、对象关系模式和文档嵌套模式等几种,其中关系模式为 主流存储模式。对于不同的数据库管理系统厂商提供了不同的使用接口,并且对 于数据库有多种连接方式如】d b c 、0 d b c 、j d b c o d b c 桥等。对于同类存储 模式的数据库他们的连接也不尽相同,如各种关系数据库的j d b c 连接需要不同 的驱动类。进一步,对于不同存储模式的数据库他们的数据获取方式是不同的, 如关系数据库使用s q l 语句,而咀。数据库则使用蛐和x q u e r y 等【3 9 】。 2 ) 数据在信息表示上是异构的。数据用来存储相关实体的信息,实体需要 用一定的属性来描述,实体的属性就是实体的信息,在计算机内用数据来表示。 实体由哪些属性来表示应由相关领域专家来建立,但由于历史等的原因,大多实 体还没有完整的标准描述信息,而且从不同的角度实体的属性不同,对于不同的 人员来说他们关注的实体属性重点不同,这就导致了不同的人员在对实体进行数 据存储时采用了不同的标准。具体表现在对于同样实体的相关数据在关系数据库 中存储时建立了不同的表,表中的建立了不同的字段,对于实体某属性的描述数 据,不但这些表和字段的名字不同,属性也不同,例如对于实体“名称”属性的 描述,可能在一个关系数据库中使用类型为“v a r c h a r ”的字段“名字”,在另一 关系数据库中使用类型为“蜘”的字段“n 锄e ”。同样对于相同的属性在不同 的关系数据库中可能采用不同数目的字段来表示,有的采用一个字段来表示,有 的采用多个字段来表示,例如对于实体“数量”属性的描述,可能用名字为“数 量”的一个字段来表示,也可能用名字为“数”表示个数的字段和用名字为“量” 表示单位的字段来共同表示。而由于每个人建数据库存储实体属性时所关注的角 度不同,即用到和存储的实体属性不同,在一个数据库中存储的属性在别的数据 库中可能并不存在。这种数据在信息表示上的异构更表现在实体属性数据也可能 存储在其它模式的数据库中,如x m l 数据库,这时数据存储以沮。文档的形 式存储,没有关系数据库中表和字段的概念,数据以集合和元素的格式存储。这 种不同模式数据库本身数据存储性质的不同,更增加了数据的异构性,增加了数 据整合的难度。 数据在存储和信息表示上的异构,使得对分布式的多个数据源的集成非常 困难,尤其在数据源个数和种类等信息不确定,动态改变的情况下。而数据在信 息表示上的异构更是要解决的重点和难点。异构数据集成就是要屏蔽数据在存储 山东大学硕士学位论文 和信息表示的异构性,将分布的多个数据源中的相关数据有效地集成起来,一方 面,需要对数据源进行封装,隐藏数据源在存储、连接等方面的差异,使数据使 用者在使用数据时不需要考虑数据源所在的操作系统类型、数据库类别、数据库 连接方式等,同时提供统一的数据访问方式,另一方面对于原来信息的表示格式 进行统一,建立实体的表示标准,在不修改原数据的情况下使各个数据源中存储 的信息都用相同的标准来表示,达到信息在表示上的统一,实现信息的统一和透 明访问。 山东大学硕士学位论文 第三章分布式异构数据集成设计 3 1 数据集成中的角色 本文中将分布式异构数据集成中的角色分为三类:数据提供者、数据中间 人和数据使用者,他们在数据集成中的作用以及对数据集成的要求不同,本文的 工作就是实现一个数据中间人,作为数据集成中间件为数据提供者和使用者服 务,在设计实现时应充分考虑数据提供者和数据使用者的需要,使他们尽可能的 方便。 1 ) 数据提供者;分布式异构数据资源的所有者,他们拥有原始数据的所有 权,提供数据的使用,异构数据集成中考虑的是如何将这些分布式的异构数据有 效集成起来,提供透明的访问。作为数据所有者,他们在数据集成中的要求和特 点是: 方便性:能够方便地将数据发布出去供使用,所做的工作越少越好。如果 在数据集成中要求他们对自己的数据进行复杂的处理,一方面他们可能不是计算 机专业人员,让他们进行计算机方面的相关处理不现实,另一方面,经过繁琐的 步骤才能够将数据发布出去,可能打消他们的积极性和参与性,不利于数据源规 模的扩展。 安全性:外界连接使用自己的数据时,数据要被安全的使用,不允许自身 管理的数据源( 数据库) 中的数据被修改和删除,在数据发布出去之后,外界对 数据只有查看的权限,没有更新、删除的权限,保持数据的安全性。 细节隐藏:虽然将数据提供出去使用,但他们可能不希望暴露自己数据存 储方面的细节,一方面集他们要使外界能够访问到自己的数据,另一方面由于保 密性的需要,如有的公司存储数据所建立的表的结构非常合理,为竞争的需要, 他们不可能将自己数据库中的所以细节都暴露出去。 动态发布;对于数据库中的数据,他们应该能够动态的选择发布哪一部分 信息,对数据集成无关的或者他们认为是机密的都可能不发布出去,对于每一个 数据源,可能在多个数据集成应用中都要使用,而每个应用中集成的数据部分不 同,在不改变数据源的情况下要达到这种应用要求,需要对数据源能进行动态的 发布,一个数据源可以对应多个数据发布,每个数据发布中看到的数据源中的数 9 山东大学硕士学位论文 据是不同的。例如通过一个数据发布能看到数据源中的“功能”字段的数据,通 过另外一个则看不到。 独立性:在原来数据源的基础上可能已经建立了相关的应用,在对其进行 数据集成时不能影响到这些应用,也就是如果数据源是数据库则不能对数据库有 任何改动,保持数据源基础上多种应用的独立性。 2 ) 数据中间人;负责开发数据集成中间件,将分布式的异构数据集成起来, 他们的要求和特点是: 屏蔽异构:能够集成多种异构的数据源,不管是关系数据库还是咀。数据 库都能够有效的集成起来,屏蔽掉前面所讲的数据在存储上的异构性和信息在表 示上的异构性,在集成的基础上提供单一的访问接口,通过简单的访问接口提供 对多个异构数据源的透明访问。 数据源可扩展:当有新的数据源时,不管数据源的结构如何( 关系数据库 还是) m 几数据,数据的存储结构如何等) ,在不改动的基础上能够将新数据源 有效地集成进来,并且能将已集成的数据源删除掉,做到数据源的动态增减,从 而达到对数据源的动态选择。这种扩展性是保证数据集成中间件能广泛应用的基 础。 3 ) 数据使用者:他们是异构数据的使用者,通过中间人获取到统一集成起 来原分布式的异构数据,然后利用这些数据开发各种相关的应用。他们对数据集 成的要求和特点是: 访问简单:通过简单的方式即可访问原来分布在各地的异构数据,并能将 对分布式异构数据的访问嵌入到各种应用之中。这就需要数据集成中间件能提供 跨平台跨语言的简单的访问接口。 透明访问。能够对分布式的异构数据进行完全透明的有效访问,当需要数 据时向数据中间人提出要求,即可透明地获取需要的数据,而不用考虑数据源在 什么位置、使用什么工具存储、其内部是如何表示信息的、有多少个分布式的可 用数据源。 在本文开发的数据集成系统中,数据提供者对应分布式的异构数据源,数 据中间人对应数据集成中间件,数据使用者对应数据应用客户端。图3 1 和图 3 2 给出各角色间的关系。 l o 山东大学硕士学位论文 暑曼曼詈曼曼曼曼曼墨量罾量量曼曼置量曼暑鲁曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼曼量_ 图3 1 数据集成中各角色间的关系l 3 2 数据集成的模式 图3 - 2 数据集成中各角色间的关系2 根据前面的介绍,要想实现对分布式异构数据的有效集成和透明访问【舯】, 必须屏蔽数据的异构性,在屏蔽了各数据源的异构性后才能方便的将原来多个分 布式的数据源集成起来。数据异构的屏蔽可以由数据提供者处理,也可以由数据 中间人在数据集成中间件中处理。根据数据异构屏蔽处理的位置不同,我们将数 据集成分为两种模式: 分散式:由数据提供者处理屏蔽数据的异构性,根据领域专家制定的实体 信息描述标准,数据提供者将自身的数据源进行处理,屏蔽数据在存储上的异构 性,通过标准的访问接口提供对数据的访问,使使用者看不到原来的操作系统类 型、数据源类型( 关系数据或x m l 数据库) 、原数据的存储结构( 原来表的结 构和字段名称等) 等细节,用户看到的数据源中的实体信息是用信息标准来描述 的,通过统一的接口就可以访问。由于访问分布式的多个数据源得到的是用信息 标准描述的数据,格式是一致的,所以将这些需要的数据集成起来非常方便,而 且新的数据源可以方便的插入并集成,不需要的数据源可以随时删除不再集成, 实现数据源的动态组合,用户可以方便的选择自己要集成的数据源。 优点:数据集成中间件集成数据源方便,系统可扩展性强。 缺点:对数据提供者要求高。 集中式:数据的异构性由数据中间人通过数据集成中间件处理进行屏蔽。 为数据中间人能访问到数据源中的数据并根据信息描述标准进行处理,数据提供 者需要对数据中间人提供数据源的相信信息,包括数据源类型( 哪种关系数据库 山东大学硕士学位论文 或) 几数据库) 、数据源连接信息( i p 地址、用户名、密码等) 、详细的数据库 信息( 数据库名、用到的表的详细结构、各表中每个字段的意义等,如为v 儿 数据则须提供咀。文档的组织结构、各节点意义等) 。数据中间人通过数据提 供者提供的数据源详细信息访问数据源获取相关的数据,根据信息描述标准对获 取的数据进行转化处理,将从各数据源获得的数据进行格式的统一后集成在一 起。在这种模式下,数据集成中心需要将各个数据源的详细信息记录下来,并进 行有效的管理,不利用数据源的扩展。 优点:对数据提供者要求低。 缺点:不利于扩展,数据源信息暴露多。 3 3 数据集成中间件的设计 本文采用分散式的集成模式实现对异构数据源的集成,针对数据的异构性, 我们将数据集成的一部分部署到数据源上,来对数据的异构性进行处理,同时提 供数据源的封装工具,使数据提供者通过工具方便地对数据源进行处理,从而屏 蔽数据的异构性,提供对数据源的统一标准访问【4 “。也就是我们开发的数据集成 中间件是分布式的【4 2 l ,一部分部署在数据源上屏蔽数据的异构性,另一部分负责 对从各个数据源得到的数据进行集成【4 3 州。 我们的数据集成中间件的设计思路是以一种称为数据

温馨提示

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

评论

0/150

提交评论