已阅读5页,还剩54页未读, 继续免费阅读
(计算机应用技术专业论文)应用j2ee平台实现异构数据访问中间件技术的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着计算机和网络技术的不断发展,以及企业信息化建设的不断深入、软硬件资源 的升级和各种应用的扩展,异构数据库访问技术已是数据库研究的一个焦点。因此如何 利用现有网络资源,在多系统的环境下实现异构数据的移植与整合已是本课题研究的关 键问题。本课题主要基于导师主持的黑龙江省科技攻关项目“面向数字林业应用软件的 研究”,研究的主要目标就是应用j 2 e e 平台实现异构数据访问的中间件技术为数字林业 系统异构、异种数据库的数据移植和数据分析提供解决方案。 本文主要根据当前林业局现有系统的数据异构问题而提出,并依据系统的现状提出 了解决数据异构问题的方案,主要实现互联网环境下对各种异构数据库( 如:0 r a c l e 、 s q ls e r v e r 等) 的连接、访问、移植,以及对各数据库中的数据进行提取,并且完成数 据的整合与分析。 企业异构数据访问系统的实现涉及到众多技术,本文对中间件、o r m 、h i b e m a t e 等关键技术进行了深入研究,并提出了数字林业系统异构数据访问的实现方案。最后, 本文主要以j 2 e e 平台的多层体系结构为依据,结合中间件技术,应用现今最前卫的数 据中间件开发工具h i b e m a t e 框架实现了数字林业系统的异构数据访问。 本论文在系统开发过程中,综合运用了多种先进技术,将j 2 e e 平台的j a v a 前端开 发技术与数据库中间件h i b e m a t e 技术紧密结合,实现了中间件技术与数字林业系统的 整合,在林业项目开发技术上实现了创新。 本课题的研究,将为程序的开发带来良好的经济效应。多层的开发体系使整个开发 程序构件化,提高程序开发的可重用性,为其他程序的开发提供良好的组件。本系统的 实现,可以将它的中问层构件成可复用的中间件产品,应用到需要与异构数据库建立连 接、访问的程序中,从而减少程序员开发的工作量,减少开发周期,大大降低程序开发 成本。 关键词j 2 e e :h i b e m a t e ;中间件;异构数据库;数字林业 东北林业大学硕士学位论文 a b s t r a c t w i t ht h eu n c e a s i n gd e v e l o p m e n to fc o m p u t e ra n dt h en e t w o r kt e c h n o l o g y ,a sw e l la st h e e n t e r p r i s ei n f o r m a t i o nc o n s t m c t i o nu n c e a s j n 9 1 yi st h o r o u 曲,a 1 1 dt h ep r o m o t i o no ft h es o n w a r e a n dh 孤d w a r er e s o u r c e sa n dt h ee x p a n s i o no fe a c hk i n do fa p p l i c a t i o n ,t h eh e t e m g e n e o u s d a t a b a s ea c c e s st e c 量1 t l o l o g ya l r e a d yi saf o c a lp o i n to fd a t a b a s er e s e a r c h ,h o wt h e r e f o r eu s e s t h ee x i s “n gn e t w o r kr e s o u r c e st h a tr e a l i z i n gt h eh e t e r o g e n e o u sd a t at r a n s p l a n ta n dt h e c o n f o m l i t yu n d e rt h em u l t i s y s t e m se n v i r o n m e n ta l r e a d yi st h ek e yq u e s t i o no ft h i st o p i c r e s e a r c h t h i st o p i cm a i n l yt h eh e 订o n 自i a n gp r o v i n c es c i e n c ea n dt e c h n o l o g ya t t a c kp r o j e c t w h i c hm a l l a g e sb a s e do ns u p e r v i s o r ”f a c et h ed i g i t a lf o r e s t r y 印p l i c “o ns o f i t w a r er e s e a r c h ”, a 1 1 de s s e n t i a lt a r g e to ft h er e s e a r c hi s r e a l i z i n gh e t e r o g e n e o u sd a t aa c c e s s i n gm i d d l e w a r e t e c h n o l o g yu s i n gt h ej 2 e ep l a t f o r n lf o rp m v i d i n gt h es o l u t i o nt od i g i t a lf o r e s t r ys y s t e mw i t h t h eh e t e r o g e n e o u sa n dt h eh e t e r o g e n c o u sd a t a b a s ed a t at r a n s p l a n ta n dt 1 1 ed a t aa n a l y s i s t h i sa n i c l em 小nb a s i sc u r r e n tf o r e s t r yb u r e a ue x i s t i n gs y s t e md a t ah e t e r o g e n e o u s q u e s t i o np r o p o s e dt h a t ,a n dp r o p o s e db a s e do nt h es y s t e mp r e s e n ts i t u a t i o nt h es o l u t i o no fd a t a h e t e r o g e n e o u sq u e s t i o ,m a i n l yr e a l i z e su n d e rm ei n t e m e te n v i r o m e mt oe a c hk i n do f h e t e r o g e n e o u sd a t a b a s e ( f o re x a m p l e :o m c l e ,s q ls e r v e r 趾ds oo n ) t h ec o n n e c t i o n ,t h c a c c e s s ,t h et r a n s p l a n t ,a sw e l la sc a r r i e so nt oi nv a r i o u sd a t a b a s e sd a t aw i t h d r a w s ,a j l d c o m p l e t e st h ed a t at h ec o n f o r m i t ya n dt h ea n a l y s i s t h ee n t e r p r i s e h e t e r o g e n e o u s 出瞳aa c c e s s i n gs y s t e m r e a l i z a t i o ni n v o l v e dt ot h e m u l t i t u d i n o u st e c h n o l o g yo fm i d d l e w a r e ,o r ma n dh i b e m a t e n l i sa n i c l eh a sc o n d u c t e dt h e 血o r o u 曲r e s e a r c ht ot h ee s s e n t i a lt e c h n o l o g y ,a n dp r o p o s e dt h ep l a no f r e a l i z i n gh e t e r o g e n e o u s d a t aa c c e s si nt h ed i g i t a lf o r e s t r ys y s t e m f i n a l l y ,t h i sa r t i c l eh a sr e a l i z e dt h ed i g i t a lf o r e s t r y s y s t e mh e t e r o g e n e o u sd a t aa c c e s st h a tm a i n l yb a s i n g o nt h ej 2 e ep l a t f o r mw i t ht i l e m u l t i l a y e r e ds y s t e ms t r u c t u r e ,a n dh a v i n gt h eu n i o nw i t hm i d d l e w a r et e c h n o l o g y ,a n du s i n gt h e n o 、v a d a y sm o s tv a n g u a r d sd a t am i d d l e w a r ed e v e l o p m e n tt o o l h i b e m a t ef r a m e i nt h es y s t e md 昏7 e l o p i n gp r o c e s s ,t h ep r e s e n tt h e s i sh a su t i l i z e dt h em a n yk i n d so f a d v a n c e dt e c h n o l o g i e sb ys y n m e s i s ,a j l dh a sb u i l tc l o s ei n t e g r a t i o nb e t w e e nj a v af r o n te n d d e v e l o p m e mt e c h n i c a lb a s e do nj 2 e ep l a t f b r n la j l dd a t a b a s em i d d l e w a r eh i b e m a t et e c h n 0 1 0 9 y a n dh a sr e a l i z e dt h em i d d l e w a r et e c h n o l o g ya n dt h ed i g i t a lf o r e s t r ys y s t e mc o n f o n n i t y i th a s r e a l i z e dt 1 1 ei n n o v a t i o ni nt h ef o r e s t r yp r o j e c td e v e l o p m e n tt e c l l i l o l o g y t h er e s e a r c ho fm i st o p i cw i l lb r i n gt h eg o o de c o n o m i c a le h e c t f o rt h ep r o c e d u r e d e v e l o p m e n t t h em u l t i l a y e r e d d e v e l o p m e n ts y s t e m c a u s e sc o m p o n e n to ft h ee n t i r e d e v e l o p m e n tp r o c e d u r e ,a n de n h a n c e st h ep m c e d u r ed e v e l o p m e m t ob ep o s s i b l et od u p l i c a t e d u s e ,a 1 1 dp r o v i d e st h eg o o dm o d u i ef o ro t h e rp r o c e d u r e sd e v e l o p m e n t s t h er e a l i z a t i o no ft h e a b 吼r a c t s y s t e mm a yb u i l dm j d d i e w a r ep r o d u c tw i t ht h e u p l i c a t e du s ew h i c hu s e si t si n t e r n l e d i a t el e v e l c o m p o n e n t ,a 1 1 d 印p l yt ot h ep r o c e d u r et h a tn e e d st oc r c a t ec o r u l e c t i o nw i t ht h eh e t e m g e n e o u s d a t a b a s e ,i nt h ev i s i tp r o c e d u r e t h u si tr e d u c e sm ew o r kl o a dw h i c ht h cp r o g r a m m e rd e v e l o p s , a n dr e d u c e st l l ed e v e l o p m e n tc y c l e ,a n dg r e a t l yr e d u c e st h ep m c e d u r ed e v e l o p m e n tc o s t k e y w o r d s j a v a 2 p l a t f o h ne n t e r p r i s ee d i t i o n ;h i b e m a t e ;m i d d l e w a r e ; h e t e m g e n e o u s d a t a b a s e ;d i g i t a lf o r e s t r y 绪论 1 绪论 数据库系统是帮助人们处理大量信息,实现管理的科学化和现代化的强有力的工 具。数据库技术在6 0 年代出现,现在已经渗透到人类活动的各个领域。随着这项技术 的发展,出现了各式各样的数据库管理系统,个大型系统常有很多分支机构,由于工 作的侧重点不同,各分支机构可能使用不同的数据库管理系统来管理数据,这样各机构 之间就需要大量的信息交换,从而提出了异构数据库互访的问题。 1 1 异构数据互操作需求 1 1 1 用户需求 随着计算机技术,特别是i n t e m e t 技术的迅猛发展,许多行业、单位或机构、部门 内部都逐步实现了业务、信息的计算机化管理。例如,林业、保险、医院、机关、学校 等许多机构都采用大型数据库来管理其业务数据。但是,各个行业、部门或机构由于业 务和功能归属不同,所构建的信息服务和管理系统相互隔离。甚至在一个单位内部,各 部门所采用的计算环境也由不同的开发平台组成。因此随着时间的推移和技术的进步, 这些由不同核心技术构建的信息系统就像一个个“信息孤岛”,各自有着不同的处理对 象、操作方法和专用客户端,难以实现数据交流和部门协同。各数据源都是异构的,相 互之间的信息和组织都不一样,这就构成了一个巨大而复杂的异构数据库环境。经验表 明,超过9 0 以上的用户只需要同自己相关的局部数据进行交互:随着处理业务的扩 大,特别是跨地域的发展,数据的集中管理更加困难,以上这些问题的解决都需要将数 据库的数据和功能进行划分和分布,从而解决数据的异构问题【i j 。 1 1 2 技术需求 随着数据异构问题的引入,实际应用中经常需要将一种局部数据模型转换成另一种 局部数据模型,有时可能需要将几种不同的局部数据模型集成在一起。然而在数据的转 换与移动过程中,以下几个方面将直接影响数据异构的解决: ( 1 ) 数据库相关技术的发展; ( 2 ) 在各种可用的数据库管理系统中寻找出对于确定的应用的最佳设计; ( 3 ) 更高的可扩展性和更好的服务要求。 数据库厂商不断地根据应用的需求改进自己的技术和产品,尽力提供虽不完美但越 来越好的数据管理系统。因此大型的企业和机构也跟随着数据库的优化每过几年相应更 换自己的数据库管理系统,包括一些系统的构件。在企业数据库管理系统、操作系统、 软件和硬件进行更换时,系统的维护是一件艰巨的工作。 为了满足以上的需求,在异构数据库间传送数据是必需的。因此,应用一种通用的 数据转换工具,实现异构数据的移植、整合与分析正是本课题所要达到的目的。 东北林业大学硕士学位论文 1 2 异构数据中间件研究现状 中间件( m i d d l e w a r e ) 技术诞生于2 0 世纪9 0 年代初期,中间件是基础软件的一大 类,属于可复用软件的范畴。随着计算机技术的发展,分布式应用系统应用日益广泛, 在这样的环境中,无论硬件平台还是软件平台都不可能做到统一。大规模的应用软件通 常要求在软、硬件各不相同的分布式网络上运行,由此出现了不同硬件平台、不同网络 环境、不同数据库之间的互操作。为了更好地开发和应用能够运行在这种异构平台上的 软件,迫切需要一种基于标准的、独立于计算机硬件及操作系统的开发和运行环境,这 就是中间件技术。 中间件是指基于计算机硬件和操作系统之上,支持应用软件开发和运行的系统软 件,它为企业级的分布式应用提供了一个标准的平台,使得应用软件开发和运行能够独 立于特定的计算机硬件和操作系统平台,实现企业应用系统的集成【“。 从2 0 世纪9 0 年代至今,由于系统应用特别是互联网应用和应用软件的越来越复 杂,中间件的品种也越来越丰富。从最初的消息中问件、交易中问件、应用服务器三大 类中间件,发展到今天的1 0 余种,目前市场上受关注的就有消息中间件、交易中间 件、对象中间件、应用服务器、数据访问中间件、工作流中间件、门户服务器以及安全 中间件等。 近三年来,从全球到中国,中间件产业化速度发展很快,中间件已与操作系统、数 据库并列成为三大基础软件;中国软件产业己从应用软件开发扩展到基础软件领域,中 国中间件市场也正朝着正确的方向快速健康地发展。目前在国内市场上除l b m 、b e a 、 s u n 、东方通科技等大型中间件开发商外,还有深圳阿派斯、清华紫光、中科院等都有 自己的产品出现,并已在金融、石化、电信等高端行业,以及i t 等行业中得到广泛应 用。 今后,中间件还将向更高的层次中间件集群的方向发展,覆盖应用集成机制、 工作流管理、元数据引擎、数据仓库等领域,为分布式系统的构筑者提供一体化的解决 方案。 1 2 1 国内发展状况 中国中间件产业的发展起步于2 0 世纪0 年代,近年来它的高速发展是与网络技术 的应用和普及和中国如火如荼的信息化建设分不开的。随着世界范围内信息技术的不断 进步,中国金融、电信、政府、教育等各主要行业相继在信息化基础设施和应用系统的 建设上加大了投入力度。在这个过程中,某些应用系统之间由于信息共享的需要而产生 的多种操作系统、异构数据库的共存以及网络环境复杂性的增加等诸多问题,加大了对 于中间件产品的需求,促进了中间件市场的发展口j 。 经过多年的市场培育,加上政府的积极支持,2 0 0 0 年以来,中间件在中国得到了飞 速的发展。目前,中国中间件产业正处于市场快速增长的成长期。根据赛迪顾问统计的 结果,其销售额的年均复合增长率达3 5 以上,己从2 0 0 0 年的2 3 亿元增长到2 0 0 2 年 绪论 的4 2 5 亿元,在软件市场中的份额也从2 0 0 0 年的1 0 提高到2 0 0 2 年的1 2 3 。2 0 0 3 年二季度,尽管中国软件市场受到国内大部分区域“非典”流行的影响,而使得销售额 出现整体下滑,但从上半年总体来看,软件市场仍然实现了8 8 的增长率,其中,中 间件实现销售额2 1 4 亿元,同比增长达1 2 6 ,高于软件总体市场的增长速度;同时, 中间件在软件市场中的份额已提高至1 3 2 。伴随着中国各行业信息化建设的持续推 进,赛迪顾问认为,今后几年将是中国中间件软件市场实现跨越式发展的良好时机。 目前,中间件产品己成为国内软件行业投资的一个新热点。据了解,国家有关部门 已把中间件列入重点发展、重点扶持的软件项目,并寄希望于中间件能够推动我国在基 础软件实现突破,并带动软件产业的规模化发展。早在2 0 0 0 年4 月,中国软件行业协 会就在京举办“中间件技术与发展战略高级研讨会”,来自信息产业部、科技部、中国 建设银行以及软件行业的专家和领导,针对中间件技术的应用现状和趋势,探讨了以中 间件为突破口,推动中国软件产业发展的问题;在国家科技部、财政部、税务总局共同 组织编制的中国高新技术产品目录中,中间件作为支撑软件首次入选;在2 0 0 1 年 北京市软件产业工作会议上,中间件再次成为关注的热点;在信息产业部发布的投资重 点中,中间件榜上有名。金蝶总裁徐少春曾指出,从整个软件产业来说,中间件搭建了 应用与技术之间的桥梁,成为软件产业链条上不可或缺的一环。只有基于强大的中间 件,高速、高灵活性的应用才有机会成为可能,企业客户高度灵活性的业务需求才能得 以满足。 近三年来中国中间件软件市场的增长率呈上升趋势,表明这个市场正在逐步成长壮 大,中国中间件产业开始迈入规模发展阶段。 1 2 2 国外发展状况 目前国外有不少厂商都开发出自己的中间件产品,其中有全球最大的独立中间件厂 商b e a 公司,还有像i b m 、0 r a c l e 和m i c r o s o r 、h p 、s u n 等大厂商也早已涉足电子商 务中间件。惠普公司以其独特的中间件概念1 0 e ( t h ei n t c r n e to p e r a l jn gs y s t e m ) 为用 户的电子化服务提供一个开放的、灵活的和可靠的实施与应用基础。 以b e a 公司为例,其中间件产品家族为全球2 5 0 0 多家大型机构的关键任务应用系 统所采用,其中多数是世界级企业的应用系统,广泛涉及金融、电信、交通、零售、制 造、医疗、政府等领域。这些用户的共同特点是具有复杂、高端的信息管理系统,应用 环境多种多样且系统用户在地域上分布很广。其应用通常建立在主机或大规模客户机 服务器系统之上,业务处理量极大。 b e at u x e d o 是一个事务处理和消息传递中间件。它提供高层a p i 以建立分布式 应用组件,这些组件在执行时以消息相互通讯,由b e at u x e d 0 的内部服务机制管理。 这些服务机制实现了复杂的分布式事务控制和广泛的分布式应用管理。 随着各种中间件技术及产品粉墨登场,中间件技术已经逐渐走向成熟。中间件技术 发展的动向是更加适应应用系统的要求,贴近应用,与应用的发展同步。软件平台就是 东北林业大学硕士学位论文 中间件技术发展的一个明显趋势。 1 3 异构数据中间件研究目的 ( 1 ) 当前中间件的软件开发领域中,数据访问中间件一直是在中间件技术的边缘 上,独立的产品不多,大都由数据库厂商随数据库产品一起提供。同时,随着“数字林 业”的提出,面向林业的开发项目多数要访问大量数据,又由于原来各林业局的数据库 体系不完全相同,因此出现了数据库异构的问题,为了解决以上的问题,提出了“应用 j 2 e e 平台实现异构数据库访问中间件技术的研究”的课题开发构想; ( 2 ) 通过此课题的开发,程序的整体是一个对数据层和客户层具有良好访问功能的 软件构件,可复用性强,不仅达到能够访问多种数据库( 如:o r a c l e 、s o ls e r v e r 、 a c c e s s 等) 的功能,并对多种数据库中的数据进行分析、处理; ( 3 ) 在此课题中引进中问件技术,就是将应用的业务逻辑和用户界面分离,从而使 应用开发人员能只专注于应用和新业务逻辑的分析、规划和设计,对业务逻辑的一些修 改甚至数据库模式的改动通常都不会要求客户端的改动; ( 4 ) 基于b s 三层结构的开发,所有的业务逻辑都位于中间层,可以进行业务逻辑 的封装,便于进行集中的安全控制,确保系统安全可靠性; ( 5 ) j a v a 具有平台独立性、安全性、面向对象、动态性、分布性等卓越的特性,并 提出了多层结构的新理念和强大的组件技术,因此本课题中程序的灵活性强,易于今后 其他程序引用时的修改: ( 6 ) 在本课题的开发中,j a v a 与数据库的连接接口j d b c 具有平台无关性,支持数 据库异步执行功能,提供良好的数据库独立性等优点,从而使实现异构数据库的连接更 容易和方便; ( 7 ) 能够带来良好的经济效应。通过对此课题的研究,可以将它构件成可复用的中 间件产品,应用到需要与异构数据库建立连接、访问的程序中,从而减少程序员开发的 工作量,减少开发周期,大大降低程序开发成本【4 j 。 1 。4 异构数据中间件研究意义 通过多层开发体系长期以来,人们使用较多的就是“客户端服务器”的两层结 构,即客户端提供用户界面、运行逻辑、处理应用,而典型服务器接受客户端数据处理 语句并对数据库进行处理,然后返回处理结果。这种方式给人们带来了相当的灵活性, 但也有一个很大的缺点,就是一旦客户的业务逻辑有所改变的话,便引起应用程序的修 改以及后台数据的修改,将所有程序模块都重新修改、编译、连接的工作量是相当大 的。另外,由于这种结构是把用户界面和业务逻辑以及数据元绑定在一起,因此会消耗 客户机的大量资源。为了克服这些缺陷,我们应用了三层客户服务器结构。 所谓三层结构,就是在原有的两层结构( 客户端和服务器端) 之间,增加了一组服 务,这组服务( 应用服务器) 包括事务处理逻辑应用服务和数据库查询代理等。随着这 绪论 组服务的增加,两层结构向三层结构转变后,客户端和服务器端的负载就相应减轻了, 跨平台、传输不可靠等问题也得到了解决。增加的这组服务,就是中间件。中间件在三 层结构中主要充当中间层,完成数据安全、完整地传输,通过负载均衡来调节系统的工 作效率,从而弥补两层结构的不足。 在“应用j 2 e e 平台实现异构数据库访问中间件技术的研究”这个课题中,主要就 是想通过基于j 2 e e 平台的j a v a 技术,以及当今中间件技术的理念来实现对异构数据库 的访问。这个课题的研究主要就是针对三层体系结构的中间层,即所谓的中间件技术, 处理应用中的所有业务逻辑和对数据库的访问工作,该层具有良好的可扩充性,可以随 着应用的需要任意增加服务器的数目。 当前,在程序编写过程中,如果我们要对多种数据库进行访问,我们就要编写多个 数据库的连接接口,从而不仅增大程序员的工作量,而且程序的可复用性也很差,因此 为了实现对异构数据库访问,选择基于j 2 e e 平台的j a v a 技术。因为j a v a 具有平台无关 性、安全性、面向对象、多线程的特性,同时它又具有支持所有数据库功能的接口 j d b c ,从而实现了与数据库的连接、向数据库发送s q l 语句以及处理数据库返回的结 果等功能,达到了一次开发,多次应用的效果i ”。 通过此课题的研究,在以后程序开发的过程中,如果遇到访问数据库,并对数据库 中的数据做必要分析的问题,可以把此课题开发的中间件产品直接作为构件来引用,极 大的减少程序员的开发工作量,缩短工期,也节约了大量的开发经费。 1 5 课题研究主要内容 本课题来源于导师主持的黑龙江省科技攻关项目“面向数字林业应用软件的研 究”,合同号为g c 0 4 a 1 0 8 。论文主要针对当前林业局的数据的异构问题进行解决,主 要实现异构环境下对各种数据库( 如:o r a c i e 、s q ls e e r 、a c c e s s 、f o x p r o 等) 的连 接、访问、处理及对各不同或相同数据库中的数据进行提取并做必要的整合与分析。在 数据分析模块,主要是针对当前各林业局的一些必要、公共的数据进行分析。在开发过 程中,主要结合中间件技术,基于j 2 e e 平台,应用现今最前卫的数据中间件开发工具 h i b e m a t e 框架,多层的开发体系使整个开发程序构件化,提高程序开发的可重用性,为 其他程序的开发提供良好的组件。 1 6 论文章节安排 本论文共分为七个章节。第二章开始介绍论文所涉及的各种关键技术,如异构数据 库、中间件技术以及数据库中间件,本章内容的详尽介绍,将作为后续内容的铺垫,更 好的提出了数字林业系统于中间件技术结合的必要性;第三章主要介绍o r m ( o b j e c t r e l a t i o n a lm 印p i n g ,对象关系映射) 技术,通过o r m 的概念、优势以及实现的原理具 体说明引入o r m 模式下的持久层h i b e m a t e 框架的意义:第四章详尽说明数据库中间件 技术的主流框架_ h i b e m a t e 的实现机制、映射机制以及查询机制,数字林业系统异构 东北林业大学硕士学位论文 数据访问的实现均是基于h i b e m a t e 框架在现代多层体系中优势而完成的;第五章依据 现有数字林业系统的现状,具体说明数字林业系统平台的特征及其存在问题,并根据问 题的分析提出了解决问题的方案;第六章为全文的关键,根据数字林业系统项目的实 践,通过异构数据库的连接、数据表的访问以及异构数据系统功能模块的解释具体说明 数字林业系统中异构数据访问的实现过程。第七章就是本论文的结论,结合本论文说明 该课题开发带来的应用效益、社会效益,指出系统存在的不足,并对系统的进一步完善 提供良好的建议。 2 异构数据库旦甲问件技术简介 2 1 异构数据库 2 异构数据库与中间件技术简介 2 1 。1 异构数据库的提出 自计算机问世以来,数据处理一直是计算机的主要工作。由于应用的不断扩大、数 据处理的工作经历了几个不同的发展阶段:非文件系统阶段、集中式数据库系统、分布 式数据库系统、异构分布式数据库系统等阶段。传统的数据处理一般以文件方式为主, 现代的数据方式一般【数据库系统为主。随着应用的扩大,传统数据库系统方式己越来 越不能满足现代数据处理的要求:同时己有的数据库系统又不可能全部丢弃,因此异构 数据库成为可能。 一般说来,一个组织内每一个部门都有着各自的信息要求且有特定的应用。每一个 部门根据自己应用的特性去选择一个适当的数据库管理系统支持自己的应用。如:人事 部门可能会用一个关系型数据库系统去记载员工的记录:生产部门注重产品的装配以及 设计,每一产品由若干人装配,每一部件由若干零件装配,每一零件由图纸及相关参数 组成等等,这些设计说明的最好形式是层次结构,因此可能用一个层次型数据库实现应 用,如i b m ,i m s 系统;供销部门希望用一个网络数据库去表示存货记录间的多对多联 系,如供应者与零件之间的联系就是多对多关系,这样的联系在网络数据库系统中可以 方便的实现,因此可能使用网络型数据库系统;同时,各部门也可能用而向对象的数据 库系统去实现新的应用要求。 以上所述各部门采用的数据库系统对整个组织来说,它们以不同的数据模型描述数 据,分别以不同语言书写事务,以不同机制对访问进行控制,必然导致组织内异构数据 库的形成忡j 。 2 1 2 异构数据库的基本概念 异构数据库包含不同物理模型的数据库、不同数据模型的数据库、同数据模型不同 厂商的同质异型数据库,以及同一数据库厂商的不同版本、针对不同网络环境的数据库 产品等等。为了实现数据的传送,就一定要首先找出它们之间的差异。引起数据库差异 的因素很多,如:计算机硬件、操作系统、数据模型、物理模型、数据语义等的不同 【7 1 。 具体说明有以下几个方面: ( 1 ) 数据库概念模式:分层次、网状、蓑系和面向对象四种; ( 2 ) 数据库的物理模式:不同厂商的数据库管理系统拥有不同的物理结构模式; ( 3 ) 系统控制方式:存在集中式和分布式的区别; ( 4 ) 计算机平台:宿主机硬件的区别; 东北林业大学硕士学位论文 ( 5 ) 操作系统平台:不同的宿主机操作系统; ( 6 ) 网络连接:不同种类、拓扑结构的网络连接。 图2 一l 就是一个典型的异构数据库系统环境: 图2 - 1 异构数据厍系统 从上图可以看出,整个系统处于一种分布的、动态的环境之中。对系统的整合不仅 仅需要把现有的系统合理地融合到一起,更重要的是向各级用户提供一种方便的使用方 式,使得用户能够透明、有效、安全地存取全公司的有效资源。 2 1 3 异构数据库间类型比较 不同的数据库以及同一数据库厂商的不同版本的数据库产品之间对数据类型的定义 是有差别的,通过对比较普遍使用的多个数据库的数据类型进行比较,发现大致有以下 几类差异悼j : 2 1 3 1 不同数据库间数据类型的种类、个数不同 以0 r a c l e 数据库和s q ls e e :数据库之间的比较为例: 0 r a c l e 数据库的数据类型有:c h a r ( n ) 、v a r c h a r 2 ( n ) 、l o n g ( n ) 、d a t e 、n u m b e r ( p , s 1 、r a w 和l o n gr a w 等;s q ls e r v e r 数据库的数据类型有:i n t 、s m a l l i n t 、t i n y j n t 、 2 异构数据库与中间件技术简介 f l o a t 、r e a l 、 c h a r 【n ) 、v a r c h a r ( n ) 、 。i 色x t 、 b 1 n a r y ( n ) 、l m a g e 、 b l t 、 m o n e y 、 s m a l l m o n e y 、d a t e t i m e 、t i m e s t a m p 、s m a l l d a t e t i m e 等。 从中我们可以看出0 r a c l e 数据库提供的数据类型比较少,而s q ls e r v e r 数据库对 各种不同数据的数据类型进行了更细的划分而且在o r a c l e 数据库中没有与s q ls e r v e r 数据库的t i m e s t 锄p 数据类型相对应的数据类型。那么在进行o r a c l e 数据库和s q l s e r v e r 数据库间数据的导入与导出时,我们需要对同一数据根据两数据库间数据类型的 对应关系在被导入数据库中进行其数据类型的选择。 2 1 3 2 针对同一数据类型,不同的数据库对其定义的数据长度亦不同 比如:在s o ls e r v e r 数据库中,数据类c h a r ( n ) 为长度在1 2 5 5 之间的字符数据, 而在f o x p r o 数据库中c h a r ( n ) 的长度却为l 一2 5 4 之间的字符数据;又如在o r a c l e 数据库 中d a t e 数据类型可以存储世纪、年、月、日、时、分、秒;而在其它数据库: p o w e r b u i l d e r 、f o x p r 0 中d a t e 数据类型却只能存储月、日、年。 可见即使是同一数据类型,因其长度的不同使得我们在异构数据库问进行数据传送 及存储时也需要考虑该数据的长度而进行选择( 如:o r a c l e 数据库的导出表单中某字段 的数据类型为d a t e 型,而被导入的p o w e r p 、j i l d e r 数据库表单中相应的字段就不能仍选 d a t e 数据类型,而应选择d a t e t i m e 数据类型) 。 2 1 3 3 对于同一数据,在不同的d b m s ( 数据库管理系统1 中应选择不同的数据类型 对于图像、声音这样的数据应该如何处理呢? 下面列出不同的d b m s 与b l o b 类型 相对应的数据类型,如下所示: d b m s s y b a s es q la n y w h e r e s y b a s es q l s e r v e r o m c l e t n f o r m i x f o x p r o 与b l o b 类型相对应的数据类型 l o n gb i n a 叭l o n gv 打c h a r i m a g e 、t e x t r a w 、l o n gr a w b y t e 、t e x t g e n e r a l 、1 m a g e ( 但不是图像映像本身,而是 个指向存放图像映像的位置的指示器) 2 1 3 4 同一厂商不同版本的数据库产品之间数据类型也有所不同 以f o x p r 0 5 0 与f o x p r 0 2 6 相比:f o x p r 0 5 o 的数据类型明显增多,货币型、双精度 型、字符型( 二进制) 、备注型( 二进制) 是f o x p r 0 2 6 中没有的。 2 2 中间件技术 2 2 1 中间件概述 现代计算机技术迅速发展。从硬件技术看,c p u 速度越来越高,处理能力越来越 强:从软件技术看,应用程序的规模不断扩大,特别是i n t e m e t 的出现,使计算机的应 用范围更为广阔,许多应用程序需在网络环境的异构平台上运行。这一切都对新一代的 软件开发提出了新的需求。在这种分布异构环境中,通常存在多种硬件系统平台( 如 东北林业大学硕士学位论文 p c 、工作站、小型机等) ,在这些硬件平台上又存在各种各样的系统软件( 如不同的操 作系统、数据库、语言编译器等) 以及多种风格各异的用户界面,这些硬件系统平台还 可能采用不同的网络协议和网络体系结构连接。如何把这些系统集成起来少开发新的应 用是一个非常现实而困难的问题【9 j 。 为解决分布异构问题,人们提出了中间件( m i d d l e w a r e ) 的概念。中间件是基础软件 的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用 软件的中间,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户 灵活、高效地开发和集成复杂的应用软件【l 。 由于标准接口对于可移植性和标准协议对于互操作性的重要性,中间件已成为许多 标准化工作的主要部分。对于应用软件开发,中间件远比操作系统和删络服务更为重 要,中间件提供的程序接口定义了一个相对稳定的高层应用环境,不管底层的计算机硬 件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不 变,应用软件几乎不需任何修改,从而保护了企业在应用软件开发和维护中的重大投 资。 2 2 2 中间件分类 中间件的产品种类很多,根据中间件在系统中所起的作用和采用的技术不同,大致 划分为以下五种j 。 2 2 2 1 数据库中间件( d a t a b a s em i d d i e w a 怕) 数据库中间件在所有的中间件中是应用最广泛,技术最成熟的一种。一个最典型的 例子就是o d b c ( 0 p e nd a t a b a s ec o t l n e “v i t y ) 。o d b c 是一种基于数据库的中问件标 准,它允许应用程序和本地或者异地的数据库进行通信,并提供了一系列的应用程序接 口a p i ,当然,在多数情况下这些a p l 都是隐藏在开发工具中,不被程序员直接使用。 用户不必关心关系数据库的实现原理和实现机制,甚至不必了解0 d b c 向应用程序提 供了哪些应用程序接口。 在数据库中间件处理模型中,数据库是信息存贮的核心单元,中间件完成通信的功 能,这种方式虽然是灵活的,但是并不适合于一些要求高性能处理的场合,因为它需要 大量的数据通信,而且当网络发生故障时,系统将不能正常工作。系统的灵活性提高以 处理性能的降低为代价。 2 2 2 2 远程过程调用中间件( r e m o t ep m c e d u r ec a m i d d i e v 旧陀) 远程过程调用是另外一种形式的中间件,它在客户服务器计算方面,比数据库中 间件又迈进了一步。它已经存在了相当长的时间,而且沿用了大多数程序员都非常熟悉 的编程模式程序员就像调用本地过程一样在程序中调用远程过程。启动远程过程的 运行,然后将运行结果返回给本地程序。不但如此,远程过程调用还可以将程序的控制 传递到远端的服务器当中去。 r p c 的灵活特性使得它有比数据库中间件更广泛的应用,它可以应用在更复杂的客 2 异构数据库与中间件技术简介 户棚艮务器计算环境中。远程过程调用的灵活性还体现在它的跨平台性上面,它不仅可 以调用远端的子程序,而且这种调用是可以跨不同操作系统平台的,而程序员在编程时 并不需要考虑这些细节。 r p c 也有一些缺点,主要是因为r p c 一般用于应用程序之间的通信,而且采用的 是同步通信方式,因此对于比较小型的简单应用还是比较适合的,因为这些应用通常不 要求异步通信方式。但是对于一些大型的应用,这种方式就不是很适合了,因为此时程 序员需要考虑网络或者系统故障,处理并发操作、缓冲、流量控制以及进程同步等一系 列复杂问题。 2 2 2 3 事务处理中间件( t r a n s a c t i o np r o c e s s i n gm i d d i e w a 悖) 事务处理中间件是一种复杂的中间件产品,是针对复杂环境下分布式应用的速度和 可靠性要求而实现的。它给程序员提供了一个事务处理的应用程序接口,程序员可以使 用这个程序接口编写高速而且可靠的分布式应用程序基于事务处理的应用程序。 事务处理中间件向用户提供一系列的服务,如应用管理、管理控制以及应用程序问 的消息传递等。常见的功能包括全局事务协调、事务的分布式两段提交、资源管理器支 持、故障恢复、高可靠性、网络负载平衡等等。 2 2 2 - 4 基于对象请求代理的中间件( 0 b j e c tr e q u e s tb r o k e r ) 对象请求代理是近年来才发展起来的一项新技术,它可以看作和编程语言无关
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 执业药师资格考试药学专业知识(一)试题及答案全套
- 护理、院感和公卫基础知识考试试题及答案
- 2025 年大学多媒体技术(特效制作实操)试题及答案
- 新版新课标测试题及答案
- 智能制造专业考试试题及答案
- 月嫂证考试试题及答案完整版
- 机电传动控制复习题
- 高中生安全第一课课件
- 比亚迪上岗证理论考试试题及答案
- 水利工程协会监理员考试题库
- 2025浙江嘉兴市体育彩票管理服务中心招聘编外人员4人考试笔试参考题库附答案解析
- 2025广东惠州市博罗县自然资源局招聘编外人员76人考试笔试备考试题及答案解析
- 2025年乌鲁木齐市招聘警务辅助人员(600人)笔试考试备考题库及答案解析
- 动漫分镜美术课件
- 业务提成返还协议书
- 小学消防安全课件下载
- 卫生管理正高答辩试题带答案
- 《氯甲烷合成工艺副产稀硫酸》
- 钢结构厂房模块化施工技术与质量控制体系研究
- 公路维修养护质量保证体系
- 国家电投集团五凌电力有限公司笔试
评论
0/150
提交评论