APP下载

异构数据库透明访问的研究与实现

2010-03-21王洪辉张振友路翠芳

关键词:数据库系统异构全局

王洪辉,张振友,路翠芳

(河北理工大学 计算机与自动控制学院,河北 唐山 063009)

0 引言

随着Web与异构数据库的结合及Internet在全球的迅速普及,以异构数据库互用技术为代表的信息互用技术已渗透到人类社会包括工业、商业、国防等的各个领域。异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问。异构数据库的各个组成部分具有自身的自治性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。

1 XML

1.1 XML简介

XML[1]是由W3C(World WideWeb Consortium)开发的可扩展标示语言,它将SGML的丰富功能与HTML的易用性结合到 Web的应用中,以一种开放的、自我描述的方式定义了数据结构。在描述数据内容的同时能突出对结构的描述,从而体现出数据之间的关系,它的特点是简单、开放、可扩充性。作为一种标示语言,XML标准是由W3C组织推出的一系列规范组成的,它主要包括XML、可扩展样式表语言(Extensible Style Sheet Language)、文档对象模型DOM(Document Object Mode)以及文档类型定义DTD(Document Type Definition)等。

1.2 XML的特点

XML的主要技术特点: (1)XML是一种元标记语言,与HTML不同,XML不是一种具体的标记语言,它没有固定的标记符号; (2)XML数据的自描述性。是指 XML中的语义标识,一方面限定了元素的层次结构,另一方面也说明了元素的含义,在 XML搜索结果中,由标识就可以知道内容的含义,这使得搜索结果更有意义;

(3)XML的核心是数据。一般来说一个文档里,都具有文档数据、文档结构、文档样式三个要素。而对于XML文档来说,数据是其核心.在XMI中将样式与内容是分开处理的。

2 异构数据库的集成

随着Internet应用的不断普及,Internet的异构分布式信息系统正在迅速发展,Java以其平台无关性、移植性强,安全性高、稳定性好、分布式、面向对象等优点而成为Internet应用开发的首选语言。在Internet环境下,实现基于异种系统平台的数据库应用,必须提供一个独立于特定数据库管理系统的统一编程界面和一个基于SQL的通用的数据库访问方法。Java与数据库接口规范JDBC[2](Java Database Connectivity)是支持基本 SQL功能的一个通用的应用程序编程接口,它在不同的数据库功能模块的层次上提供了一个统一的用户界面,为对异构数据库进行直接的Web访问提供了新的解决方案。

3 总体方案设计

3.1 系统体系结构设计

本系统所设计的异构数据库信息处理系统主要包括两大部分:一是系统的前台部分。有系统的登录、主菜单页、数据表定义和删除、数据的插入删除和更新、数据的查询及各种信息的显示。二是系统的后台部分。主要是采用 EJB[3]组件如各种数据库的定义组件、全局数据字典组件、数据插入组件、查询更新组件、数据删除组件和数据查询组件等处理前台提供的各种数据库操作语句和各种不同地点的数据库的连接等操作。

本系统采用三层体系结构,包括浏览器/应用服务器/数据库服务器。为实现系统的三层结构采用MVC[4]模式,该模式有视图、控制器和模型三部分组成,MVC组件类型的关系和功能如图1所示。视图负责向用户显示数据信息等内容,控制器控制程序的流转,而模型负责程序的商业逻辑和数据库的连接等内容。

图1 MVC组件类型的关系和功能

3.2 关键技术设计

本系统是一个中间功能层,它将系统的异构特征屏蔽起来,使全局用户透明地操作异构数据库。利用XML文档作为中间件进行异构数据库之间数据交换,可以有效地屏蔽数据库的异构性,因此须实现数据库信息和XML文档之间的数据转换转换的数据先通过XML文档转换器转换为XML档从数据库中导出,在经查询分析处理判断转化的XML文档是否有冗余信息,或是否符合查询条件。XML提供了一种连接关系数据库和面向对象数据库以及其他数据库系统之间的访问技术。也就是说我们可以先对关系数据库和面向对象数据库以及其他数据库系统进行访问然后生成XML文件再将文件存入数据库或作其他处理。

4 实现流程分析

本系统的中心思想是通过用户输入字符串,然后用以表单提取输入的内容并对其做字符串的处理。得到异构数据库查询相关信息,然后遍历相关数据字典,取出数据并将这些数据按照查询结构组织成以 XML结构表达的结果文件。

可以将实现的完整流程分成两个阶段:

阶段 1—建立全局数据字典。它由数据库管理员所设计的一系列表格组成,是整个多数据库系统的全局资源。通过在数据之间建立映射机制来实现关系字典,建立局部数据库与全局数据库的对应关系,即使用全局数据库中映射表的数据表示局部数据库所提供的数据。

阶段 2—接受用户查询并做出解答。

包括四个步骤:

(1)将用户的标准查询转化成对局部数据库的访问序列。

(2)将查询条件转化成访问参数,并访问局部数据库。

(3)获取局部数据库返回的查询结果并转化成XML文档。

(4)对各个数据库提供的查询结果 XML文档作集成处理,即合并不完整的数据和过滤重复的数据。

5 结束语

本文主要论述了利用 XML技术来实现异构数据库的信息处理系统,通过数据库模式之间的映射,较好的实现了异构数据库之间的透明互访。同时,数据库种的数据在被转换成XML文档后,可以直接在WEB页上发布,也给电子商务和电子政务的发展提供一个对多数据库系统进行访问的应用平台。

[1] Box D,Skonnard A,Lam J.Essential.XML[M].卓栋涛译.北京:中国电力出版社,2000.

[2] 萧仁惠,陈锦辉.JDBC数据库程序设计[M].北京:中国铁道出版社2004.2.

[3] 童恒庆,聂会琴,李锡喆.CORBA/COM/EJB三种组件模型的分析与比较[J].计算机应用研究,2004,04.

[4] 曾水新.基于J2EE体系的MVC框架的研究和实现[D].北京:首都经济贸易大学硕士论文,2005,(05)

猜你喜欢

数据库系统异构全局
Cahn-Hilliard-Brinkman系统的全局吸引子
试论同课异构之“同”与“异”
量子Navier-Stokes方程弱解的全局存在性
落子山东,意在全局
微细铣削工艺数据库系统设计与开发
江苏省ETC数据库系统改造升级方案探讨
异构醇醚在超浓缩洗衣液中的应用探索
实时数据库系统数据安全采集方案
overlay SDN实现异构兼容的关键技术
LTE异构网技术与组网研究