xxx大学应用文理学院
学年论文
专 业
论文题目 谈数据库互操作问题的实现途径
姓 名
班 级
指导教师
实践时间 年 月— 年 月
一、学年论文的目的和任务
《学年论文》是信息与计算科学专业学生必修的专业实践课程,属于人才培养的重要实践性教学环节之一,是培养学生创新精神和钻研能力的重要手段。在开展了专业集中实践教学模块(一)、(二)、(三)的基础上,要求学生发现一个实际问题,经过调研、收集资料、分析问题并努力解决问题的过程,使学生学会独立提出问题并解决所提出的问题。学年论文的撰写培养学生做学问的严谨和规范,学生用所学的本专业知识进行实际调研和分析,不仅可使学到的基础知识和技能得到进一步理解和强化,而且有助于培养学生获取知识的能力和分析、概括总结的能力,也为毕业论文的写作打下一定的基础。
二、学年论文的内容与要求
(一)选题要求
学年论文的选题要求是一人一题,主要由学生自主选题,也可由教师指导选题。选题要新颖,具有一定的深度、难度与工作量。选题可从以下几个方面进行:
(1)阐明本学科理论在实际应用中的一些问题;
(2)探讨本学科中某些观念、热点问题或研究历史进程、预测其发展趋势;
(3)阐述本学科领域发展进程中的重大事件和重要问题;
(4)对专业课程中的某一部分内容进行讨论或研究。
(二)学年论文要求
(1)系统、完整地阐述论题所包含的问题,明确表达作者自己的观点与结论;
(2)综合应用已学的专业理论与知识,融会贯通所掌握的资料;
(3)学生通过结合几年的学习经历进行思考、选题、查阅资料最后写出论文;
(4)要求学生撰写不少于3000字的论文,语言要求文理通顺,层次分明,表达较确切,格式符合规范;
(5)参考文献要查阅5本参考书目和5篇学术论文以上,文中引用的需要标注。
摘 要
由于历史及技术等原因,在资源建设的过程中产生了异构数据库,数据库互操作问题也一直是数据库研究领域的热门课题。本文主要阐述了异构数据库互操作的概念、实现途径中的关键技术。
关键词:资源整合 异构数据库 互操作 联邦式数据库
1 引言
异构数据库互操作问题作为数据库领域的研究热点和难点课题,在国内外的学术界和工业界都引起了广泛的关注。自20世纪80年代以来,国外许多公司和科研单位对异构数据库的集成进行了大量研究,取得了不少成果,但国内对异构数据库集成的研究还处于开始阶段。
2 异构数据库互操作的概念
异构数据库(Heterogeneous Database)集成是数据库技术从完全集中到逻辑集中、物理分布(传统分布式数据库)乃至逻辑分布、物理分布(异构数据库)这一发展过程的结果,也是兼顾已有系统自治性并实现新的数据共享这一现实需求的有效手段[1]。
异构数据库的异构特征包括两个级别:系统一级的异构和语言一级的异构,主要体现在以下几个方面。
(1) 计算机体系结构的异构:各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。
(2) 操作系统的异构:各个数据库系统的基础操作系统可以是Unix、Windows XP、Linux等。
(3) 数据库管理系统的异构:一种是数据库概念模式的异构,有层次、网状、关系和面向对象4种;另一种是数据库物理模式的异构,指概念模式相同,但数据结构不同,比如Oracle与SQL Server同属关系型,但结构不同。
异构数据库互操作的实现包括三个功能要素:(1)为用户提供功能强大且操作灵活的互操作可视化界面,通过它用户可以直观地对多个异构数据库进行透明访问;(2)提供高级语言数据库访问调用级接口,至于调用级接口的实现层次可由设计者视具体情况而定;(3)支持环境开放性,可能的话还应该支持实现语言开放性。
异构数据库系统的目标在于实现不同数据库之间的数据信息资源、硬件设备资源和人力资源的合并和共享。异构数据库系统集成就是要将数据库系统的不同,操作系统的不同,操作平台的不同或者底层网络的不同进行屏蔽,使得用户就可以将异构数据库系统看成普通的数据库系统,用自己熟悉的数据处理语言去访问数据库,如同访问一个数据库系统一样,对其进行透明的操作。
3 实现异构数据库互操作的途径
面对异构数据库的互操作需求,主要从两个方面同时进行努力:一是建立标准,即建立统一的数据库规范,消除由于标准的不完善而造成的各数据库系统间的差异;二是构建异构数据库互操作平台,实现对多个异构数据库的透明访问。
随着对数据库互操作问题的深入研究,基于不同角度,许多研究者提出了可行的异构数据库互操作途径,这些途径在实现互操作的深度、广度和高度上各不相同,都有各自所适应的特定环境和需求。从异构数据库的核心思想出发,把实现互操作的途径归纳为两大类。
3.1 系统级异构互操作
对于DBMS系统一级异构的网络环境下的数据库互操作,主要有四种实现途径。
(1)数据库网关(Database Gateway)
数据库网关是一种中继器,它能提供应用级的异构数据库集成的手段。网关的主要作用是转换和通信。
数据库网关可以建立比较稳定和透明的数据库互操作,但是其缺点也较为明显。诸如不关心如何屏蔽数据库之间的异构性,不支持事务处理,资源冗余,用户受限于数据库厂商,不能任意选择客户机平台及目标数据库等问题。
(2)公共协议/数据转换协议技术
公共协议是异构数据库进行通信时采用的公认的数据协议,即公认的系统间传递SQL请求和结果的形式。最常见的协议是ANSI/ISO的关系数据存取(RDA)标准、SGA(SQL Access Group)规范和IBM的分布式关系数据库结构(DRDA)。
数据库网关相比,公共协议更具有可扩充性和开放性,能较好地实现异构数据库的透明访问、支持多种网络协议和多种客户平台,是实现异构数据库互操作的有效途径之一。
公共协议/数据转换协议的缺点是协议本身的低效率带来的速度问题[2]。
(3)公共编程接口
公共编程接口包括客户应用编程界面(CAPI)和服务器应用编程界面(SAPI)。CAPI是一组过程库,通常驻留在客户端,通过装载后端专用的驱动程序访问不同的数据库。SAPI提供一个应用编程界面,控制服务器与客户应用请求和目标数据库之间的交互。如Microsoft 的ODBC、Oracle的SQL*NET 以及IDAPI。其优点有:由于提供了统一的调用级接口,使用户免除了应用程序随数据库改变而改变的痛苦;通过API可使应用程序直接操纵数据库中的数据。数据库访问API的缺点是:针对每一个数据库都需要有一个与其对应的驱动程序;由于不同的驱动程序所支持的数据类型和对数据的操作都不相同,其完全透明地访问异构数据库的能力有限;实现效率过分依赖于驱动程序,而驱动程序将标准语法转换成相应数据库的命令语法要花费大量的时间。
(4)中间件技术(Middle Ware)
中间件是处于应用程序及应用程序所在系统的内部工作方式之间的软件,它的基本思想是在各后端数据源和前端应用程序之间建立一个抽象层。把应用程序与系统所依附软件的较低层细节和复杂性隔离开来,使应用程序开发者只处理某种类型的单个API,而其他细节则可以由中间件处理。这样就使系统对每个不同数据源的操作变成对单一的中间件的操作,而后再对中间件进行异构处理。使用中间件技术解决异构数据库集成的问题,将会给系统集成带来很多的好处。这是因为中间件不仅能够使得前端用户访问后端的异构数据库实现透明化,并且保证了访问接口的开放性,这样可以使系统在以后功能上的扩展更加方便。通过中间件来访问数据库的另一个好处就是所有的客户端的请求都发送到了中间件上,减轻了数据库服务器的负担,保证了数据库服务器的性能不会降低。同时,中间件的采用极大地提高了系统的可维护性,在系统内部的某个逻辑发生变化时,只要改变中间层的相应处理程序,前台用户界面不需要做任何的改动,这样就大大降低了系统维护的费用。
3.2 数据结构与语义级异构互操作
对于数据结构和语义一级异构的数据库互操作的研究有紧密耦合和松散耦合两种思想,具体体现于多数据库系统、联邦数据库系统和分布式数据库系统三种方法。
(1)多数据库系统
所谓多数据库系统就是一种能够接受和容纳多个异构数据库的系统,允许各个异构数据库的“自治性”。多数据库系统是一个广义的概念,是相对于如集中式数据库系统或分布式数据库系统那种逻辑上具有同一管理系统而言的,它以多元和分布为主要特征。多元是指它多个彼此区别的集中式或分布式数据库系统;分布则是指数据分布在不同场地的数据库系统中,由各自的管理系统进行管理。
多数据库技术的目标是为在多个数据库之间实现互操作,解决数据库资源共享找到一种技术途径。一般采用分布、异构、自治三个特性作为尺度来刻画多数据库系统。使用这种方法,用户需要显式地指明所要访问的数据库。多数据库系统采用自下而上的方法来实现。
(2)分布式数据库(Distributed