单位文秘网 2021-10-16 08:10:05 点击: 次
摘要:文章分析JMS和XML两种技术在实现异构数据库之间数据通信方面的优势;然后提出异构数据库集成的目标和主要问题,通过对数据库集成方案、数据的传输方式和传输格式、异构数据库访问等问题的分析,提出一种基于JMS和XML的异构数据库集成模型。
关键词:异构数据库集成;JMS;XML;OpenJMS
中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)31-0789-03
The Research of JMS and XML based Heterogeneous Database Integration
ZHAO Xiao-jun
(Economics and Management School, Zhengzhou Institute of Light Industry, Zhengzhou 450052, China)
Abstract: The thesis introduces JMS and XML, and analyses the advantage in realizing of two kinds of technology that constructs the data communication betweenheterogeneous databases,then it puts forward the goal and subject matter of integration of heterogeneous database,and proposes a integrated model of heterogeneous database based on JMS and XML by the analysis of database integrated scheme、means and form of transmitting data、accessing heterogeneous database.
Key words: integration of heterogeneous database; JMS; XML; OpenJMS
在计算机科技日新月异的今天,人们对信息的需求越来越广泛,人们迫切需要从多方面获得数据。而数据库管理系统的多元化,使得人们面对的往往是不同的数据库管理系统,乃至于不同的操作系统等,应用程序之间难以实现相互的协同。在许多企业和政府部门,由于信息系统开发的阶段性,存在着许多完全独立的异构数据库应用系统,它们因为独立开发而形成了一个个信息孤岛。这些企业/政府部门迫切需要集成这些独立的应用系统和数据库以实现信息共享。这就使得结构不同的数据库即异构数据库的集成成为数据库应用技术的一个重要研究课题。
JMS具有Java语言特有的平台无关性,它采用同步/异步机制处理分布式应用,能够非常容易地实现企业系统之间的松散耦合,并且能够通过消息服务提供商实现可靠和健壮的消息传递,满足了分布式环境下异构平台的交互行为的需要。XML以与平台、语言和协议无关的格式描述和交换数据,其自描述性使其非常适用于不同应用间的数据交换,逐步成为数据表示和信息交换的工业标准,提供了异构数据库之间进行数据交换的一条有效的途径。
本文结合湖北交通科技计划项目《湖北港航电子政务系统》展开对异构数据库集成方法的研究,提出了一种基于JMS和XML的异构数据库集成模型。
1 JMS技术
异构数据库集成的一个难点就是如何解决不同平台不同数据库数据传输的问题,JMS具有Java语言特有的平台无关性,它能够满足分布式环境下异构平台的交互行为的需要,是最好的选择。
JMS是JAVA消息服务的缩写,它是一种接口规范;它的体系结构由供给者、客户和消息组成。
1.1 JMS消息模型
JMS消息由三部分组成:消息头,消息属性和消息主体。对于消息主体,JMS规范定义了5种消息类型:ByteMessage, 字节流消息;MapMessage, 映射集消息;TextMessage, 文本消息;StreamMessage, Java原类型流消息;ObjectMessageJava对象消息。
JMS可以实现消息的同步和异步接收。
1.2 JMS两种消息传输模式:点对点,订阅/发布
点对点提供传统的排队机制。此模式中,客户端应用通过一个队列发送消息到一个顺序获得消息的接收客户端。一个JMS消息队列是表示消息发送者目标及消息接收者数据源的管理对象。
发布/订阅是一种一对多的发布模式。此模式中,客户端应用向主题发布消息,主题则被其他对此主题感兴趣的客户所订阅。所有订阅客户将收到每一份消息(遵从一定的服务质量、连接和选择)。
JMS规范允许客户端应用使用两种模式的混合。
1.3 JMS工具
1) 管理对象:是一种由JMS管理员使用客户端创建的包含JMS配置信息的对象,并被用于实际应用中管理JMS应用。管理对象中包含JMS客户所需要的相关信息,包括连接到JMS提供者以及本地地址等参数。
目的地对象:是JMS客户发送和接收的消息的目标对象。
连接工厂:是JMS客户用来创建一个到JMS提供者之间的连接的管理对象。
2) 连接: 封装了与JMS提供者的一个虚拟的连接
3) 会话:是产生和销毁消息中的单线程上下文。
4) 消息消费者:是由会话创建的对象,用于接收发送到目的地的消息
5) 消息生产者:由会话对象创建,用于发送消息。
1.4 JMS接口
JMS标准接口与上面的几种工具一一对应,而且,每一种消息传输模式—一点对点和发布/订阅—一依据标准接口都定义了一套子接口。
1.5 JMS应用开发
广义上讲,JMS应用程序就是一个或多个进行消息交换的JMS客户端。开发JMS客户端通常有如下步骤:
1) 通过JNDI查找ConnectionFactory对象;
2) 通过JNDI查找一个或多个Destination对象;
3) ConnectionFactory根据需要派送的消息来创建一个JMS Connection对象;
4) 使用 JMS Connection对象来创建一个或多个 JMS Session对象;
5) 使用 JMS Connection对象和 Destination对象来创建所必须的Message Producer对象和MessageConsumer对象;
6) 如果需要发送消息,则通过消息生产者创建一条或多条消息
7) 告诉 JMS Connection对象可以开始发送消息。
1.6 JMS提供的消息传输可靠性机制
JMS通过以下四种设置来保证消息传输的可靠性:
1) 事务性会话可以确保消息的发送和接收操作的正确执行;
2) 持久性消息传输方式可以保证消息在既便是出现系统错误或者通信错误的情况下仍然能最终到达目的地;
3) 持久订阅者可以保证能够收到所有发布的消息,即使订阅者有时处于非活动状态。
4) JMS通过定义消息优先级来尽可能的实现优先传递较高优先级的消息。
2 XML技术
XML以与平台、语言和协议无关的格式描述和交换数据,使得它为异构数据库之间提供了一个最佳的数据交换规范。
XML具有以下几个特点:
1) 易于扩展,结构性强;
2) 灵活的数据表示;
3) 易于处理;
4) 与平台无关;
5) 异构系统间信息互通。
XML以一种开放的自我描述的方式定义了数据结构,在描述数据内容的同时能突出对结构的描述,从而体现出数据的之间的关系;同时,它能够确保在通过网络进行交互合作时,具有良好的可靠性与互操作性。
由以上特点可以看出XML在数据表示以及数据库之间数据交换方面的有着独有的优势。
3 基于JMS和XML的异构数据库集成模型设计
异构数据库集成是指利用网络提供的功能,以及现有的数据库资源,向用户提供一种分布式的数据库访问环境,使用户能透明地访问各种不同厂家生产的数据库管理系统(DBMS)。
异构数据库集成的主要难点是如何解决不同平台不同数据库之间的数据通信和多个数据源的集成。这也是建立异构数据库集成模型的关键问题。
要解决这两个问题,需要从四个方面考虑:异构数据库集成方案,数据的传输方式,数据的传输格式,异构数据库访问。
下面通过对四个问题的深入探讨,提出一种异构数据库集成模型。
3.1 异构数据库集成方案
异构数据库集成中,为了满足数据库集成后应用系统的各种服务需要,要保证集成后的数据具有一定的集成性、完整性、一致性和访问安全性,这给数据库的集成提出了要求。
目前,集成异构数据库主要有以下四种方案:
1) 给各种异构数据库都建立用户交互接口,不进行任何模式的集成。
2) 建立联邦数据库系统FDBS(Federated DataBase System)。它是由一组互相协作的但保持各自自治性的成员数据库系统组成,各个成员数据库之间仅存在着松散的联邦式耦合关系,没有全局统一模式,它们通过定义输入、输出模式进行彼此之间的数据访问,从而实现不同程度的数据集成
3) 利用中间件集成异构数据库。中间件位于异构数据库系统(数据层)和应用程序(应用层)之间,向下协调各数据库系统,向上为访问集成数据的应用提供统一数据模式。
4) 建立数据仓库。它是把来自于多个数据库的数据副本都存储在单一的数据库中。在这种结构中,所有数据库的数据都被抽取出来,合成一个全局模式,并存储在数据仓库中。
本文提出一种集成方案:
合并各个异构数据库的数据模式,构成全局模式,依据全局模式建立中央数据库;并且实现中央数据库与各异构数据库数据的一致性更新。
3.2 数据的传输方式
在异构数据库集成中,要有效解决数据分布的异构性、实现客户访问的透明性以及保持每个成员数据库系统的自治性,就必须解决不同平台不同数据库之间的数据通信;而要解决数据通信,首先要解决数据的传输方式问题。
目前,在分布式应用中,完成不同系统间的数据传输有多种方式:CORBA、DCOM、Remote Procedure Call(RPC)和基于消息的传输等等。
相比较而言,基于消息的传输更适应于松耦合的环境,消息的传输具有以下的优点:
1) 松耦合;
2) 消息路由和传送更容易;
3) 负载更灵活,如可以是二进制附件。
基于JMS消息中间件和其他消息中间件比较起来具有以下优点:
1) 跨平台性;
2) 应用简单;
3) 存在大量厂家支持;
4) 采用XML进行消息交换。
OpenJMS是一种开源的,小型的具有独立JMS功能实现的,比较成熟的消息中间件,它既可以实现消息的可靠传输,又可以对遗留数据库系统的影响减缩到最小。OpenJMS实现了JMS API 1.0.2版本。它的总大小还不到40M,而且OpenJMS服务器的启动只占用极少量的系统资源,只需要将它所包含的openjms java包添加在编写的程序里即可实现消息的发送和接收。也可以通过OpenJMS服务器的可视化界面对消息的发送进行管理。
SUN公司的JMQ,IBM公司的MQSeries和BEA公司的Weblogic JMS,这些产品一般都是存在于基于J2EE平台建立的企业应用中,需要占用巨大的系统资源。
3.3 数据的传输格式
选择OpenJMS实现异构数据库集成中数据传输,要解决不同平台不同数据库之间的数据通信,还需要建立一个数据传输的格式标准。
从数据模型的角度来看,XML具有自描述性、平台无关性、可扩展性和能够描述不同复杂程度的数据的特点,因此它很适合用来描述各种异构数据源并实现它们之间的转换。
从数据交换规范的角度来看;XML可以保证在数据传输中,数据的规范性和消息格式的一致性。XML减轻了接收者语法分析和确认的负担,它为丰富的功能性数据结构提供了清晰的标准化途径;并且它具有平台无关的特性,已成为异构数据库数据交换的首选语言。因此,XML可作为各异构平台间信息传递的标准。
以上这些特性表明了XML可以作为异构数据库集成中数据传输的标准格式。
3.4 异构数据库访问
异构数据库集成必然要涉及到对不同平台不同数据库的访问,由于Java语言的平台无关的特性, Java语言来实现异构数据库访问和它们之间的数据通信是最好的选择。
JDBC(Java Database Connectivity),是支持基于SQL功能的一个通用的应用程序编程接口,是一种连接不同数据库的规范。
JDBC除了具有ODBC的上述特点外,更具有对硬件平台、操作系统异构性的支持。
JDBC提供了连接数据库的几种方法:直接通信、通过JDBC Driver通信以及通过JDBC-ODBC桥进行通信。
3.5 集成模型的建立
通过上面的分析,提出一种基于JMS和XML的异构数据库集成方案。如图1。
建立一个中央数据库,集成异构数据库中所有需要共享的数据;采用OpenJMS消息中间件构建异构数据库与中央数据库之间的通讯骨架,保证通讯的安全、可靠;由XML来定义数据传输的格式,实现了数据信息的标准化。
基于JMS和XML的异构数据库集成模型,是集成各异构数据库局部数据模式建立全局模式,根据全局模式建立一个中央数据库,将原有的各个分散的、独立的系统的数据库通过JMS消息中间件与中央数据库连接起来,组成一个有机的整体,在它们之间通过XML来实现数据的交换和资源的共享。
由于原有的各个子系统数据库之间相互独立,接口各异,数据格式互不相同,文章在模型中对原有数据库进行了封装,利用通用的程序提取变化数据并转换为统一格式的XML文档封装进消息中,然后将消息通过OpenJMS消息中间件传递给中央数据库,中央数据库接收到消息后,取出消息中的XML文档依据数据模式映射文件转换为对应于中央数据库的XML文档,最后实现XML与数据库的转换,将XML文档中的数据存储到中央数据库中,实现子系统数据库与中央数据库数据的一致性更新,从而达到异构数据库集成的目的。
参考文献:
[1] 沈良忠,黄德才.JMS和XML的分布式应用研究[J].铁路计算机应用,2004,13(1):14-16.
[2] 吴永英,吕继云,班鹏新.基于JMS和XML的数据集成研究[J].计算机应用研究,2004,7:43-45.
[3] 张良,佟俐娟.异构数据库集成中数据传输问题的研究[J].计算机应用研究,2004,11:65-66.
[4] 殷晓岚,付远彬,李京.企业数据集成模式的研究[J].计算机工程与应用,2002,12:253-255.
[5] 粱鹰,罗伟其.异构数据库的数据转换在大型信息系统中的实现[J].计算机工程与应用,2000,9:103-106.
(责任编辑:单位文秘网) )地址:https://www.kgf8887.com/show-202-96325-1.html
下一篇:井下瓦斯物联监控系统的设计
版权声明:
本站由单位文秘网原创策划制作,欢迎订阅或转载,但请注明出处。违者必究。单位文秘网独家运营 版权所有 未经许可不得转载使用