数据库中间件及其几种技术比较

3佳木斯教育学院学报

J ournal of J iamus i Education Ins titute

2010年第6期总第102期

No.6.2010Sum 102

数据库中间件及其几种技术比较

曹建武

(中铁咸阳管理干部学院陕西咸阳712000)

摘 要:本文阐述了数据库中间件的概念、功能、原理,介绍了现今数据库中间件的几种主要技术,并进行了比较。关键词:数据库中间件;技术比较中图分类号:TP392文献标识码:A 文章编号:1000-9795(2010)06-0039-02

收稿日期:5

作者简介:曹建武(),男,甘肃人,从事数据库方向的研究。

一、数据库中间件的基本概念

数据库中间件是处于底层数据库和用户应用系统之间的,主要用于屏蔽异构数据库的底层细节问题的中间件,是客户与后台的数据库之间进行通讯的桥梁。当客户向Web Server 发出对某个数据

库的SQL 请求时,通过数据库中间件搜索匹配的数据库连接,并将SQ L 请求转发给对应的数据库服务器,通过其对数据库进行操作。数据库中间件的主要功能:(1)支持常用大型数据库的各种操作。如ORACLE ,D B2,MY SQ L 等常用数据库。(2)提供统一接口,屏蔽数据库之间的操作差异。(3)封装复杂烦琐的数据库应用接口和数据库操作过程,简化应用程序的数据库操作,提高应用程序开发效率。(4)支持常用的操作系统。如Windows 、U NIX 、L inux 等,便于应用代码在各平台之间的移植。(5)支持多线程,可以提供多线程与线程库,满足各种场合应用。

数据库中间件(UniWeb Serv er)工作原理:让其作为前端的客户与后端的数据库之间进行通信的桥梁,当客户向数据库中间件发出对某个数据库的SQL 请求时数据库中间件搜索当前可用的与该数据库的连接(UniTcl Serv er)通过U niTcl Server 将SQL 请求转发给对应的数据库服务器,数据库服务器执行SQL 语句后将结果通过U niTcl Serv er 返回给数据库中间件,再由它返回给客户整个数据库中间件的体系结构采用的是三层(Three-tier)客户机/服务器模型,中间件与各个客户的数据通信采用流套接字(Stream Socket)机制实现并且利用了多线程的优点,使得中间件与各个客户的套接字通信能够并发地进行中间件与后端数据库的接口使用了UniTcl 并且根据Internet/Intranet 上用户对数据库访问方式的特殊性,采用多客户共享同一个数据库中间件的机制,提高了数据库访问的效率。

二、数据库中间件的技术

(一)ODBC

ODBC 实际上并不是一个产品,而是微软在几年前创建的一个标准。ODBC 是一个CLI(CallLay-erInterface),通过允许开发者制作一个在大多数关系数据库中可运行的简单的API 调用,简化从W indow s(以及其它一些操作系统)到数据库的访问。

O DBC 目前提供32位版本。大多数的数据库都有O DBC 驱动。O DBC 是免费的,而其驱动不是。这些O DBC 驱动可以从数据库供应商或第三方提供商购买。流行的应用程序开发工具大多通过ODBC 提供对数据库的访问。实际上,OD BC 是微软VisualBasic 以及其它开发工具与数据库连接的唯一途径。

(二)JDBC

JavaSoft 的JDBC 是第一个支持Java 语言的数据库应用程序接口(API),功能上与OD BC 相仿,提供Jav a 开发人员一个从支持Java 开发或支持Java 应用程序运行的环境访问各种数据库的统一的接口。

JD BC 主要由两层组成:JDBC 应用程序接口(JD BCA PI)和JDBC 驱

动应用程序接口。JDBCAPI 提供从应用程序到JDBC 管理器的通讯。

JDBCAPI 定义了一个Java 类集,允许Ap-plet 、Servlet 、JavaBean 和Java 应用程序连接数据库。通常,由这样一个小应用通过网络连接远程关系数据库服务器,如Syabas 、Oracle 或Informix 。这些由数据库供应商提供的原始的JavaJDBC 类与用户自定义的应用程序类共存,提供一种“纯Java ”的、可移植的数据库访问。这样就允许从任意支持Java 的平台到任意数据库的连接。

JDBC 管理器和ODBC 管理器一样,按Java 小应用或应用程序的需要载入或卸载数据库驱动器。JDBC 支持单个或多个数据库服务器的连接。就是说,一个小应用可以同时连接本地的所有数据库和Internet 上的公用数据库。

(三)OLEDB

O LEDB 作为一种数据访问接口体系,体现了M icrosoft 的通用数据访问(UD A)策略的理念。U DA 能够通过标准接口来访问各种类型的数据。同于ODBC 体系它也提供了一套标准API ,不过OL EDB A PI 是完全基于CO M 的,其特点是采用了多层模型。

(四)A DO

A DO 是微软的数据访问组件的一部分,是基于OLED

B 之上的面向对象的数据访问模型。ADO 组件包含了所有的可以被OLED B 标准接口描述的数据类型,通过ADO 的方法和属性可以为应用程序提供统一的数据访问方法和接口,同时ADO 对象模型还具有可扩展性。

A DO 的主要优点:易于使用、高速度、低内存支出和占用磁盘空间较小。

它同时具有远程数据服务的功能,可以在一次往返过程中实现将数据从服务器移动到客户端应用程序或Web 页、在客户端对数据进行处理然后将更新结果返回服务器的操作.这几个特性使得ADO 替代了DAO/RDO ,成为新一代的访问数据库的接口标准.基于OLEDB 之上的A DO 更简单更高级,同时消除了OLEDB 的多种弊端,ADO Recordset 存储,AD O 的运作是一种在线方式,这意味着不论是浏览或更新数据都必须是实时的(David Sceppa2003)。ADO 对象模型定义了一组可编程的自动化对象,可用于Visual Basic 、V isual C++、Java 以及其它各种支持自动化特性的脚本语言。

三、比较

(一)ODBC 与JDB 比较

相同点:O DBC 和JDBC 技术都是以X/Open 和ISO/IEC 的调用级接口(CLI)规范为基础,并使用结构化查询语言(SQL)作为它们的数据库访问语言。区别:JDBC 使用的是Java 语言,而ODBC 使用的是C 语言,Java 语言天然所具有的平台无关、移植性强、稳定安全、分布式、面向对象等众多优点使得JDBC 应用程序可以自然地实现跨平台特性。

9

2010-08-11978-

相关文档
最新文档