(计算机应用技术专业论文)数据交换与共享平台及其中间件的研究与实现.pdf_第1页
(计算机应用技术专业论文)数据交换与共享平台及其中间件的研究与实现.pdf_第2页
(计算机应用技术专业论文)数据交换与共享平台及其中间件的研究与实现.pdf_第3页
(计算机应用技术专业论文)数据交换与共享平台及其中间件的研究与实现.pdf_第4页
(计算机应用技术专业论文)数据交换与共享平台及其中间件的研究与实现.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

(计算机应用技术专业论文)数据交换与共享平台及其中间件的研究与实现.pdf.pdf 免费下载

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

文档简介

武汉理工大学硕士学位论文 摘要 近年来随着i n t e r n e t 的广泛应用,各行业、部门的交流需求较以往有了翻天 覆地的发展,但是从前所遗留的系统的异构问题却制约着这种发展。这个问题 来源于对旧有应用的不断扩充和新应用的不断增加中,各行业、部门选择了不 同的硬件平台、网络平台及不同的数据库系统。造成了多种应用模式并存,多 个系统问数据无法交换或数据交换不规范、网络数据共享不规范、数据库系统 同步无法保证等问题。从而产生了“信息孤岛”现象。 数据交换平台近年来得到了各行业的重视,各种数据交换技术如雨后春笋, 这种经济的方式满足了不少行业、企业需求,但是当遇到了网络不通畅问题时, 这些固有平台却遇到了麻烦。因此一种不但是跨平台而且是跨网络的平台显得 尤为重要。中间件是近年来新诞生的技术,短短数年间以其优越的跨平台性能 而得到了快速发展。中间件是一类软件,而非某个软件平台,在中间件内部遵 守一个公用的数据转换原则,中间件有自己的数据处理方式,因而可以不考虑 外部软件平台的特殊性。因而将中间件应用到数据交换平台很符合数据交换平 台的初衷,是必然的趋势。 本论文研究了数据交换平台及中间件的相关技术,并设计并开发一个基于 中问件的数据交换与共享平台,该平台原型可以实现异构数据库的数据交换。 并且做到跨平台、跨网络,实现对用户透明的数据交换。期间对数据交换的映 射算法和原理给出了自己独到的见解。 基于中间件的数据交换平台不同于以往的数据交换平台,克服了从前的数 据交换平台受系统环境、网络环境等的限制的缺点。从前的数据交换平台往往 是针对已有的系统问数据交换需要而开发的,具有很大的局限性,换一个系统 环境或者网络环境,甚至数据库系统版本的差异都可以导致数据交换无法j 下常 进行。而基于中间件的数据交换则可以做到真正的跨平台、网络及底层数据库 系统进行数据交换,对于一般用户来说操作简单,因为底层数据交换操作对于 用户是完全透明的,用户不需要复杂的操作就可以得到需要的结果。 关键词:数据交换,中间件,数据映射 a b s t r a c t i nr c c e n ty e a r s w i t haw i d er a n g ea p p l i c a t i o n so fi n t e m e t ,t h ed e m a n do fa l l c o n u n u n i c a t i o n si nt h ee x c h a n g es e c t o rh a sad e e p l yd e v e l o p m e n tt h a nb e f o r e b u t t h ep r o b l e m sl e f to v e rt h ep a s th e t e r o g e n e o u ss y s t e mr e s t r i c tt h i sd e v e l o p m e n t t h e p r o b l e i i lc o m e sf r o mt h ec o n t i n u o u se x p a n s i o no ft h e o l da p p l i c a t i o n sa n dt h e c o n t i i l u o u si n c r e a s i n gn e wa p p l i c a t i o n s t h e v a r i o u si n d u s t r i e s ,g o v e r n m e n t d e p a r t m e n t sh a v ec h o s e nad i f f e r e n th a r d w a r ep l a t f o r m ,n e t w o r ke n v i r o n m e n ta n d d i 任翻td a t a b a s es y s t e m s t h e i s s u e s l e a dt h ev a r i e t ya p p l i c a t i o nm o d e l , n o n s t a n d a r dd a t ae x c h a n g eo fm u l t i p l es y s t e m s ,n o n s t a n d a r d o fn e t w o r k ,d a t a s h 耐n ga n dt h es y n c h r o n i z a t i o no fd a t a b a s es y s t e m sr e s u l t e di n ”i n f o r m a t i o n s i l o ” p h e n o m e n o n i i lr e c e i l ty e a r sd a t ae x c h a n g ep l a t f o r mh a sb e e na t t a c h e dt ov a r i o u si n d u s t r i e s v a 打o u sd a t ae x c h a n g i n gt e c h n o l o g i e ss p r i n gu pq u i c k l y s u c hac o s t - e f f e c t i v ew a y m e e tal o to fi n d u s t r i e s ,b u s i n e s sn e e d s ,w h i l et h en e t w o r kp r o b l e m i ss t i l le x i s t s ,t h e p l a t f o r m sf a l l i nt r o u b l ew h e nt h en e td o e s n o tw o r k t h e r e f o r en o to n l ya c r o s s - p l a t f o r m ,b u t a l s oag l o s s - p l a t f o r mw h i c hi sc r o s s - n e t w o r k i se s p e c i a l l y i m p o r t a n t i n r e c e n ty e a r s ,t h em i d d l e w a r et e c h n o l o g yd e v e l o p sr a p i d l y f o ri t s s u p e r i o rp e r f o r m a n c ec r o s s p l a t f o r m m i d d l e w a r ei sa k i n do fs o f t w a r er a t h e rt h a na s o 矗w a r ep l a t f o r m i th a st h ep r i n c i p l e so fd a t ae x c h a n g i n gi n t h em i d d l e w a r ea n d w h i c hh a si t so w nw a yo fd a t ap r o c e s s i n g s oi t sn on e e dt oc o n s i d e rt h es p e c i f i c i t y o ft h ee x t e r n a ls o f t w a r ep l a t f o r m s o i tt h a tm i d d l e w a r ei sa p p l i e dt ot h ed a t a e x c h a n g ep l a t f o r mi si n e v i t a b l e t h i sa n i c l es m d i e dt h et e c h n o l o g yr e l a t e dt ot h ed a t ae x c h a n g ep l a t f o r m sa n d m i d d l e w a r e d e s i g na n dd e v e l o p sam i d d l e w a r e b a s e d d a t ae x c h a n g ea n ds h a r i n g p l a t f o 咖,w h i c hc a nb eu s e df o rd a t ae x c h a n g i n go fh e t e r o g e n e o u sd a t a b a s e a n d i t a c h i e v e dc r o s s p l a t f o r m ,c r o s s n e t w o r ka n d i st r a n s p a r e n tt ot h eu s e r t h i sa r t i c l ea l s o g i v e si t so w nu n i q u ep o i n tt ot h em a p p i n ga l g o r i t h ma n d p r i n c i p l e s am i d d l e w a r e - b a s e dp l a t f o r mf o rd a t ae x c h a n g ei sd i f f e r e n tf r o mt h ee x i s t i n g d a t ae x c h a n g ep l a t f o r m i to v e r c a m et h es h o r t c o m i n g sc r e a t e db yt h er e s t r i c t i o n so f 武汉理工火学硕士学位论文 s y s t e ma n dn e t w o r ki nt h ee x i s t i n gd a t ae x c h a n g ep l a t f o r m t h ef o r m e rd a t a e x c h a n g ep l a t f o r m sw e r ep r o d u c e dt o m e e tt h en e e do fd a t ae x c h a n g i n go ft h e e x i s t i n gs y s t e m s ,a n dt 1 1 e yh a dal o to fl i m i t a t i o n s w h e r et h es y s t e mo rn e t w o r k e n v i r o n m e n t ,e v e nt h ev e r s i o n so ft h ed a t a b a s es y s t e mc h a n g e d ,i tc a nl e a dt ot h e f a i l u r eo fd a t ae x c h a n g e m i d d l e w a r e b a s e dd a t ae x c h a n g ep l a t f o r mc a nb et r u l y c r o s s p l a t f o r m ,n e t w o r ka n dt h eu n d e r l i n gd a t a b a s es y s t e mf o rd a t ae x c h a n g i n g ,a n d b ee a s yt oo p e r a t ef o rt h ec o m m o nu s e r s ,b e c a u s et h ed a t ae x c h a n g i n go p e r a t i o ni s c o m p l e t e l yt r a n s p a r e n tt ou s e r s ,a n du s e r sc a ng e tt h en e e d e dr e s u l tw i t h o u tc o m p l e x o p e r a t i o n k e y w o r d :d a t ae x c h a n g e ;m i d d l e w a r e ;d a t am a p p i n g i i i 独创性声明 本人声明,所呈交的论文是本人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 武汉理工大学和其它教育机构的学位和证书而使用过的材料。与我一 同工作的同志对本研究所作的任何贡献均已在论文中作了明确的说 明并表示了感谢。 签名:日期: 关于论文使用授权的说明 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即 学校有权保留交向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权武汉理工大学可以将本学位论文的 全部内容编入有关数据库进行检索,可以采用影印、缩印或其他复制 手段保存或汇编本学位论文。同时授权经武汉理工大学认可的国家有 关机构或论文数据库使用或收录本学位论文,并向社会公众提供信息 服务。 ( 保密的论文在解密后应遵守此规定) 研矧悉琊聊c 蚴:b 国期砌7 ,豹 武汉理工大学硕+ 学位论文 1 1 数据交换需求 第1 章绪论 各行业、部门在开发自己系统时都很少考虑到整体规划问题,由此产生了 各系统i 日j 缺乏统一的任务与数据管理方式。在局域网、内部网的应用系统间的 数据交换与共享,大豆采用开发独立的数据交换程序来完成所需,过多的点对 点连接增加系统的复杂性和不稳定性,造成数据交换困难,“信息孤岛”问题愈 发突出。随着现代社会信息共享需求的不断增加,原有各系统问的交互性就越 来越必要,为了使各系统能够更顺利的实现信息共享,从而在互联网环境下, 突破信息孤岛限制,实现信息的一致性的要求越来越迫切。 一般不太系统间实现信息共享有两种办法:一是针对需求开发单独数据交 换程序,使各应用系统兼容。但是这种方法耗时耗力,而且存在一般系统的不 灵活缺点,显然这种方案是一般人无法接受的。二就是构建一个能够兼容各行 业、部门的数据交换平台,平台内部制定数据交换标准。显而易见,这样一个数 据交换平台更适应当前的要求。 数据交换可以实现逻辑上的总线功能同时可以进行任务管理,数据交换平 台可以想象为一个消息传输管道,连接了各个不同应用系统,负责不同应用系 统的数据源问的数据交换与共享。数据交换平台可实现不同系统之间的任意的 数据交换与共享。 对于数据交换平台的应用必定是越来越广泛的,因为信息化进程的不可阻 挡,数据交换平台可能应用于现有的各行各业,其房展方向也必定趋于越来越 多的行业,以及信息传送同交换平台的一体化,当然也离不开互联网。 1 2 数据交换平台的研究及发展现状 1 2 1 数据交换平台的发展过程 解决数据共享需要数据交换技术,要满足数据交换的网络化解决方案则需 要跨平台化的软件架构。以中间件为基础的数据交换平台可以很好的为正在建 设的各种不同网络应用提供开发和运行支撑,而且平台的良好的协同特性可以 武汉理t 大学硕士学位论文 很好的解决“信息孤岛 问题。 对数据交换的研究始于2 0 世纪6 0 年代末,那时的研究还很少。最显著的 贡献是c o d a s y l 工作组成员的工作。他们试图开发出一种定义数据结构、结 构间关系和实现结构转换的通用方法。同时m i c h i g a n 大学也进行了相应研究, s i b l e y 和t a y l o r 在文献中通过对数据定义和映射语言需求进行分析,提出了一种 设计数据表示、转换语言的通用方法。此外s l i n 等针对人文学科中特定的自定 义数据的转换进行研究,提出了一种图形驱动的数据转换方法【i 】。 然而c o d a s y l 工作组以及s i b l e y 和t a y l o r 的工作太广泛,使得具有经济 可行性方案的实现就需要太多的研究时间。而s l i n 和j h e l l e r 针对特定应用提 出的方案又太窄,没有真正解决数据转换的主要问题。于是在1 9 7 6 年v y l u m 等 人提出一种通用的数据转换和重构方法,它是上面两种方法的折中,能在较短 的时问内为较广大的用户所用。并于1 9 9 7 年在原型系统e x p r e s s 中得到了验 证。在e x p r e s s 中,为了完成数据的表示和转换设计了d e f i n e 和c o n v e r t 两种语言。 1 2 2 国内外数据交换平台的发展概况 早在1 9 7 9 年【2 j ,美国国家标准局( a m e r i c a nn a t i o n a ls t a n d a r d si n s t i t u t e 简称 a n s i ) 委托一个ac r e d i t e ds t a n d a r d sc o m m i t t e ex 1 2 ,简称a s cx 1 2 ( 暂译“权 威标准委员会”) 的组织承担制定商务电子信息交换,即e d i 的统一标准的工作。 时至今r ,美国已有1 0 万个组织应用e d i 进行商业交易和其它业务往来,其中 比较新的应用领域是医疗保健和各类保险业、文字记录和档案管理、金融服务 业、政府部门的物资采购、以及使用因特网进行商业交易等等。有人认为,e d i 的广泛应用,最终将实现无纸办公的美好理想。 我国近几年也开始逐渐重视和普及数据交换技术,很多国内公司都已在数 据交换平台方面取得快速发展。 中关数据交换平台c e n g r p d x s ,遵循标准的、面向服务架构( s o a ) 的方式, 基于先进的企业服务总线e s b 技术,遵循x m l 技术标准和规范,为跨地域、跨 部门、跨平台不同应用系统不同数据库之间的互连互通提供包含提取、转换、 传输和加载等操作的数据整合服务,实现扩展性良好的“松耦合”结构的应用 和数据集成。 金蝶软件自主开发的数据交换平台,该平台可以支持业务模块的业务数据 2 武汉理t 大学硕士学位论文 交换任务,以及支持k i s 系统与异构系统的数据交换,数据交换平台将利用k i s 定义的标准s c h e m a 模版来支持各类异构数据同k i s 系统的交互。 1 3 数据交换平台的问题及解决目标 有了前面所介绍的研究成果提供理论基础,各个公司和研究机构也开发出 了很多数据交换系统。这些数据交换系统虽然功能强大,但是配置复杂,主要 存在如下问题: 1 ) 针对具体的应用制定 只能满足用户在某一种或某一类应用上的交换,当用户想在其他方面交换 的时候,由于操作系统环境的变化、网络环境的变化或数据库系统的变化,必 须为它专门做新的设计,因此通用性低,不利于扩大应用。 2 ) 配置复杂 大多数的数据交换方案需要手工配置,并且配置复杂,配置内容往往涉及 一些专业层次深度较深的内容不利于普通用户操作。而且容易出错,效率低。 3 ) 数据交换需求变化改动大 同一应用的数据交换需求也是随着业务不断变化的,现有的数据交换机制 对业务需求变化的适应性低,不够灵活。 理想的数据交换方案应该是在不降低企业安全措施的前提下,对参与交换 的数据格式没有限制,能够实现数据交换类型的多样性,配置简单,手工配置少, 是一个开放的、低成本的解决方案。 以中间件为核心支撑系统的软件平台是这种网络化应用的解决方案。平台 的集成和协同特性可以解决目前信息化中普遍存在的“信息孤岛”问题。尤其 是消息中间件,以其可靠连接、异步通信、可靠队列、持久存储、负载平衡等 优势,成为交换平台中数据通信的首选。 1 4 本文的内容与组织 本文分析研究了基于中间件的数据交换与共享平台的设计与实现。通过对 j m s 等中问件的应用设计了一个对用户透明,并且跨平台、网络的数据交换与 共享平台。在设计中加入了自己的理解,深入分析了数据及数据类型映射方法。 本文的章节安排如下: 武汉理工大学硕士学位论文 第l 章主要介绍数据交换的课题背景与研究意义,国内外研究现状与存在 的问题和本文主要的研究内容及其组织安排。 第2 章主要介绍论文中应用到的关键技术,并深入分析应用各种技术的优 缺点,展示采用核心技术的优势。 第3 章结合第2 章对各种技术的理解,从系统体系结构、总体框架、层次 结构及模块关联等方面设计一个完整的数据交换与共享平台。 第4 章根据第3 章的设计,完成核心功能的实现方案,开发一个实现了基 于中间件的数据交换与共享平台的原型系统。 第5 章介绍原型系统的运行与维护情况。 第6 章总结本文的主要内容并指出了进一步的研究方向。 4 武汉理工大学硕士学位论文 2 1 中间件技术 2 1 1 什么是中间件 第2 章关键技术 如前所述,随着已有系统的功能需求不断增加和新系统的开发,多种应用 模式造成了硬件平台、网络平台的异构问题,为解决分布异构问题,提出了中 间件( m i d d l e w a r e ) 的概念。中间件是处于应用软件和系统软件之间的一类软件, 是独立于硬件或数据库厂商( 处于其产品的中间,实现其互连) 的一类软件, 是客户方与服务方之间的连接件,是需要进行二次开发的中间产品。 中间件( m i d d l e w a r e ) 是基础软件的一大类,属于可复用软件的范畴。顾名 思义,中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、 网络和数据库之上,应用软件的下层,总的作用是提供位于硬件及操作系统和 应用之间的通用服务。如图2 1 所示,这些服务具有标准的程序接口和协议【3 1 。 服务提供针对不同的操作系统和硬件平台的、符合接口和协议规范的多种实现。 中间件的主要作用是用来屏蔽网络硬件平台的差异性和操作系统与网络协议的 异构性,使应用软件能平滑地运行于不同的硬件系统或操作系统之上。同时中 间件在负载平衡、连接管理和调度方面起了很大的作用,使企业级应用的性能 得到大幅提升,满足关键业务的需求。 图2 1中问件的位置 武汉理工大学硕士学位论文 使用中间件的目的即是为了用开放技术实现大规模的关键业务处理。自以 中间件为基础框架的三层客户机服务器模式诞生以来,这种三层结构以中间层 管理大量( 有时是海量) 的客户端并为其联接、集成多种异构的服务器平台的 形式,能够通过有效的组织和管理,在极为宽广的范围内将客户机和服务器进 行高效组合。同时中间件开创的以负载平衡、动态伸缩等功能为代表的管理模 式已被广泛证实为建立关键业务应用系统的最佳环境,使二层模式下不可能实 现的应用成为了可能,并为应用提供了充分的扩展余地。 2 1 2 中间件的定义 也许很难给中间件一个严格的定义,但中间件应具有如下的一些特剧4 l :满 足大量应用的需要,运行于多种硬件和o s ( o p e r a t i n gs y s t e m ) 平台;支持分布 式计算,提供跨网络、硬件平台和o s 平台的透明性的应用或服务的交互功能。 支持标准的协议,支持标准的接口。 中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式 处理的软件,最突出的特点是其网络通信功能。b e a 公司1 9 9 5 年成立后收购 t u x e d o 才成为一个真正的中间件厂商,i b m 的中间件m q s e r i e s 也是9 0 年代的 产品,其它许多中间件产品也都是最近几年才成熟起来。实际上,交易中间件 也属于是应用服务器,为了区分,人们传统的交易中间件称为分布交易中间件, 因它主要应用在分布式环境下,而将新的应用服务器,称为j 2 e e 中间件,到目 前为止,这都是市场上非常热门的产品。 2 2 中间件的优势及问题 2 2 1 中间件的优势及应用 中间件不是一个孤立软件,而是一个独立软件层。它提供平台( 硬件和操 作系统) 和应用之间的通用服务,具有标准的程序接口和协议,从而避免了应 用系统与具体平台的紧耦合。 多年来,中间件在软件市场上仅占据很小的一部分。随着市场竞争的加剧, 公司经常要进行组织机构调整,越来越多的公司开始关注系统的伸缩性和可扩 展性。而中间件可以跨平台操作。为不同操作系统上的应用软件集成提供方便, 从而满足企业内部对系统伸缩性和可扩展性的要求。 6 武汉理工大学硕士学位论文 中间件作为一种重要的基础软件,在开发和优化等工作中将发挥巨大作用。 首先,由于中间件对服务进程的有效管理,可以减小应用系统对数据库并发的 用户数的要求,从而节约了对数据库的投资,可以节约大量的建设成本。由于 中间层的引入,使应用与数据隔离,从而提高了系统的安全性,而安全在今天 对我们来说至关重要。通过使用中间件,使软件系统的结构清晰,可扩展性好。 对新添加的业务只须配置参数就可以扩展新的业务,从而大大地降低了开发新 的应用系统的风险和开发成本,提高了开发的效率。 在美国等发达国家,中间件己经与操作系统、数据库管理系统并驾齐驱, 成为基础软件的三驾马车之一,特别是在最近几年,只要是分布式应用软件大 多是在中间件的基础上开发的。我国在中间件领域并不落后,起步时间与国外 厂商基本相同,在国内市场的占有率与国外厂商处于同一起跑线上。民族产业 软件的兴盛必须依靠规模市场的支撑。中间件作为系统级软件,有更多的机会 走出国门,参与国际竞争。 2 2 2 中间件的问题 就中间件目前存在的问题来说有以下几点: 1 ) 怕中间层过于复杂或脆弱; 2 ) 虽然灵活当一般会增加系统复杂性; 3 ) 系统的模块化、分层化越细,出现问题可能会越多且不易诊断1 2 3 面向消息中间件 2 3 1 消息中间件的提出 面向消息的中间件或基于m o m 的中间件,使分布式应用程序可以通过发 送和接收消息来进行通信和交换数据。所有这些模型都使一个软件组件可以通 过网络影响另一个组件的行为。它们的区别在于基于r p c 和o r b 的中间件会 创建紧密耦合组件系统,而基于m o m 的系统允许组件进行更松散的耦合。目 前流行的消息中间件产品有i b m 的m q s e r i e s 、b e a 的m e s s a g e q 等。 尽管消息中问件不像r p c 机制那样流行,但越来越多的分布式应用采用消 息中间件来构建,通过消息中间件来把应用扩展到不同的操作系统和不同的网 络环境基于消息的机制更多地适用于事件驱动的应用,当一个事件发生时,消 7 武汉理工大学硕+ 学位论文 息中间件通知服务方应该进行何种操作。事件可以是一个请求,也可以只是一 种警示,事件到来后,即可进行某种处理,但不需等待应答。 使用消息中间件编程采用的是消息中间件的a p i ,可以很好地扩展到不同的 操作系统和硬件平台上。消息中间件的核心安装在需要进行消息传递的系统上, 在它们之间建立逻辑通道,由消息中间件实现消息发送。 消息中间件可以既支持同步方式,又支持异步方式,实际上它是一种点到 点的机制,因而可以很好地适用于面向对象的编程方式。 中间件领域目前最热门的技术是异步的消息中间件,异步中间件技术比同 步中间件技术具有更强的容错性,在系统故障时可以保证消息的正常传输,因 而在过去的两年里增长迅速。异步中间件技术可以分为两类:广播方式和发布 订阅方式。广播方式把消息分发给系统的所有用户。发行订阅方式可以指定哪 种类型的用户可以接收哪种类型的消息。发布订阅方式由于更加智能有效,事 实上己成为异步中间件的非正式标准。 2 3 2 消息中间件的特点 消息中间件指的是利用高效可靠的消息传递机制进行平台无关的数据交 流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队 模型,它可在分布环境下扩展进程间的通信,并支持多通讯协议、语言、应用 程序、硬件和软件平台。目前流行的消息中间件产品的消息传递和排队技术有 以下三个主要特点1 5 j : ( 1 ) 通讯程序可在不同的时间运行:程序不在网络上直接相互通话,而是 间接地将消息放入消息队列,因为程序间没有直接的联系。所以它们不必同时 运行。消息放入适当的队列时,目标程序甚至根本不需要正在运行;即使目标 程序在运行,也不意味着要立即处理该消息。 ( 2 ) 对应用程序的结构没有约束:在复杂的应用场合中,通讯程序之间不 仅可以是一对一的关系,还可以进行一对多和多对一方式,甚至是上述多种方 式的组合。多种通讯方式的构造并没有增加应用程序的复杂性。 ( 3 ) 程序与网络复杂性相隔离:程序将消息放入消息队列或从消息队列中 取出消息来进行通讯,与此关联的全部活动,比如维护消息队列、维护程序和 队列之间的关系、处理网络的重新启动和在网络中移动消息等是m o m ( m i c r o s o t to p e r a t i o n sm a n a g e r ) 的任务,程序不直接与其它程序通话,并且它 武汉理1 二大学硕士学位论文 们不涉及网络通讯的复杂性。 2 4x m l 及相关技术 2 4 1x m l 技术 x m l 为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 e b 上表示结构化信息的一种标准文本格式。x m l 的出现就是 为了要应用于各个不同的层面,可根据应用领域的不同,而以不同的方式来描 述文件。简单地说,对x m l 是以一种简单、标准、并可扩充的方式,将各种信 息如文本、表格,甚至图形等以原始数据( r a wd a t a ) 的方式储存。但在储存的 过程中,加入一些可供识别的标记( t a g s ) ,而凭借这些可供识别的标记,在网 络上的服务器( s e r v e r ) 或客户端设备( c l i e n td e v i c e ) 可将信息内容做进一步 的处理,从而得到所需的信息。s g m l 由于其规范实在过于严谨以及本身具有 高度的复杂性,因此根据s g m l 所衍生制定出的h t m l 便大行其道,在网络上 扮演着主流的角色,但却也失去了数据内容的灵活性与可重用性,也正因为如 此,x m l 才诞生。 x m l 并非是原创的语言,它与h t m l 一样都是根据s g m l 的标准所衍生 制定出来的,融合了s g m l 的数据兼容性与h t m l 的简单标记法,使得它能够 提供一套简单易懂又有效率的程序语法。其借鉴了h t m l ( 超文本标记语言) 与数据库、程序语言的优点,将内容与表现分开,而且克服了h t m l 诸如缺乏 可扩展能力、数据的可重用性和结构化程度差、缺乏表达数据语义的能力等缺 陷和不足,使得应用系统之间能够跨平台地进行高效、便捷的、可扩展的、无 歧义的数据交换。 2 4 2x m l 数据的组成 x m l 数据主要由五部分组成【6 】:x m l 文件头说明部分、文档类型定义部分、 x m l 文件中的元素、x m l 文件中的属性以及元素和属性的取值。元素和属性是 x m l 数据文件的核心部分。x m l 利用文档类型定义对元素进行描述,每个元素 数据项都具有自己的类型描述和结构描述。x m l 允许定义新标记,并且其结构 允许随意嵌套。每个元素可具有一个或多个属性,也可不具备任何属性,用户 9 武汉理工大学硕十学位论文 可为元素自定义属性,但每个属性仅能在元素中出现一次。 2 4 3x m l 的特点 在数据交换平台应用方面,x m l 有其巨大的优势,得益于它一系列特点【_ 丌。 ( 1 ) x l l 的自描述性 x m l 的自描述性使其非常适用于不同应用间的数据交换,而且这种交换是 不以预先规定一组数据结构定义为前提。在数据交换中使用x m l ,程序开发人 员可以方便地用自定义的标记来描述数据。 ( 2 ) x m l 的可扩展性 h t m l 只采用了一部分s g m l 思想,使用了一个固定的元素类型集。这就 使得h t m l 仅仅是符合s g m l 语法的一种固定格式的超文本标记语言,不可扩 展,用户不能在其中增加有意义的并且能供他们使用的标记。x m l 可以在遵守 标记命名规则的前提下进行定义,来满足应用的需要。 ( 3 ) x m l 的跨平台性 x m l 文件实际上就是文本文件,不管是w i n d o w s 平台、u n i x 平台还是其 它平台,它们的含意都是一样的。 ( 4 ) x m l 文件不仅仅包含数据,而且包含了数据的结构。 x m l 文档不需要结构描述部分,它自身的层次关系就可以体现x m l 文档 内的数据结构,因而能非常清晰地表达数据间的依赖关系。 ( 5 ) 互联网是x m l 的最大载体,与传统e d i 的v a n 联网方式相比,互联 网具有成本较低、连接广泛、扩展性好的特点。 所有这些特点使x m l 成为数据交换格式的一个不错选择。同时,与采用数 据库复制实现数据交换的技术相比,数据库复制技术常常基于特定端口和远程 过程调用,端口可能变化,因而这种方式不便于防火墙。将x m l 技术和h t t p 有效结合能够突破端口变化和防火墙限制。x m l 适合于数据交换还有一个特点 1 8 】,就是因为x m l 的树形结构与面向对象的数据的结构很相似,因而很容易地 反映出关系型数据库多个数据表之间的复杂连接关系。 2 4 4x m ls c h e m a 简介 d t d 和s c h e m a 是建立x m l 文件数据模型的两种方法【9 1 。其中d t d 依靠 l o 武汉理工人学硕十学位论文 特定的语法来描述x m l 的文件结构,但它具有支持的数据类型较少、对数据类 型缺乏约束力、不支持名字空间等方面的缺点。s c h e m a 是伴随着x m l l 0 规范 的制订而推出的,它是d t d ( 文件类型定义) 之后第二代用来描述x m l 文件 的标准,是用来对x m l 进行文档类型定义的语言,用来规定x m l 文档的数据 类型及组织方式,同时还是丰富的元数据资源。x m ls c h e m a 是一种定义文件的 方式,拥有许多类似d t d 的准则,但又要比d t d 更为强大一些。与d t d 相比 x m ls c h e m a 拥有许多优势,x m ls c h e m a 可使x m l 和x m l 软件包对数据类 型进行描述,使用x m l 命名空间,允许开发者充分利用继承性,和d t d 不同, 它是真正的x m l 文件。 2 4 5x m ls c h e m a 与d t d 的比较 x m l s c h e m a 的格式与x m l d t d 的格式有着非常明显的区别。x m l s c h e m a 事实上也是x m l 的一种应用,也就是说x m ls c h e m a 的格式与x m l 的格式是 完全相同的。d t d 不能很好地满足x m l 自动化处理的要求( 由于采用了非x m l 语 法格式) ,缺乏对文档结构、元素、属性、数据类型等约束的足够描述。与x m l s c h e m a 相比,d t d 具有以下的局限性: ( 1 ) 对数据类型提供了非常有限的支持,且只适用于属性; ( 2 ) 约束定义能力不足,无法对x m l 实例文档做出更细致的语义限制; ( 3 ) d t d 定义不够结构化,重用的代价相对较高; ( 4 ) 不使用x m l 语法,无法采用一致的方式来处理x m l 文档和d t d 。 ( 5 ) 对名称空间仅提供了有限的支持。 在掌握和使用x m l 技术时i 】,d o m 和s a x 可能是技术人员最常使用到的 x m la p i 。d o m 和s a x 只对x m l 实例文档有效,虽然可以通过它们实现以 x m ld t d 来验证x m l 文档,但是d o m 和s a x 却没有提供解析x m ld t d 文 档内容的功能,也就是说我们无法通过d o m 或s a x 来得到d t d 中元素、属性 的声明和约束的描述。但是在基于x m l + d t d 的数据交换过程中,一些应用程 序需要得到d t d 本身的描述内容和结构,以方便对x m l 文档中数据的处理, 例如在使用关系数据库存储x m l 文档的过程中就涉及到如何将x m ld t d 映射 为关系模式描述的问题。为了实现对x m ld t d 的解读,研究人员必须为x m l d t d 开发新的接口或者专用工具,带来了很大的不便。 武汉理1 二人学硕士学位论文 第3 章数据交换平台的设计 3 1 平台的需求及公共模型方案 随着信息化的发展速度的提升,各系统间采用的硬件平台、网络平台、数 据库系统存在很大的不同,数据交换平台所面对的情况大致有以下几种【1 2 】: ( 1 ) 简单( 小规模) 应用环境。比如小规模企业或者部门的信息系统,应 用环境比较简单,一般都是相同或类似的硬件平台、操作系统、数据库系统, 并且大多都在同一个网络里。此种环境处理问题相对简单,仅由少量数据源构 成。 ( 2 ) 复杂( 异构) 应用环境。比如大型企业用户,信息化建设较早,应用 环境复杂,往往是多种硬件平台、操作系统、数据库系统。这种情况下需要数 据交换平台具备跨平台和企业级数据规划能力,能够在异构平台环境中,完成 各种数据交换操作。 ( 3 ) 分布式平台环境。行业内用户或大型企业一般都拥有分支机构或子公 司,可同时与多家战略伙伴具有紧密的数据共享关系。这些机构通常处于物理 上分布的网络环境中,此时要求数据交换平台采用数据建模和交换区域的规划 方案,具有很强的弹性,能够适应各种网络。 ( 4 ) 网络安全环境。在政府、金融等重要行业的都根据特定的安全需要, 部署了专用的网络安全设备。这种网络环境中,数据的交换和传输将在一定程 度上受到影响。要求平台可以支持多种网络环境,能够穿越物理安全设备,实 现在安全网络环境中的数据交换。 各行业数据是以各种异构的数据形式存在的,拥有不同的数据库及文件存 储方式,数据源位于不同的网络环境中。要想达到对这些数据的整合与交互, 首先要制定统一的数据标准,并实现在网络中通信。 好的数据交换平台需要提出一种通用的交换模型,具备跨平台能力,能够 在u n i x 、m a co s 和w i n d o w s 等平台上运行的,能够将m ss q l s e v r e r 、o r a c l e 、 s y b a s e 、d b 2 、m y s q l 等关系数据库及文件等异构环境资源接入平台,且不局限 于具体任务,面向所有行业的数据交换。任意行业的数据都可在此平台交换模 型基础上实现交换与共享,只需针对具体行业数据,配置其底层数据模型即可, 1 2 武汉理 二大学硕士学位论文 而上层的交换模型是通用的。 综上,数据交换的公共数据标准我们考虑应用x m l 。因为将x m l 用于数 据交换,能够较好地克服传统数据交换技术具有的格式不灵活、成本高以及交 互性差等缺点。x m l 作为数据交换标准,是以x m l 为公共数据模型来实现不 同数据库系统间模式转换和数据交换。当某一数据库需要转换为其它数据库的 时候,只需将它转换为x m l ,就能轻易的将其迁移到其他关系数据库中,具有 很好的通用性和良好的扩展性。 以往的数据交换系统面对的困难主要是缺乏一个公共数据标准来统一描述 关系模式及关系。x m l 的出现完美地解决了这个问题【l 3 】: ( 1 ) x m l 的纯文本特性、与平台无关性首先满足了解决异构数据源交换问 题所需要的跨平台性; ( 2 ) x m l 强大的结构性和良好的语义满足了表达数据库的结构和各种约束 的需要; ( 3 ) x m l 优良的交互性为转换带来了方便,使得数据易于操纵; ( 4 ) x m l 的易于扩展性使得应用可以进一步扩展; ( 5 ) x m l 的可格式化让转换出的结果有更多的表现形式。 因此,x m l 完全可以作为数据交换的公共数据标准。目前,x m l 技术已经 逐渐开始应用于不同数据库的数据交换,并且已成为事实上的数据交换标准, 以x m l 为公共数据标准的数据转换系统也为关系数据库与其他数据类型的转换 提供了便利。图3 1 为基于x m l 的数据库数据交换体系结构图。 图3 1基于x m l 的数据库数据交换体系结构 武汉理_ t 大学硕十学位论文 从图3 1 中我们可以看到,基于x m l 的数据库数据交换就是以x m l 作为 数据库转换的公共数据标准,通过建立各种数据库与x m l 的双向映射关系来实 现不同数据库之间的数据传递。 3 2 平台总体结构设计 根据3 1 节中的平台需求,首先提出一个数据交换平台的总体架构。考虑到 平台的各种需求,设想出的平台架构应为多层结构,这里将平台分为三层结构。 第一层为数据层,实现不同系统中数据源之间的交换,这一层包含交换域及数 据源节点的定义,数据交换中间件等。第二层为建模层,即依照公共信息模型 为行业制定和推行数据标准和应用系统开发标准,建立数据库和元数据模型。 包含数据标准定制、数据源服务器、元数据服务器等。第三层为应用层,指定 规范的企业应用,建立工作流模型,提供综合应用开发平台及全局数据门户等 模块。具体情况如图3 2 数据交换平台总体框架图。 1 4 武汉理工大学硕。l 学位论文 图3 - 2 数据交换平台总体框架 武汉理工大学硕十学位论文 如上所述是数据交换平台的总体构架,实际上,达到资源整合最主要的部 分是实现基本的数据库间的数据交换,是平台的核心概念,也就是平时我们所 提到的数据交换平台,也是本文所重点叙述的内容。在上图中属于数据层与部 分建模层所表示的单元按层次划分如图3 3 数据交换总体结构所示。 图3 - 3 数据交换总体结构 本课题研究的数据交换平台主要以消息中间件为基础,配合x m l 技术,包 含数据访问、数据转换,平台配置管理等模块。可以看成是一个散布着众多数 据源节点,实现这些数据源之间业务数据的透明交换或共享的逻辑网络。同时 包含相应的数据处理、系统配置管理等功能。下面将重点描述这个核心交换平 台的模块设计。 3 3 系统的模块设计 本数据交换平台主要围绕中间件展开,用户、管理员只需通过浏览器查看 所需数据及进行数据转换操作,而不需关心底层配置情况,各种转换操作以及 配置操作通过消

温馨提示

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

评论

0/150

提交评论