(计算机应用技术专业论文)消息中间件中分布事务处理技术的研究.pdf_第1页
(计算机应用技术专业论文)消息中间件中分布事务处理技术的研究.pdf_第2页
(计算机应用技术专业论文)消息中间件中分布事务处理技术的研究.pdf_第3页
(计算机应用技术专业论文)消息中间件中分布事务处理技术的研究.pdf_第4页
(计算机应用技术专业论文)消息中间件中分布事务处理技术的研究.pdf_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 现代信息技术的发展为教育信息化提供了新的工具和手段。然而,在教育信息化的过程中,信 息孤岛现象日益严重,各业务系统间逐步构成了一个庞大的异构环境。而且,大量信息重复出现在 不同的业务系统中,各个业务系统又在不断的更新各自需要修改的部分数据,这样就造成了各个业 务系统之间数据的不一致。为了解决信息孤岛带来的信息交换屏障,就必须建立一个可靠的信息交 换平台,实现学校范围内的信息集成与共享,提供安全、可靠、高质量的信息化服务。 共享数据平台是针对校园信息化的特点提出的一种数据集成与共享的解决方案,旨在解决各业 务系统上的数据共享、数据一致性和整合已有数据等核心问题。共享数据集成与共享模块是共享数 据平台的核心内容。但是,随着信息化的普及,高校中存储的信息量逐日剧增,对共享数据库平台 提出了更高的实时更新和业务互操作需求。 本文结合复旦大学、同济大学等高校校园信息化中的共享数据平台体系,把原有的业务系统通 过基于内容的发布订阅消息中间件互连以实现数据集成。同时,提出事务与消息集成的概念,利用 中间件系统中提供的事务服务实现数据实时更新和业务互操作,保证各业务系统间的数据的一致性, 从而实现更可靠的数据集成与共享。 事务和消息的集成包括事务模型:在基于内容的发布订阅消息中间件中提供一种事务模型 p u b l i s h s u b s c r i b e ( p s ) t r a n s a c t i o n s ,它能够把一系列事务客户端的执行上下文通过消息发布、传 送和处理操作关联起来;事务协议:指事务的执行,包括普查阶段、事务处理阶段和提交阶段三个 阶段:事务服务h t s :在消息中间件h e r r n e s 中提供p st r a n s a c t i o n s 的事务支持。 事务服务h t s 可以在客户端或者服务端实现。在共享数据平台中实现实时更新数据集成,我们 采用客户端实现h t s 的方法,把事务服务h t s 作为应用和发布订阅a p i 之间的一层,在共享数据 库和业务库上部署事务服务,实现基于内容的数据订阅、实时更新、业务互操作、可靠的消息传递、 更强事务支持和依赖定义等设计目标。 关键字:信息集成,分布事务,基于内容的消息中间件,发布,汀阅,数据一致性 东南大学硕士学位论文 a b s t r a c t 1 1 1 ei n f o r m a t i o nt e c h n o l o g i e sh a v ep r o v i d e dn e wm e t h o d sf o rt h ee d u c a t i o ni n f o r m a t i o n h o w e v e r , d u r i n gt h ec 沁o f t h ee d u c a t i o ni n f o r m a t i o n ,“i n f o r m a t i o ni s l a n d s ”h a sb e e ni n c r e a s i n g l ys e r i o u s t h e r e a 托s om a n yi n f o r m a t i o ns y s t e m sw i t hd i f f e r e n ts t r u c t u r ei no n eu n i v e r s i t ya tt h es a m et i m e w h i c hf o r ma h l l g eh e t e r o g e n e o u se n v i r o n m e n t f u r t h e r m o r e ,ag r e a tl o to fi n f o r m a t i o ns t o r e si nd i f f e r e n tb u s i n e s s s y s t e m s w h i c ho f t e nu p d a t et h el o c a ld a t aa n dc a u s et h en o n - c o n s i s t e n td a t ab e t w e e nt h e m i no r d e rt o r e s o l v et h ei n f o r m a t i o nb a r r i e r , ar e l i a b l ei n f o r m a t i o ne x c h a n g ep l a t f o r ms h o u l db ec o n s t r u c t e d ,w h i c hc a n r e a l i z et h ei n f o r m a t i o ni n t e g r a t i o na n ds h a r i n gi nt h eu n i v e r s i t ya n dp r o v i d es e c u r e d ,r e l i a b l ea n d h i g h - q u a l i t yi n f o r m a t i o ns e r v i c e s 1 1 1 es h a r e d - d a t a b a s ea r c h i t e c t u r ei sp r o p o s e d ,a i m i n ga tt h ec o r ep r o b l e m ss u c ha sd a t as h a r i n g ,d a t a c o n s i s t e n c ya n dd a t ae x i s t i n gc o n f o r m i t ye t c b e t w e e nt h eb u s i n e s sd a t a b a s e s t h ed a t ai n t e g r a t i o na n d s h a r ei st h ec o r ef u n c t i o n h o w e v e r , w i t ht h ed i s s e m i n a t i o no fi n f o r m a t i o n ,t h ed a t aq u a n t i t yi n c r e a s i n g d a i l y , h i g h e rr e q u i r e m e n t s ,s u c ha sr e a lt i m eu p d a t ea n db u s i n e s si n t e r - o p e r a t i o n ,a r ep r o p o s e dt ot h e s h a r e d - d a t a b a s ep l a t f o r m a c c o r d i n gt ot h es h a r e d - d a t a b a s ea r c h i t e c t u r ed e p l o y e da tf u d a nu n i v e r s i t ya n dt o n g j iu n i v e r s i t y , t h e e x i s t i n gd a t a b a s e sa c o n n e c t e dt h r o u g hc o n t e n t - b a s e dp u b l i s h s u b s c r i b em e s s a g e - o r i e n t e dm i d d l e w a r e ( m o m ) ,a c h i e v i n gt h ed a t ai n t e g r a t i o n a tt h es a m et i m e ,t h ei n t e g r a t i o no ft r a n s a c t i o na n dm e s s i n gi s p r o p o s e d ,r e a lt i m eu p d a t ea n db u s i n e s si n t e r - o p e r a t i o na r cr e a l i z e dt h r o u g ht h et r a n s a c t i o ns e r v i c e s p r o v i d e di nt h em o m ,w h i c hc a ni n s u r et h ed a t ac o n s i s t e n tb e t w e e ni n f o r m a t i o ns y s t e m s ,a c h i e v em o r e r e l i a b l ed a t ae x c h a n g ea n ds h a r e ,n l ei n t e g r a t i o no f t r a n s a c t i o na n dm e s s a g i n gi n c l u d e st h et r a n s a c t i o nm o d e l - - p u b l i s h s u b s c r i b e ( p s ) t r a n s a c t i o n s ,w h i c hd e m a r c a t e sw i t h i na na t o m i cu n i t - o f - w o r k ,t h ep r o d u c t i o n ,d e l i v e r y , a n dp r o c e s s i n go fa n u m b e ro f r e l a t e da s y n c h r o n o u se v e n tn o t i f i c a t i o n si nc o n t e n t - b a s e dp u b l i s h s u b s c r i b em o m ;t r a n s a c t i o n p r o t o c o l ,w h i c hr e a l i z e st h ee x e c u t i o no ft h ea b o v et r a n s a c t i o nm o d e l ,c o n s i s t i n go fc e n s u sp h a s e , t r a n s a c t i o np h a s ea n dc o m m i tp h a s e ;t r a n s a c t i o ns e r v i c e ,h t s ,p r o v i d i n gt h et r a n s a c t i o na p ii nh e r m e s 砀et r a n s a c t i o ns e r v i c e ,h t s ,c a nb ei m p l e m e n t e da tt h ec l i e n t s i d eo rt h es e r v i c e - s i d e 劢ef o r m e ri s a d o p t e dt oi m p l e m e n tt h er e a l - t i m eu p d a t ed a t ai n t e g r a t i o no nt h es h a r e d - d a t a b a s ea r c h i t e c t u r e a c l i e n t s i d ei m p l e m e n t a t i o no ft h et r a n s a c t i o n i v i c ec o n s i s t so fal a y e rb e t w e e nt h ep u b l i s h s u b s c r i b ea p i a n dt h ea p p l i c a t i o n , d e p l o y i n gt h eh t so nt h es h a r e dd a t a b a s ea n dt h eb u s i n e s sd a t a b a s e s i tc a na c h i e v e t h ed e s i g ng o a l s ,s u c h 嬲c o n t e n t - b a s e ds u b s e r i p t i o n ,r e a l - t i m eu p d a t e ,b u s i n e s si n t e r - o p e r a t i o n ,r e l i a b l e m e s s a g i n g , s t r o n g e rt r a n s a c t i o ns u p p o r ta n dd e p e n d e n c yd e f i n i t i o ne t c k e yw o r d s :i n f o r m a t i o ni n t e g r a t i o n ,t r a n s a c t i o n ,c o n t e n t - b a s e dm o m ,p u b l i s h s u b s c r i b e ,d a t ac o n s i s t e n c y 东南大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成 果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过 的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并 表示了谢意。 研究生签名:哥阵日 期:五幺丛 东南大学学位论文使用授权声明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文的 复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内 容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可 以公布( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权东南大学研 究生院办理。 研究生签名:辎 导师签名: 第一章绪论 1 1 研究背景 第一章绪论 二十一世纪,人类进入了信息化时代。信息化潮流冲击着人类生活的方方面面。现代信息技术 的发展也为教育信息化提供了新的工具和手段。 利用现代的信息化技术,学校内部己经形成了多个独立的业务子系统,包括:人事管理系统、 教务管理系统、学生管理系统、科研管理系统等。这些独立的业务子系统提高了局部的效率和应用 性。但是,在应用或数据等层面上,这些业务子系统是彼此分离的,它们分别采用了不同的数据库 系统以及使用了不同的应用开发技术;各系统的业务逻辑不同,而且在数据库的建设上没有遵循统 一的标准。随着时间的推移,就形成了一系列的信息孤岛,每个部门或单位都是一个独立的数据源, 每个数据源都是异构的,因而他们之间的信息和组织都不一样,这就构成了一个巨大的异构数据环 境。 高速发展的现代信息社会,学校对于信息的管理更加复杂。这些复杂的应用也使得信息化建设 中存在的问题日益突现。这些由于历史原因分布在信息孤岛上的数据往往存在着千丝万缕的联系, 用户在具体应用时经常需要将分散的数据按某种需要进行交换。例如:财务系统需要从人事系统获 取人事信息;教务系统要为人事系统提供教师授课信息,同时还要从人事系统获取教职工的基本信 息;人事系统与科研系统、研究生系统之间都存在双向的数据交换等等。大量信息重复的在不同业 务系统中出现,而各个业务系统又在不断的更新各自需要修改的部分数据,这样就造成了各个业务 系统之间数据的不一致。 复旦大学结合复旦信息化总体规划提出“共享数据库”概念。共享数据库主要针对的问题之一 就是“信息孤岛”。为了解决信息孤岛带来的信息交换屏障,同时满足共享数据库新的实时更新、 业务互操作需求,要求能够提供一种可靠的、可持续发展的共享数据集成平台,实现学校范围内的 信息集成与共享,提供一个安全的、可靠的、高质量的信息化服务。 1 2 研究现状 随着信息化建设的不断发展,“信息孤岛”的增加使得信息的集成与共享越发重要。目前,分 布的、多个异构数据间的共享与集成是系统集成领域中的重要课题和研究方向之一,针对这个课题 国内外主要存在以下几种应用模型: 1 基于全局数据库的传统集成方案 所谓基于全局数据库的传统集成方案,就是各业务子系统通过数据备份机制在全局数据库直接 备份数据,用户可以根据需要访问全局数据库中的数据,实现数据的集成与共享。这种集成方案的 优点就是有效屏蔽了异构数据源的差异,简单易行,操作难度低,成本低。但是这种集成方案存在 很大的不足,主要的还是集中在底层的实现细节进行探讨,没有从高层集成端进行考虑,没有建立 一个统一的公共数据集成模式,无法解决数据的重复与一致性维护问题,无法为数据的共享提供可 靠的安全服务,扩展性不好,需要大量的存储空间进行数据的存储等。 2 基于中间件技术的异构数据源集成方案 随着分布对象技术的兴起,中间件技术也被应用到了异构数据集成的领域当中,并且提出了很 好的解决方案,而这其中的代表就是基于对象类型中间件( 如:公共对象请求代理框架o m gc o r b a 、 m sd c o m 等) 的集成方案和基于消息类型中间件( 如m s m q 、m mm q 等) 的集成方案。 基于对象类型中间件的集成方案采用了包装的思想,以统一接口的方式向外提供调用服务,实 现对对象的透明访问,利用d c o m 或c o r b a 结合公共数据模型将源数据共享的部分进行统一包装 和格式转换,在此基础之上建立集成模块,对包装过的数据进行集成,再提交给用户。如图1 1 所 示: 东南大学硕士学位论文 图1 1 基于对象类型中间件的集成框架 基于消息类型中间件的集成方案则是利用j m s 来实现在异构系统之间传递封装数据后的消息, 从而达到数据之间的交互与共享,实现跨平台操作,为不同操作系统上的应用软件集成提供服务。 基于中间件的异构数据源集成方案具有以下共同的优点:提出公共数据模型概念、分布式透明、 异构透明、本地自治、可扩展性;但是基于中间件的异构数据源集成方案不能提供从全局角度的数 据综合分析、汇总等服务,不能够有效地解决消息的淤塞等问题。 3 基于可扩展标志语言( e x t e n s i b l em a r k u pl a n g u a g e ,x m l ) 的w c bs e r v i c e 异构数据源集成 方案 图1 2 基于x m l 的w e bs e r v i c e 异构数据源集成框架 通过x m l 我们可以定义数据的类型和数据间的关系,将传统的数据集成的策略以d t d s c h e m a 为桥梁移植到对x m l 文档的集成上来,对很多类型的异构信息进行高级集成。w e bs e r v i c e 以x m l 为基础形成一个分布式的环境并且支持远程过程调用,各种信息来源都可以为其设计相应的包装器, 将其包装成统一的x m l 格式的数据,而后对这些x m l 数据进行集成,再将集成后的结果数据以 x m l 文档的形式发送到各个应用客户端或是更高级的数据集成器去。基于x m l 的w e bs e r v i c e 异 2 第一章绪论 构数据源集成方案中w e bs e r v i c e 主要利用h 1 1 甲和s o a p 协议使商业数据在w e b 传输,w e b 用户 能够使用s o a p 和h r r p 通过w e b 调用的方法来调用远程对象。如图1 2 所示。 校园的信息集成与共享的需求复杂、种类繁多,而且实施背景的限制很多,比如要求对于已经 存在的业务系统不改动或者进行最小的改动。为此,我们提出了事务与消息集成的概念,原有的业 务系统作为一种轻量组件通过消息代理接入,各业务系统经由消息代理提供的消息中间件功能实现 互连:同时利用中间件系统中提供的事务服务实现各业务系统数据的实时更新集成,以保持各业务 系统的数据一致性,从而提供更可靠的数据交换与共享。 1 3 研究内容 数据集成是共享数据平台的核心问题。 最初提出共享数据库时,共享数据库采用的是数据仓库技术。但是,随着信息化的普及,高校 中存储的信息量逐日剧增,对共享数据库提出了更高的实时更新和业务互操作需求。这就要求能够 提供一种可持续发展的共享数据集成平台。 我们认为,此共享数据集成平台应该具有以下主要特点: 1 基于内容的数据订阅 基于内容的数据订阅规则,可以在很大程度上减少每次数据更新集成的数据量。如采用基于内 容的订阅时,可以通过定义规则“d e p t - - - c o m p u t e r ”来表示对“计算机系”数据的兴趣,而不是要从 所有的d e p t 信息中搜索“计算机系”的信息。在目前高校系别乃至专业精细化的情况下,这对于提 高系统的效率至关重要。 2 实时更新 现有的共享数据集成方案都存在不同程度的数据同步延迟。实时更新可以保证共享数据库与各 业务库的信息最大同步,从而确保共享数据库的数据权威性。 但是,实时更新也对共享数据平台提出了更高的要求,如业务库更新数据而共享数据库当时不 可用的情况下系统如何处理;如果业务库某次进行了大批量的数据更新,如何保证共享数据库中毫 无遗漏地更新了相应的信息等。 3 业务互操作 现有的共享数据平台中已经实现了业务数据库对于共享数据的触发更新。但是,共享数据库对 于业务数据库的触发更新还未实现。而且,现实中存在业务库数据库与共享数据库不可见的情况。 要实现业务互操作,就要保证业务库和共享数据库之间可见。可以采取匿名的机制,使业务库 和共享数据库间保持“可见”,又彼此独立。 4 事务 事务是构建可靠的基于中间件的系统的一个重要的方法。依据建设统一共享数据平台的构想, 数据一致性问题是共享数据平台要解决的一个核心问题。自然地,可以采用事务来保证数据一致性。 在高校信息集成这样的环境中,也必然要考虑更高层次的消息传递可靠性和数据的安全性问题。但 是,现有的消息中间件系统对于事务的支持还很不足,不能满足共享数据平台中保持数据一致性的 要求。我们将采用消息和事务集成的机制,以期在消息中间件中提供更强的事务支持。 本文在详细研究分布事务和消息中间件技术的基础上,主要围绕在基于内容的发布问阅消息中 间件的异构数据源集成方案中实现各业务系统与共享数据库间的实时更新数据集成展开讨论。其中, 在基于内容的发布订阅m o m 中实现事务和消息的集成是问题的关键所在。 消息中间件( m e s s a g e - o r i e n t e dm i d d l e w a r e ,m o m ) 是中间件中发展较为迅速,也是比较成熟的 一类中间件,是一种由消息传送机制或消息队列模式组成的中间件技术。它利用高效、可靠的消息 传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成,已经广泛应用于企 业应用集成( e a i ,e n t e r p r i s ea p p l i c a t i o ni n t e g r a t i o n ) ,而且,越来越多的分布式应用也采用消息中 间件来构建。 3 东南大学硕士学位论文 事务是构建可靠的基于中间件的系统的一个重要的方法。 事务是一个原子工作单元( u n i t - o f - w o r k ) ,是构建可靠、容错系统的通用方法。事务的执行将 使系统从一个一致状态转换到另一个一致状态。数据库系统中,事务被用来确保应用程序对数据库 访问的一致性和可靠性。在网络分布环境中,应用的数据和处理分布在不同的计算机上,分布式事 务的应用越来越广泛,大量的分布应用如工作流应用、电子商务应用以及e a i 等,必须依靠平台提 供的分布事务服务才能正确和可靠地运行。 事务和消息的集成是研究如何在分布环境下构建可靠应用的重要问题。当前,事务和消息的集 成存在无法定义组件依赖、不支持发布消息的即时可见性等问题。而且现有的集成方案都是基于消 息队列或者是基于主题的发布订阅。在基于内容的发布订阅中间件中提供事务和消息的集成是一个 新的研究方向。 在基于内容的发布订阅消息中间件中,提供一种事务模型,它能够把一系列事务客户端的执行 上下文通过消息发布、传送和处理操作关联起来,就此简化开发,避免应用程序实现复杂的依赖关 系定义。具体说,包括以下几个主要部分: 1 事务模型 讨论基于内容的发布订阅消息中间件中的一种事务模型,包括它的失效模型和恢复策略。该模 型要能够提供可补偿客户端与不可补偿客户端两种支持。 2 事务协议 讨论该事务模型的事务处理过程及各过程中的具体技术支持,如动态确定事务参与者列表,发 布事件,提交事务等。 3 事务服务 在基于内容的发布订阅消息中间件中提供一种事务服务,实现该事务模型。具体包括该事务服 务的体系结构、a p i 以及失效检测、恢复等。 1 4 论文组织 本文内容共分为七章。 第一章介绍本课题的研究背景、研究现状、研究内容等; 第二章介绍共享数据平台框架,通过分析其系统架构和功能架构,指出共享数据平台数据集 成和共享的重要性以及共享数据库实时更新、业务互操作、可持续发展的新需求,以及针对现有数 据集成方案的不足提出对另外一种消息中间件技术的需求:它不但具有可靠的消息传递机制,更高 效的数据订阅机制,而且能够实现业务库的业务互操作、数据的实时更新,提供更强的事务支持: 第三章综述中间件技术和分布事务处理技术,详细介绍了消息中间件技术和分布事务处理。 前者主要介绍了消息中间件的通信模型,后者包括分布事务处理的标准、几种分布事务处理模型及 分布事务处理中的关键技术,并指出已有消息中间件中对事务的支持及其存在的不足,阐述进行事 务和消息集成的必要性; 第四章指出实时更新数据的集成方案设计思想和主要实现机制,其中以事务和消息集成为核 心机制。该章节的后半部介绍了事务和消息集成的相关研究工作,包括已存在的原型系统、集成策 略等,同时分析了现有集成方案存在的问题; 第五章提出一种能够满足共享数据实时集成需求的基于内容的发布订阅消息中间件中的事 务处理模型p s 事务,并在h e r m e s 中实现事务服务h t s ,提供对p s 事务的支持; 第六章利用数据库客户端实现h t s 的方法实现共享数据平台实时更新数据集成方案,并总结 该系统的特点,指出其可以满足提出的设计需求: 第七章总结全文,并展望下一步工作,包括消息路由、消息匹配和其他相关问题的讨论。 一4 第= 阜“ 数女平自框架”概4 第二章共享数据平台框架设计概述 2 1 共享数据平台的需求分析 悟窝蚕虱 麓隧i 从系统的角度,共享数据平台主要由咀f j l 个部分组成: i统一身份认证门户 面向全校的统一的身份认i i i ! 与管理模块一是一种蕈丁i n t e r n e t c o m m u n i c a t i o n se a g l n e ( i c e ) 技 术所实现的分布式的身份认证系统。韭卓数据平台的所有使州州户都是在统身份认证门户中注册 的用户。 2 兆享数据库及其管理 由共享数据库、业务数据库等部分组成,是数据集成的核心部分与基础。 3 基丁j 2 e e 的共享数据平台服务 由共享数据平台控制台、数槲订阅模块等几个有机的模块组成,提供数据的集成与共争、用户 m 南大学碗l 学位镕女 权限管理、综分析书询等服务。 2 3 共享数据平台的功能架构 d p s t a r 是麻数字化段同项目强调建设统一共享数据下台的背景而开发的。在此2 前,麻用系 统问的信息共享需要依赖j 二怍人员通过手【:完成或者相互提供基丁a p 的访问接口,这种连接方式 是紧耦台的具有紧耦合调方式的所有缺点 1一个系统的瘫痪或者升级可能导致这种原有的共享连接不能正常l 作,甚至足相麻的系统 无法正常l 。作: 管理人员的岗位变化会导致信息无法j e 享: 存在“数据冗余”的问题: 来自不同业务系统的数据冈为数据格式的不一致需要进行大肇的转码f 作订能完成昂终的 在这样的背景f ,建设统卓数据平台的构想被提以明解决如f 的核心问题: 】再业务系统上的数据的共享 采丌j 松埚台的方式实现校同内各部门间信息的透明访问: 2 数据一致性 定义校内通川的数据标准,避免因为格式不同导致的数据不致或者不可用:缩短业务系统问 的信0 同步周划; 3 对已有数据的整合 对业务系统l 存储的信息按照通用的数据标准进行清理_ 惮台,咀提高数据的u 丁用性和u r 信度。 e 卓数据平台d p s t a r 从助能角度主耍分为诵研分析模块、元数据管理模块、共享数据集成+ , 共亨模块和全局麻服务模块儿个主要的部分,共享数据平台通过这几个土要的服务为校l 叫信息化 提供透明的、可靠的、尚质螭的、可扩展的数据集成与卓服务。共享数据平台d p s t a r 的功能架 构图如矧2 2 所示: 国2 2j e 辜* 平台功臆架目 2 31共卓数据的集成与其享模块 共享数据的集成与共享模块l ,婴包括阿方面的主要内容 第二窜j 享数据平台框架设计概述 1 共享数据集成方案 针对异构业务系统、共享数据库环境以及用户对于数据订阅的不同要求,共享数据平台选取合 适的数据集成方案,如e t l 、触发器、消息组件等; 2 共享数据订阅方案 根据川户对丁数据订阅的不同要求( 如批量周期更新数据、即时更新数据、增量更新数据等) 选取合适的订阅及分发策略,如消息、e t l 、文件、视图等等。同时共享数据订阅模块提供数据订 阅的相关安全机制与权限机制,保障数据订阅过程中的安全性。 共享数据集成与共享模块是共享数据平台的核心内容,具有良好的扩展性、兼容性,支持异构 数据库系统、异构操作系统之间的数据集成与共享以及共享数据平台的迁移。 2 4 共享数据集成的分类 共享数据集成策略根据业务库系统环境与共事数据平台环境之间的异构性,用户对于集成度、 更新周期等要求的不同,按照连通性、及时性、是否增量分为以f 三类情况: 1 定期批量更新 定期批量更新的特点是:数据量比较人,数据更新周期比较长( 通常是以天为单位) ,数据的质 量良莠不齐,数据更新的过程对丁增量式的更新没有明确的要求。目前共享数据平台主要使用 o r a c l e 提供的e t l 具o w b 或者东南大学数据库实验室白行开发的s e u e t li :具米实现基于异 构数据库的数据抽取。 2 即时增量更新 即时增量更新的特点是:数据量比较小、数据更新周期敏感,要求具有良好的即时性,数据的 结构通常比较简单,不会涉及过丁复杂的处理过程。为了提高数据更新的效率通常要求选取增量更 新的方式。 3 业务库数据库与共享数据库不可见情况下的数据集成 业务数据库与共享数据库之间的不可见具有两层含义:一方面是物理上的不可见,即业务数据 库与共享数据库处于不连通的异构网络环境;另一方面,是指由于安全冈素等客观原因,业务数据 库与共享数据库之间逻辑上不可见,即两者不可以互相访问。通常在这种情况下,共享数据平台利 , j 数据采集程序调用业务数据库的应用服务,将数据转储剑与共享数据库可见的临时数据库中,然 后根据数据的特点及更新要求分别选取上面两种集成方式之一。 共享数据平台的数据集成方案概要如图2 3 所示: 图2 3 数据集成方案概要 2 5 基于j m s 的即时增量更新数据集成方案 j m s ( j a v am e s s a g es e r v i c e ,j a v a 消息服务) 是由s u n 丁1 9 9 8 年提供的专门用于企业消息系 统的标准j a v aa p i ,这意味着它是一个能够跨不同类型消息系统而使用的通用消息a p i 。j a v a 虑, j 利用j m sa p i 连接到企业消息系统,垦建立连接,应用就可以使用底层企业消息系统的l :具来创 7 东南大学硕士学位论文 建消息,并与一个或多个对等应用进行异步通信。j m s 本身并不是消息系统。它是消息客户与消息 系统通信时所必须的接口、类的抽象。j m s 本质上与j d b c 抽象访问关系数据、j n d i 抽象访问命名 目录服务一样,是访问消息系统的抽象定义。 在j m s 中,消息客户被称为j m s 客户( sc l i e n t ) ,消息系统或m o m 被称为j m s 提供者。 一个j m s 应用一般由多个j m s 客户和一个j m s 提供者组成的业务系统。 j a v a 应用将j m s 接口作为其编程模型的组成部份来访问消息工具。消息工具由j m s 供应者和 底层企业消息系统提供。 j m s 支持点对点p 2 p ( p o i n t - t o - p o i n t ) 和发布订阅( i m b l i s h s u b s e r i b e ) 两种通信模型。 p u b i i s h ,s u b s c r i b e ( 一对多) ,丐丽丽;亓i 话r 墅匦匠二卜叫( 二 叠 二 :“ 、叫甄丙丽品f p o i n t - t o - p o i n t ( 一对一) ,1 函话顽f s e n d e r j- l _ _ j q u e u e 一一一“ 二匿匦巫 图2 4j m s 两种通信模型 如图2 4 所示,点对点模型用来支持一对一的消息传送,允许消息发送者和接收者之间通过名 为队列( q u e u e ) 的虚拟通道进行同步或异步的消息传送。发布订阅模型支持一对多的消息传送, 允许消息发送者和接收者通过名为主题( t o p i c ) 的虚拟通道进行同步或异步的消息递送。 2 5 1 共享数据平台消息中心设计思想 1 无连接消息传递 使用存储和转发消息队列,计算机不会受到网络的干扰,也不必建立会话。 2 消息优先化 消息优先化允许先发送紧急或重要的消息,再发送次重要消息,这样可以保证对关键的应用程 序有足够的响应时间,而忽略不太重要的应用程序。 3 有保障的消息传递 消息可以存储在基于磁盘的队列中,然后转发以提供有保障的消息传递。 2 5 2 共享数据平台消息中心的消息传递机制 共享数据的消息机制采用p u b s u b 模型,定义了如何向一个内容节点发布和订阅消息,这些节点 被称作主题( t o p i c ) 。主题可以被认为是消息的传输中介,发布者( p u b l i s h e r ) 发布消息到主题,订 阅者( s u b s c r i b e r ) 从主题订阅消息。主题使得消息订阅者和消息发布者保持互相独立,不需要接触 即可保证消息的传送。如图2 5 所示。 m 2 5 共享数据平台消息模型 系统订阅发布通过一个订阅发布代理来管理各个主题消息,以及每个主题的订阅者。共享数据 平台采集程序结合业务系统所提供的源数据以及共享库当前的数据计算差异数据并向消息中心注册 8 第二章共享数据平台框架设计概述 该主题消息。消息中心根据用户的订阅情况将这个消息分发给该主题消息的订阅者,即和每一个订 阅者进行一次端到端的通信。 消息传递的基础是端到端的通信,共享数据平台利用共享内存提供模拟发送队列和接收队列, 起到对发送消息和接收消息的控制和缓冲作用。通过j a v a l 为建的同步机s y n c h r o n i z e d 实现对于共享内 存的管理,解决冲突问题;利用向量t o r 模拟实现队列机制。 2 6 本章小结 当前,校园内部各业务子系统之间的数据交换多采取定期通过电子邮件或磁介质的方式实现。 现有的这种数据交换方式存在如下弊端: 1 数据交换频度比较低而且不可任意控制,数据无法实现即时更新或更新周期过长,数据相 对陈旧,不能适应学校或部门管理的需求; 2 从学校的角度无法保障数据的一致性和完整性,存在大量的重复数据以及脏数据,因此不 能为学校提供可靠的高质量的数据服务,不能适应学校的新需求进行有效的综合分析、汇总: m s 具有可靠的消息传送机制,能够提供基于主题的数据订阅。采用基于j m s 的数据集成方案, 在一定程度和范围内克服了上述弊端,满足了对于共享数据集成的要求。 但是随着信息化的普及和信息量的增长,可以看到基于j m s 的共享数据集成方案将不能满足新 的发展需要。主要表现在: 1 基于主题的数据订阅 信息量的剧增,使得基于主题的数据订阅会导致很多无用数据的接收。如想订阅“计算机系” 的数据信息,利用基于主题的订阅模式只能从所有的“d 印t ”信息中搜索“d e p t - - c o m p u t e r ”的信息。 在目前高校系别乃至专业精细化的情况下,这无疑会影响系统效率。 2 数据同步延迟 基于j m s 的即时增量更新数据集成方案与定期批量更新相比较,执行效率已经大大提高。但是, 现有的共享数据集成方案都存在不同程度的数据同步延迟。要保证共享数据库与各业务库间信息的 最大同步,实时更新策略必不可少。而且,校园信息化的发展对于实时更新的需求也日益显露。 3 业务互操作 要实现实时更新,就必然要求各业务库和共享数据库彼此“可见”,实现业务互操作。但事实 上,为了维护共享数据库的数据权威性,通常不允许通过业务数据库操作共享数据库。而且,现实 中,由于网络异构或者其他原因,业务库数据库与共享数据库彼此“不可见”。这显然不利于实现 数据的实时更新。 4 j m s 中对事务的支持不足 事务是构建可靠的基于中间件的系统的一个重要的方法。依据建设统一共享数据平台的构想, 数据一致性问题是共享数据平台要解决的一个核心问题。自然地,可以采用事务来保证数据一致性。 但是,j m s 中的事务仅用于实现消息的出队,入队或者,对于事务的支持还很不足。 因此,我们需要另外一种消息中间件技术,它不但具有可靠的消息传递机制,更高效的数据订 阅机制,而且能够实现业务库的业务互操作、数据的实时更新、更强的事务支持,同时又能够保持 共享数据库和业务数据库各自的“独立性”。 9 东南大学硕士学位论文 第三章消息中间件和分布事务处理 3 1 消息中间件 3 1 1 消息中间件的定义 目前对消息中间件的定义还未形成统一的行业标准。一般认为,消息中间件是一种由消息传送 机制和消息队列模式组成的中间件技术,它利用高效可靠的消息传递机制进行平台无关的数据交流, 并基于数据通信来进行分布式系统的集成。 消息中间件以“消息”的形式收发不同系统中的应用程序数据。消息传送是消息中间件的关键 技术。消息可以同步传送,也支持异步传送。在异步方式下,应用程序并不需要消息即时即刻传送 到对方,只是由m o m 确保把信息以消息的方式传送到适当的目的地,并且只传一次。通信的双方 以异步、非阻塞、确定的方式收发消息,不需要实际的物理通路。因此,消息中间件很适合松散耦 合系统。 应 用 程 序 m i d d l e w a mm i d d l e w a r e a p l+ +a p i s e r v i c e ss e r v i c e s l c o m m u n i c a t i n gb e t w e e n m e s s a g i n gi n f r a s t r u c t u r e 图3 1m o m 结构 应 用 程 序 一个功能完善的m o m 系统所提供的服务不仅仅包含消息的传送,而且还包括数据翻译服务, 安全性,向多个应用程序广播数据,错误恢复,网络中的资源定位,路径选择开销,消息及请求的 优先级设置等等。通常它还提供丰富的可视化部署管理工具,有一个简单而直接的a p i 编程接口。 如图3 1 所示,在企业级应用的三层体系结构中,消息中间件位于中间层,即业务逻辑层。消息中 间件通过核心的a p i ,可扩展到不同的系统和平台上,从而满足h t e m e t 环境下快速、可靠地连接 异构资源的需求。 3 1 2 消息中间件的主要特点 消息中间件的主要特点包括以下几个方面: 1 存储和转发通信 消息中间件能使应用程序向那些非正在运行或不可达的应用程序发送请求。它提供存储中介来 暂存消息,并能确保一旦网络连通或者接收方应用程序开始处理时消息就能被发送。 2 防御通信 应用程序间通信的任何失败,都有可能导致严重问题。通过向消息中间件发送请求,应用程序 将能被保护起来以防在网络失败时造成通信损失。 3 并发执行 在远程过程调用等紧密耦合机制中,请求者在向多个不同的接收方发送请求前必须等待接收方 逐一返回响应。通常,开发人员通过同时发出多个同步调用( 线程机制) 来实现,但是这需要很复 杂的编程技术。使用消息中间件,不需要特殊的编程技术,应用程序可以将请求以消息的形式发出, 然后立刻转向其他工作。这一通信类型通常叫做“雇佣和遗忘”( f i r e - a n d f o r g e t ) ,很难用那些需要 发送线程等待响应的通信技术实现。这样,应用程序可以向许多不同的接收方发送请求而不必等待 响应,可等待接收方平行地处理请求,当所有的响应消息都到达时,或无论什么时候只要方便,就 进行消息处理。 1 0 第三章消息中间件和分布事务处理 4 无连接通信 面向连接的通信并不总是实用。因为消息发送者可能事先不知道消息的最后接收方。例如在发 布和订阅环境中,不可能预先知道所有感兴趣的接收方的身份。一些接收方在消息被发送时可能正 处在离线状态,不可能建立连接。利用消息中间件,应用程序可以通过重新发送同一消息到一个不 同的目的地,或通过向任意数目的接收方多次发送同一消息,来将消息简单地交给其他应用程序。 另外,在多用户环境下,面向连接的应用程序也会产生锁定( 1 0 c k i n g ) 和串行化( s e r i a l i z a t i o n ) 问 题。例如,大多数面向连接的机制要求接受者平行地处理所有并发请求。因为状态是被请求者共享 的,为了同一时间多个请求的利益,接收者必须应用逻辑的方法去保护数据防止被访问或修改。利 用消息中间件,所有的请求都被包装为消息。接收方可以选择一次只处理一个消息,或采用不会

温馨提示

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

评论

0/150

提交评论