




已阅读5页,还剩73页未读, 继续免费阅读
(计算机软件与理论专业论文)多数据库中间件的局部代理的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着应用需求的不断增加,越来越多的用户希望能够透明地访问和处理来自 多个数据源中的数据。然而,这些数据源可能在物理和逻辑上都存在着很大的差 异。物理上不同的数据源可能会采用不同的数据格式、存储方式、访问控制策略 等;逻辑上则可能有不同的数据模型、操纵语言和查询处理能力,即使某些数据 在物理和逻辑结构上相同,也可能出现语义上的差异。传统的数据集成技术,已 无法适应人们及时获取更多更新更全面数据的需要。因此,研究分布异构环境下 多种数据源的集成成为重要问题。 我们课题组提出的多数据中间件模型恰是解决分布异构环境下多种数据源的 集成问题的。该多数据库中间件是“建立在d b m s 之上的d b m s ”,在应用中通 过对多数据库中间件的使用,使得用户可以透明地访问多个分布异构数据源( 数 据库系统或者文件系统等) 。多数据库中间件采用j a v a 语言实现,在功能上完成 了源数据和目的数据之间的双向同步异步更新,支持局部数据库系统动态加入或 撤出,即局部数据源的即插即用。 本文首先分析了国内外分布异构数据源集成和互操作,多数据库技术的研究 现状。接着介绍了我们课题组提出的多数据库中间件模型。该多数据库中间件模 型由上推机( 局部代理) ,集成机,s q l 服务器等几部分组成。本文的重点是该多 数据库中间件中的局部代理的设计与实现。 此外,本文也讨论了我们多数据库中间件系统中的数据双向同步更新机制。 在论述这个内容时,首先分析了当前数据库更新技术的发展情况以及其不足之处, 在此基础上提出了我们的异构数据双向同步更新机制。系统中,利用触发机制来 实现数据的抽取、更新。 再次,在局部数据库数据的上推下拉实现问题上,提出了一种形式化的描述 方法,描述上推需求,使异源数据呈现为一致的视图,从而使应用程序可使用传 统的方法( 如s q l 、o d b c 、j d b c 等) 访问异源数据,且体现异源环境下的数据上推 的主动性自定义、需求和控制及过程的自定义性,以及上推事件定义、敏感定义、 输出整合定义等问题。文中给出了数据上推描述语言的数据上推描述、数据库描 述以及语法分析。 关键字:多数据库系统;中间件;数据一致性;双向同步,异步更新:数据描述语言 华南理工大学硕士学位论文 a b s t r a c t w i t ht h ei n c r e a s i n gd e m a n do fa p p l i c a t i o n ,m o r ea n dm o r eu s e r sw a n tt oa c c e s s a n dp r o c e s sm a n yd i s t r i b u t e dd a t as o u r c e ,t r a n s p a r e n t l y h o w e v e r , t h e s ed a t as o u r c e s d i f f e rf r o mt h ep h y s i c a la n dt h el o g i c a la s p e c t p h y s i c a l l y ,d i f f e r e n td a t as o u r c e sm a y b ei nv a r i o u sf o r m a t 。s t o r a g ea n da c c e s sc o n t r o lp o l i c i e s l o g i c a l l y ,d i f f e r e n td a t a s o u r c em a ya d o p tv a r i o u sd a t am o d e l ,m a n i p u l a t i n gl a n g u a g ea n dq u e r yp r o c e s s a b i l i t y e v e nt h o u g hs o m ea r ed i s t i n c tp h y s i c a l l ya n dl o g i c a l l y ,s y n t a xd i f f e r e n c em a y e x i s ti nm a n yd a t as o u r c e s t r a d i t i o n a ld a t ai n t e g r a t i n gt e c h n i q u e sc a r ln o ts a r i s f y u s e r s sd e m a n do fa c q u i r i n gd a t ar o u n d l y h e n c e ,t h er e s e a r c h e so ni n t e g r a t i o no f v a r i o u sd a t ar e s o u r c e si nd i s t r i b u t e da n dh e t e r o g e n e o u se n v i r o n m e n tb e c o m ea n i m p o r t a n tq u e s t i o n t h em u l t i - d a t a b a s em i d d l e w a r ea r c h i t e c t u r ep u tf o r w a r db yo u rt a r g e t - t e a mi s r i g h tt os a r i s f yt h ei n t e r g r a t i o no f v a r i o u sd a t ai nd i s t r i b u t e da n dh e t e r o g e n e o u s e n v i r o n m e n t t h em u l t i d a t a b a s em i d d l e w a r ei s d b m s ”o v e rd b m s s i np r a c t i c a l a p p l i c a t i o n ,t h eu s e r sc a nt r a n s p a r e n t l ya c c e s sa n dp r o c e s sv a r i o u sd i s t r i b u t e da n d h e t e r o g e n e o u sd a t as o u r c e st h r o u g hu s i n gt h em i d d l e w a r e ,w h i c ha r ed b m so rf i l e s y s t e m s t h em u l t i d a t a b a s em i d d l e w a r ei sr e a l i z e dw i t hj a v al a n g u a g ea n dc a nf i n i s h b i d i r e c t l ys y n c h r o n o u s ,a s y n c h r o n o u su p d a t ea m o n gt h es o u r c ed a t aa n do b j e c t i v e d a t a ,a n ds u p p o r td y n a m i c l yj o i n & e v a c u a t eo ft h el o c a ld a t a b a s es y s t e m ,w h i c hw e c a l lt h el o c a ld a t as o u r c e s sp u l g a n d p l a yp r o b l e m f i r s t l y ,w ea n a l y s em a n yd o m e s t i ca n do v e r s e aa c h i e v e m e n t si nt h ed i s t r i b u t e d a n dh e t e r o g e n e o u sd a t ai n t e g r a t i o na n di n t e r o p r e a t i o n ,i n c l u d i n gt h ep r e s e n ts t u d yo f t h em u l t i d a t a b a s et e c h n o l o g y n e x t ,t h ep a p e ri n t r o d u c e sam u l t i d a t a b a s em i d d l e w a r e a r c h i t e c t u r ep r o p o s e db yo u rt a r g e t - t e a m ,w h i c hc a nb ed i v i d e di n t os e v e r a lp a r t s :t h e p u s h i n g u pm a c h i n e ( l o c a la g e n t ) ,t h ed a t ab u f f e r ,t h es q ls e r v e r t h ee m p h a s i so f t h ep a p e ri st h ed e s i g na n dr e a l i z a t i o no ft h el o c a la g e n t f u r t h e r m o r e ,t h ep a p e rd i s s e r t a t e st h ea i mo fo u rm u l t i d a t a b a s em i d d l e w a r e s y s t e m 一一d a t as y n c h r o n o u s ,a s y n c h r o n o u su p d a t e w h e ni tc o m e st ot h i sp r o b l e m , f i r s t l y ,t h ep a p e ra n a l y s et h ed e v e l o p m e n to fc u r r e n td a t a b a s eu p d a t et e c h n o l o g ya n d t h ed e f i c i e n c yo ft h e m ,a n dt h e np u tf o r w a r dt h ed a t as y n c h r o n o u s a s y n c h r o n o u s u p d a t e i nt h es y s t e m ,w eu s et h eb u r s tm o d et or e a l i z et h ed a t a sd r a w i n go u ta n d u p d a t i n g i i a b s t r a c t f i n a l l y ,a tt h ei m p l e m e n t a t i o no ft h ep u s ha n dp u l lf o rd a t ai nt h el o c a ld a t a b a s e , w ep r o p o s eaf o r m a l i z e dd e s c r i p t i o nm e t h o d t h em e t h o di sap o w e r f u lt o o lf o r d e s c r i b i n gp u s hr e q u i r e m e n t s ,a n dp r o d u c e sac o n s i s t e n tv i e wf o rh e t e r o g e n o u sd a t a b yt h i sw a ya p p l i c a t i o n sc a n & c c e s sh e t e r o g e n o u sd a t ab ys u c ht r a d i t i o n a lm e t h o d sa s s q l ,o d b c ,a n dj d b c 。t h ed e s c r i p t i o ne m b o d yt h ep o s i t i v ep u s h i n gd a t a s s e l f - d e f i n i t i o n 、r e q u i r e m e n ta n dc o n t r o la n dp r o c e s ss e l f - d e f i n i t i o n ,p u s h i n ge v e n t d e f i n i t i o n 、t h es e n s i t i v ei d e n t i f y 、o u t p u tc o n f o r m i t yd e f i n i t i o n i nt h e t h e s i s ,w e p r o v i d et h ed a t ap u s hd e s c r i p t i o n 、d a t a b a s ed e s c r i p t i o na n dt h es y n t a xa n a l y s i so ft h e d p d l ( d a t a p u s hd e s c r i p t i o nl a n g u a g e ) k e y w o r d s :m u l t i d a t a b a s es y s t e m ;m i d d l e w a r e ;d a t ac o n s i s t e n c y ;b i d i r e c t l y s y n c h r o n o u s a s y n c h r o n o u su p d a t e ;d a t ad e s c r i p t i o nl a n g u a g e ; l i t 华南理工大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研 究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文 不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研 究做出重要贡献的个人和集体,均己在文中以明确方式标明。本人完 全意识到本声明的法律后果由本人承担。 作者签名: 王网 日期:f 年g 月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权华南理工大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 保密口,在盥密后适用本授权书。 本学位论文属于 , 不保密瓯 ( 请在以上相应方框内打“4 ”) 作者签名:王明 导师签 日期:m 牌占月7 日 日期:讪陴衫月u 第一章绪论 1 。1 研究背景和基础 第一章绪论 1 1 1 数据库的问题和现状 目前,我国的数据库应用与数据仓库应用已经有了相当的广度和深度,各职 能领域都己建有各自的数据库系统。例如,就国家机关而言,有工商行政管理数 据库、税务数据库、公安数据库、社保福利数据库、银行数据库、,这些数据 库系统主要面向职能领域内部的业务与服务,各数据库完全独立设计,其中的关 联数据不能有机地联系在一起,形成一个逻辑结构。随着网络技术的成熟和信息 时代的到来,大范围内的信息共享和分布式事务成为计算机应用的迫切要求,这 些应用要存取的数据可能涉及到分布在不同网络节点上的、不同类型的数据管理 系统。由于不同的数据管理系统有不同的数据模式和查询语言,用户不可能象使 用一个数据库那样以统一的模式和查询语言来使用多个具有不同结构的数据管理 系统。在日益变化的应用和各种各样的产生的数据的今天,这些问题尤为突出。 越来越多的企业和个人希望把各种不同的数据库整合起来,来达到资源共享,降 低成本的目的。因此,我们面临着解决不同种类的数据管理系统之间的互操作问 题,支持多数据库中信息共享的系统成为迫切需要。 1 1 2 目前数据库的相关解决技术 然而,对于实际运行的系统来说,有许多因素都可能产生数据库系统之间的 差异性,如计算机硬件、操作系统、网络通信和协议、d b m s 及数据模型等。其 中,源自数据库系统自身的差异可以分为两大类,即d b m s 的差异和数据语义的 差异。 ( 1 ) d b m s 的差异。数据模型的不同是d b m s 差异的一个重要方面。关系数 据库、层次数据库、网状数据库,以及新出现的面向对象数据库,它们所采用的 数据模型各不相同,由此而导致数据结构、约束和数据语言等的差异。 ( 2 ) 数据语义的差异。数据语义的差异主要源于不同数据库对相同或相关数 据的理解、解释及使用的不一致性。譬如在两个数据库中,对同一个属性名的具 体含义、定义不同或对同一属性的数据值在两个数据库中的精度定义不同,都可 能引起语义差异,由于目前d b m s 是数据库产品的主流,因而本文主要针对关系 型数据库之间的互联进行讨论。 ( 3 ) 数据访问的差异。各数据库厂商的r d b m s 产品名义上都符合a n s i i s o 华南理工大学硕士学位论文 规范,但是,由于8 q l 标准并不完善,加之各厂商为了提高自己产品的功能都对 s q l 语言进行了一定的扩充,如o r a c l e 的d l s q l 、s y b a s e 的t - s q l 和i n f o r m i x 的i - s q l 等,就连i b m 四个基于s q l 的r d b m s d b 2 、s q l d s 、s ql 4 0 0 和 o s t 2d a t a b a s em a n a g e r 彼此也不兼容。可以说,各有各的s q l 语言。这给数据库 之间的互联造成了很大的障碍。为了解决异种数据库之间的互联问题,国际标准 化组织和各数据库厂家作了不懈地努力。s a g 和i b m 试图从标准一致化的角度 来解决这个问题,并制定了一系列规范,如正在广泛使用的o d b c 即是基于s a g 的c l i 规范。数据库厂家为使自己的产品具有开放性,也提供了各自的g a t e w a y 产 品,用以提供对异种数据库的透明访问 1 l 。 人们提出了多种方法来解决不同种类的数据管理系统之间的互操作问题,如 数据转换、查询转换等等。但这些方法都有各自的局限性,很难真正实现不同种 类的数据管理系统之间的互操作。目前应用最广泛也是最成功的解决分布的、异 构的和自治的数据库互操作问题的方案就是多数据库系统2 i 3 1 ( m d b s :m u l t i d a t a b a s es y s t e m ) 。多数据库系统( m d b s ) 是为在多个数据库之间实现互操作解决 数据资源共享的一种技术途径。多数据库系统是在已经存在的数据库系统或则文 件系统( 称为局部数据库系统l d b :l o c a ld a t ab a s e ) 之上为用户提供一个统一的 存取数据的环境。一个m d b s 是由一组独立发展起来的l d b 组成的,并在这些l d b 上为用户建立一个统一的存取数据的层次,使得用户像使用一个统一的数据库系 统那样使用m d b s 。简单的说,多数据库系统对用户的查询处理过程如下:多数据 库对异构数据库的数据模式进行集成,形成个统一的全局数据模式,在此基础 上把用户针对全局数据模式的全局查询转抉为对各l d b 的子查询,并分发到各节 点的l b s 上执行,最后将各节点的返回结果进行合并,产生最终的查询结果并提 交给用户。多数据库系统中的l d b 具有自治性,加入多数据库系统对l d b 上原有 的应用程序应该没有任何影响。即l d b 上原有的应用程序和软件可在l d b 加入多 数据库系统后仍然可以运行,并且这些l d b 上的局部事务不为m d b s 所知,更不受 m d b s 控制。 多数据库系统为用户和应用程序屏蔽了底层数据库操作环境的差别。从较深 的层次解决了异构数据库互操作问题,用户对异构数据库访问的透明度较高,并 且实现了异构数据库的全局事务管理,是目前异构数据库互操作实现的主要途径 和方式。 1 2 多数据库技术的研究现状 人们对d b m s 的研究开始于上世纪9 0 年代。早期的解决方案多采用多数据 库( m u l t id a t a b a s e ) 或联邦数据库( f e d e r a t e dd a t a b a s e ) 的方式,并研发了多个实验 2 第一章绪论 性的系统,著名的有h p 公司数据库技术部开发的p e g a s u s h l ,u n i s q l 公司开发 的u n i s q l m t m ,美国加州大学开发的s i m s 等。由于多数据或联邦数据库的解决 方案是将所有的局部模式一次集成为一个单一的静态全局模式,具有难以加入新 的数据源、难以满足集成用户的多视角要求等缺陷,从9 0 年代开始,国际上提出 了异构数据源集成系统的1 3 解决方案( i n t e l l i g e n ti n f o r m a t i o ni n t e g r a t i o n ) 峥j 这种 解决方案采取三层软件结构,最上层是应用,中间层称为“协调器”,用以冲突消 解和执行查询,下层称为“包装器”,用以封装和转化局部数据源。从9 0 年代开 始,国际上的多数据源集成系统多采用1 3 框架,著名的有s t a n f o r d 大学的 t s i m m i s ”,i b m 公司的g a r l i c ,法国i n r i a 研究所的d i s c o 等。 由于异构数据源集成系统还有一些难题尚未完全解决( 如语义冲突的消解, 查询优化等) ,国外研发的系统基本上都带有实验性质或是针对具体的项目和应 用,商业化的产品虽然也有少数几个,但是都不是太成功。总之,国内外对数据 库的应用研究已经比较多,但相应的研究处于滞后状态,特别是对数据库的规范 化访问的研究就更少,使得应用开发处于无规范的初级阶段,所用方法大多委就 事论事的权宜之计,尚未展开针对面向标准化、规范化的方法的研究,也没有上 升到中间件的解决路线。下面就一些常见的处理方法做一概述。 1 ) 直接数据库访问接口:直接在应用程序中,通过一些数据库访问标准接口 ( 如o d b c j d b c o l ed b 等) 访问多个数据源中的数据。这种方式将各种数据 库的数据的语法、语义等方面的处理,混杂在应用程序中,存在严重的数据独立 性问题,一旦数据源变化,应用程序也要做相应的调整。此外,这种方式还需了 解对方数据源的逻辑结构,所以一般是行不通的,使用其是权宜之计。 2 ) 分布对象:将数据访问封装为可独立分布、独立作用的对象( 分布对象) , 使用者可在远程按对象调用方式调用该对象这种方式实质上类似于消息传递方 式,这里的分布对象就相当于a g e n t ,它在分布对象中间件( 如c o r b a 的o r b ) 的支撑下,通过数据库访问引擎和接口( 如o d b c 和j d b c 等) 实现分布异源数 据库的访问。这种方法同样具有“直接数据库访问接口”的缺点。 3 ) 数据发布:将各种数据源中数据,分别在各自的数据库系统中,转化为某 种标准格式的数据( 如x m l 、h t m l 、文本或其他指定的数据库系统数据等) , 存放在某种可被外部访问的服务器上。这种方式除了存在上面指出的有些缺点外, 还存在可编辑性和动态性差的问题。 4 ) s q l 扩充:这种方式试图扩充关系数据库存取( 查询) 语言s q l 的功能( 不 是形式,如s q l 的面向对象的扩充和标记语言如x m l 的扩充等就不属于此列) , 使它适应异源数据集成。近年来,有关这方面的进展有w i l i i a nw c o h e n 提出的 w h i r l 1 ,e e p e n gl i m 提出的h a r p s q l 【9 】,c h e n v h u a nk c h a n g 等学 者提出的面向异源质数据查询的谓词重写语言 1 0 】,r o yg o l d m a n 、j e n n i f e f 华南理工大学硕士学位论文 w i d o m 和d j d e s s l o c h 等人提出w s q d s q 1 ”,等等。其中,w h i r l 重点针对 异源,质数据没有统一的名字域的问题,h a r p s q l 主要支持a n s i n i s oz 3 9 5 0 协 议的远程数据库存取,并扩充为支持关系数据库的j o i n 和p r o j e c t i o n 操作,也支 持将多个s q l 结果与m a r c 数据的合并;谓词重写语言隅】旨在提供一种基于谓 词的可描述不同数据源查询的前端用户查询语言,并给出谓词转换算法,将通用 查询转化为各个局部查询。 归纳起来,这几种方法重点是扩充主动式的查询,包括查询的范围( 面向异 源,质数据,包括结构化数据、半结构数据和非结构数据) 和功能,但都没有涉及 数据发布方面的特殊考虑。 5 ) 数据访闻代理:数据访问代理的基本原理是在数据源和数据访问者之间设 置一个( 或若干个) 服务者( 服务) ,负责对数据源的存取工作。数据访问者对数 据源的访问是通过服务进程进行的。这种服务者称为数据代理( a g e n t ) 。目前,这 种技术多用于数据仓库。但是,目前数据仓库中的数据集成仍停留在数据读取、 查询与加工上,这些功能( 即a g e n t 的功能,包括数据整合、多维分析等) 直接 使用s q l 或数据存取接口( 如o d b c ) 实现。 6 ) w e bs e r v i c e 方式;w e bs e r v i c e s ( w e b 服务) 是可以部署在i n t e r n e t 上的可 通过w e b 协议和语言访问的软件组件。未来的相当一段时间,应用系统将主要以 w e bs e r v i c e s 模式为主。w e bs e r v i c e s 模式的多数据库应用,是将对异源数据的访 问,包装为w e bs e r v i c e s 。但是,w e bs e r v i c e s 是一种大组件,这种方式只适合一 些简单的具体的应用,不能是多数据库应用标准化【l2 1 。 1 3 多数据库系统的应用背景 多数据库应用也是一种分布式应用。但它们本质不同。分布式数据库库中, 位于不同位置的数据是逻辑是一体且结构关联的,在整体上属于同一数据库系统: 而在多数据库应用中的各数据库,不仅位置不同,而且逻辑上也各自独立,互不 关联。它允许多个事先已经存在的、异构的数据库加入多数据库系统,对外提供 统一的数据访问接口,并且不破坏数据库上原有的应用系统和使用方式,因此, 多数据库系统的应用范围十分广泛。多数据库应用是在基本数据库应用达到一定 程度时的进一步需求。国家各级行政与事业单位的兄弟单位之间,独立管理的上 下级单位之间,同盟企业之间,合作,业务联系企业之间,它们的数据库系统是各 自独立建立与管理的,但需要经常互通互访。 下面我们通过列举几种已经出现或者即将出现的典型的多数据系统应用案 例,这些应用都是传统的分布式数据库技术难以有效支持的,来说明研究多数据 库系统技术的必要性和应用背景。 4 第一章绪论 移动业务运营支撑系统b o s s 在移动业务运营支撑系统中,有b o s s 系统和银行接口,通过这个接口服务, 对于在银行办理代缴费业务的客户,可以由移动定点扣费。b o s s 系统这部分其 实就是一个多数据库系统的典型应用。现在中国移动和多家银行具有这种商业合 作,例如:中行、建行、工商、邮储各银行本身具有自己较为成熟的系统, 不可能因为和某个单位进行某种合作而更改现有的数据库系统。各家银行所使用 的数据库可能存在很大的不同,数据结构也可能存在不同,对于这种数据分布在 不同的地点,而且数据源相互独立的数据库,在使用的时候,最有效的方法就是 采用多数据库系统方案,在各个银行数据库之上建立一个多数据库系统,对外提 供统一的数据访问接口,这样当移动客户使用提供给他的查询操作时,不过察觉 到底层数据的分布和异构性,就象在使用同一数据库一样。而各个银行的原有系 统保持不变。 女远程医疗诊断系统 在未来的社会中,我们希望能够通过计算机在家中接受专家的诊断。现在各 个医院都已经建立了自己的数据库系统,存储本院内医生的各种资料,如曾经治 疗过哪些兵刃,痊愈率是多少,等等。病人可以根据各个医生的资料选择自己满 意的医生为自己诊断病情。病人当然不希望在选择医生的过程中对每家医院的数 据库逐一进行查询,而是希望自己发出一个查询后,如查找治疗头疼的专家,就 可以把所有医院这方面医生的资料都调出来供自己选择,因此需要在这些医院的 数据库之上建立一个多数据库系统,用户只要访问这些多数据库系统就可以查询 到所有医院的医生的资料,而不需要逐个访问每家医院的数据库系统。 1 4 课题的来源和研究的主要内容 本课题是广东省重大科技软件项目,本次论文工作是多数据库中间件课题中 的一个子课题。在多数据库中间件课题中,提出了一种新的面向多数据库应用的 中间件,使异源独立分布数据的存取复用,可通过数据主可编程的“上推”的方 式,按集成化的统一关系数据库视图进行,完全屏蔽异源数据带来的访问障碍。 该中间件模型支持异源独立分布数据的“上推受访集成”从硬性变柔性,从被 动变主动,从“冷插拔”变“热插拔”,同时支持数据上推的事件驱动、敏感识 别、安全保密控制、自定义规则逻辑推理支持、并发控制、访问过程控制、输 出整合等功能,从而,使异源独立分布数据的存取复用,能像单一关系数据库那 样走向模型化,建立“d b m s 的d b m s ”。上推是指数据主自行按某种描述方法,对 所需公开的( 供第三方访问的) 数据及其操作进行描述。这里的上推,与一般的 发布不同。一般的发布是指数据主将数据从自己的数据源中提取出来,供第三 华南理工大学硕士学位论文 方访问。上推规则不同,它只是对欲公开供第三方访问的数据进行描述( 并不真 正提取数据) ,具体的数据访问,由专门的数据访问代理根据相应的“描述”进 行。这种描述基于一种描述语言一异源数据上推描述语言。它是一种形式化的描 述语言,使异源数据呈现为一致的s q l 兼容视图。多数据库的模型化应用,存在许 多新问题,如数据上推( 规则) 描述语言、上推机制。本文针对这些问题做了进 一步深入探讨,是研究的主要内容。 首先,研究的问题之一是局部数据库的上推描述。广域数据库中各数据源的 数据,是通过“上推”方式与其他数据集成的,要用一种形式化的描述方法,描 述上推需求,使异源数据呈现为一致的视图,从而使应用程序可使用传统的方法 ( 如s q l 、o d b c 、j d b c 等) 访问异源数据,且必须体现异源环境下的数据上推的主 动性自定义、需求和控制及过程的自定义性,以及上推事件定义、敏感定义、输 出整合定义等问题。数据上推描述语言面向“数据主”编程使用,用于定义欲公 布出去供其他用户访问的数据。 其次,数据双向同步更新。我们能够从关系数据库中上推想要共享的数据, 这些数据并不是真正的表中的数据,而是作为局部数据库上推表的描述信息即元 数据被发送到服务器的,客户可以根据这些元数据和自身的需要向局部数据代理 发布命令来获取相关的表数据的操作。在我们的系统中,利用触发机制来实现数 据的抽取、更新。这种方法的核一t l , 思想是:利用数据库的触发机制和扩展存储过 程来探测数据库中信息的变化,利用守护进程来接收这些变化的数据,并将数据 发到缓冲区,以此来保证数据的同步更新。 1 5 论文的结构安排 全文共分六章。 第一章为绪论,首先阐述了课题背景包括分布异构环境下要解决的问题, 多数据库技术的研究现状及多数据库系统的应用背景。然后阐述了课题的具体研 究内容,包括课题研究的重点及难点等方面,介绍了和本课题研究工作相关的技 术领域,列举了本文的主要工作,最后说明了论文的组织结构情况。 第二章主要讲述了多数据库中间件的技术研究和创新。本章中首先给出了一 些关于多数据库系统的基本概念和相关的研究内容。接着讨论了什么是中间件技 术以及中间件的研究现状。本章最后给出了多数据库中间件模型以及其相关的研 究内容。 第三章主要是给出了多数据库中间件的整体架构,并在此基础上分析了局部 代理在整个中间件中的作用,最后给出了局部代理系统的框架,并且分析了其组 成模块和各模块实现的功能。 6 第一章绪论 第四章首先分析了数据产生不一致的原因,然后讨论了现有的解决多数据库 数据不一致的方法,各种方法的特色以及不足。在此基础上给出了我们系统所实 现的异构数据同步更新机制,最后给出了更新机制实现的原理。 第五章主要就对上推描述语言进行了探讨。分析了上推数据的形式化描述, 给出了语法的初步设计。从语法的角度对异构的局部数据库的统一模式信息进行 描述,增强了上推功能的主动性。 第五章首先给出了局部代理实现的开发环境和主要技术,详细分析了局部代 理部分和系统缓冲之间数据交互的形式和方法,给出了在我们的局部代理实现中, 数据的类型的统一格式,最后是系统的实现演示。 最后结论部分给出了全文总结和进一步的研究方向。 7 华南理工大学硕士学位论文 第二章多数据库中间件的研究 2 1 多数据库技术 2 1 1 多数据库系统的概念 多数据库系统( m d b s ) 是多个已存的、自治的、异构的数据库系统的联合。 多数据库系统的管理软件称为多数据库管理系统( m d b m s ) 。参与构成多数据库系 统的各数据库系统称为局部或成员数据库系统( l d b s ) ,各局部数据库有自己的局 部数据库管理系统( l d b m s ) 。局部数据库分布在网络的不同节点上,多数据库系 统在所有局部数据库系统之上构成全局系统管理层。提供外部用户接口,使用户 能实现对异种数据库的透明访问。多数据库系统屏蔽了不同数据库在物理上和逻 辑上的差异,各局部数据库有充分的自治性( ”】【1 4 】。 2 1 2 多数据库系统( m o b s ) 的特征 分布性、异构性和自治性成为多数据库系统的典型特征1 3 】。 自治性是指各成员数据库系统能独立操作自身系统的能力。它是成员系统能 否交换信息,能否独立执行事务,能否被修改等多种因素的联合函数。主要从下 面三个方面来考虑自治性。各成员数据库的局部操作并不受其参与多数据库系 统的影响。成员数据库的处理查询及优化并不受全局查询执行的影响。成员 数据库加入或离开多数据库的联合体并不影响成员系统本身的一致性。 分布性是指数据不是存放在单一场地为单个计算机配置的存储设备上,而是 可以分散地存放在多个能够相互通信的场地。分布式数据库系统中的多副本更新, 场地透明性等问题,在多数据库系统中均会得到体现。但多数据库的分布性又有 别于分布式数据库系统。因为多数据库并不实际负责数据的物理存储,所以分布 式数据库的数据分片策略在这里并不适用。 异构性是指各成员系统在硬件结构,网络协议。数据管理方法等方面存在的 差异性。从数据库的角度来看,主要考虑数据模型、查询语言和事务管理协议等 方面的不同。各成员系统可采用网状、层次、关系或面向对象的数据模型来表达 数据,甚至同一数据模型可采用不同的查询语言,关于提交协议方面,各成员系 统有的采用单阶段提交协议,也有的采用两阶段提交协议等事务管理协议。 2 1 3 多数据库系统与分布式数据库的区别 8 第二章多数据库中间件的研究 分布式数据库多数据库系统 耦台程度最紧密介于d b m s 和互操作系统之问 表现形式同构的l d b ,为用户提供统异构的事先已经存在的l d b , 一的全局界面提供统一的全局界面 组成方式所有加入的站点有统一的有全局模式,全局数据访问语 全局名字空闻、数据模式和言,但各个l d b 的名字空间不 数据访问语言 同,l d b 有自己的数据模式和 访问语言 全局与局部 全局d b m s 对各站点的数据全局d b m s 与l d b 通过用户界 的关系 及处理有绝对的控制权,全 面中的视图进行交互,对l d b 局d b i n s 通过内部函数调用的d b m s 无控制权,m d b s 仅作 各站点的数据 为l d b 的一个用户出现,因此 比d b m s 要低效 设计方式 自顶向下设计。对各站点已 自底向上设计,对l d b 的d b m s 有的d b m s 要全部替换,代 影响很小,各l d b 上原有的应 价昂贵,无l d b 用户,各站 用软件可以继续使用 点原来的应用软件不能继 续使用 从用户的角 用户看到的是一个单一的、 用户看到的是一个逻辑上的 度比较 集中控制的d b m s ,全局模式 全局数据库,建立全局模式困 建立容易,可以最大限度的 难,需要进行模式消解,全局 开发性能 优化可能与l d b 的局部优化相 冲突,使性能降低 2 1 4 多数据库系统的分类 在数据库系统中引入自治性,分布性和异构性的概念后,可对数据库系统进 行分类,图2 - 1 给出了多数据库系统所处的位置。从图2 1 中我们可以看出,多 数据库系统属于广义的分布式数据库范畴。目前对多数据库的分类并没有一个统 一的标准,但研究的比较多的主要有两类,联邦数据库系统和多数据库系统0 3 1 。 联邦数据库系统最早提出时是作为一组松耦合的部件( 如对象、记录、类型) 的联合a 这个概念后来引申为没有全局模式的松耦合库的联邦,各个成员数据库 利用一些联邦信息可以在一个站点访问另一个站点的数据,这些联邦信息中包含 一些类似于全局模式的信息,但不完全,各个站点只能看到与其有直接关联的数 据库的信息,而并非所有的全局信息。联邦数据库也不提供一种全局查询语言, 华南理工大学硕士学位论文 各站点的用户使用本地的查询语言就可以访问其他站点的数据。联邦数据库也具 有一定的分布性、异构性和自治性的特点1 5 1 。联邦数据库介于多数据库与分布式 数据库之间。 图2 1多数据厍系统的分类 f i g u r e2 - 1t h ec l a s s i f yo fm u l t i d a t a b a s e 多数据库系统则是一种耦合度较强的数据库的联合,它一般具有全局模式多 数据库用户只能通过全局模式访问多个数据库中的数据。多数据库需要提供一种 多数据库查询语言1 6 】,全局用户使用多数据库语言对多数据库提出查询请求,多 数据库向用户返回全局结果。数据的提取由多数据库负责,用户并不关心数据从 哪个或者哪几个局部数据库获得。 2 1 5 多数据库系统的设计原则和体系结构 m d b s 的设计原则主要有以下几点: 1 禁止从一个数据源到另一个数据源之间的数据转换和迁移; 2 m d b s 要求对局部数据库的软件不能作任何改动,这也就是所谓的设计自 治性; 3 m d b s 不能妨碍l d b 原来的工作模式,即l d b 上还可以运行只使用本地 资源的应用程序,而要访问多个l d b 资源的应用则需在m d b s 上运行; 4 在m d b s 中只使用一种统一的数据库语言,用户象使用一个数据库那样 使用m d b s : 5 m d b s 必须对用户屏蔽各个l d b 的异构的操作环境,包括计算机、操作 系统、网络协议等。 m d b s 本身是一种c l i e n t s e r v e r 结构,多个m d b s 的c l i e n t 与m d b s 交互作 i o 第二章多数据库中间件的研究 用,m d b s 的用户可以通过m d b s 对多个l d b 进行统一的存取操作。m d b s 管 理所有的全局数据库的控制信息,包括全局模式、提交和控制涉及不止一个l d b 的全局事务等。每一个l d b 通过一个驱动器与m d b s 连接,这个驱动器与l d b 在一个站点上,m d b s 与驱动器之间的通讯构成一个通讯子层。从m d b s 的体系 结构可以看出,m d b s 对l d b 没有作任何改动,因此l d b 上的用户还可以对l d b 进行直接访问,l d b 上原来的应用程序还可以直接运行于l d b 之上。m d b s 的 体系结构如图2 2 所示。 圈圈圈 图2 - 2m d b s 的体系结构图 f i g u r e 2 2t h ea r c h i t e c t u r eo fm d b s 2 1 6 多数据库系统研究的关键技术 2 1 6 1 异构模式消除 一个给定的数据库中的数据模式有相应的模式描述,相同的信息可以用不同 的模式表示,相同的模式也可以有不同的表示方法,所以在m d b s 中就存在着把不 同的l d b 模式统一成一个相同的全局模式的问题,即多数据系统中的异构模式消 解问题。 下面是几类最常见的异构模式消解策略及他们所能解决的模式冲突。 ( 1 ) 重命名实体和属性。该方法解决的是实体命名和属性命名冲突,即在不同 的l d b 中相同的概念有不同名称或不同概念有相同名称时出现的冲突。该方法是 在m d b 中建立一个m d b 与l d b 之间名称对应关系的目录。 ( 2 ) 一致性表示。一致化表示主要可以解决三种冲突:不同表示表示相同信息、 不同单位和不同层次的精度所产生的模式冲突。当不同的度量值表示相同的信息 时就会出现不同表示表示相同信息的冲突,解决方法时在不同的度量值之间建立 华南理工大学硕士学位论文 一种对应关系,可以通过建立不同l d b 之间尺度对应关系表或通过执行相应的m d b 操作来完成对应关系;不同l d b 中同一类数据采用不同的单位,使得不同l d b 中 的数字有不同的解释,这种冲突只要在m d b 中定义一个简单的单位之间转化的数 学表达式就可以了;不同l d b 中相同的属性用不同的基数来表示,而这种不同的 基数会导致不同层次的精度,解决方法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高速公路智能交通系统智能交通教育与培训报告
- 2025年婴幼儿配方食品营养配方科学配比研究报告
- 2025年中国EL闪动广告灯箱行业市场发展前景及发展趋势与投资战略研究报告
- 2025年中国广角镜头市场竞争格局及投资战略规划报告
- 葡萄酒品酒会策划方案
- 婴儿围嘴行业深度研究分析报告(2024-2030版)
- 2020-2025年中国全脂奶粉行业发展趋势及投资前景预测报告
- 2025年中国集成数字视听市场运行态势及行业发展前景预测报告
- 感恩节亲子活动方案幼儿园XX
- 2025年中国四弦琴行业市场发展前景及发展趋势与投资战略研究报告
- 三废环保管理培训
- 《分娩方式的选择》课件
- 培训课件 -BBF品牌建设模型-
- 新的患者护理模式个性化医疗关怀培训课件
- 安徽省蚌埠二十六中学2022-2023学年七年级上学期入学考试语文试题(学生版)
- 医疗信息安全与隐私保护的培训指导
- 《防暑降温-知识培训》
- 成功组织招商会讲义
- 招标《采购案例分析》考试真题及答案完整版-2
- 21ZJ111 变形缝建筑构造
- 穿行于基础教育森林:教育实践沉思对话录
评论
0/150
提交评论