异构数据库访问方法

文档序号:8472980阅读:129来源:国知局
异构数据库访问方法
【技术领域】
[0001] 本发明涉及数据处理方法,特别是涉及数据库的访问方法。
【背景技术】
[0002] 随着当前计算机技术发展,对数据库访问能力越来越重要,开发者在实现某种系 统应用同时,必须考虑不同类型的关系数据库的部署,以适应企业已有的IT管理架构。不 同企业对数据库系统的选择不同,如果一个应用系统强制要求数据库服务器类型,有可能 需要增加企业在数据库服务器方面的投资,增加数据库服务的维护投入。而如果一个系统 应用能够按照企业已有的数据库服务器进行部署,则能够节省企业在数据库方面的投资, 有利于保护原有投资,简化系统部署的方案和成本。这就要求开发者在实现一个具体的系 统应用时,能够兼顾目前主流的关系数据库服务器平台,在系统部署时,能够按照客户已有 的数据库服务器类型实现灵活的系统部署实现机制。
[0003] 目前主流的关系数据库种类有: ORACLE系统(8i,lOg,Ilg等等); 微软公司SQLSERVER平台(2003, 2005, 2008 等等); IBM公司DB2 ; 开源数据库平台MySql等等; 开发者在实现不同类型数据库访问时,往往需要通过操作系统本身或者开发工具提供 的一些数据库连接工具来实现数据的连接和数据库的访问,如ODBC,JDBC,ADO,BDE等等。 开发过程中往往需要根据不同的后台数据库开发独立的应用客户端程序和中间层应用程 序,以实现不同类型数据库的访问,如图3所示。
[0004] JDBC池连接技术。JDBC池连接是由J2EE服务器打开和维护的。J2EE服务器启动 时会建立一定数量的池连接。并一直维持不少于此数目的池连接。客户端程序需要连接时, 根据数据库类型选择相应的驱动程序,池驱动程序会返回一个未使用的池连接并将其标记 为忙。如果当前没有空闲的连接,池驱动程序就新建一定数量的连接,新建连接的数量由配 置参数决定。当使用池连接的调用完成后,池驱动程序将此连接标记为空闲,这样其它调用 又可以使用这个连接。JDBC是JAVA开发语言的主要数据库连接技术,具备较好的跨操作系 统平台特性以及数据访问效率,但不具备其他开发语言的支持能力。
[0005] ODBC技术。开放数据库互连(OpenDatabaseConnectivity,ODBC)是微软公司 开放服务结构(W0SA,WindowsOpenServicesArchitecture)中有关数据库的一个组成部 分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些 API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接 将SQL语句送给ODBC,如图4所示。
[0006] 一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交 道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。ODBC基于Windows操作系统 平台,它用包含在DLL内的驱动程序完成任务。ODBC不具备跨平台的数据库访问支持能力。 ODBC技术数据访问效率相对较低,对WEB程序的支持能力不足。
[0007] ADO技术。ADO(ActiveXDataObjects,ActiveX数据对象)是Microsoft提出 的应用程序接口(API)用以实现访问关系或非关系数据库中的数据。ADO(ActiveXData Objects)是基于组件的数据库编程接口,它是一个和编程语言无关的COM组件系统。
[0008] 和ODBC技术类似,ADO不具备跨平台的数据库访问支持能力,但ADO能够完成对 WEB应用的数据访问支持,同时数据访问效率也较高。
[0009] BDE技术。BDE(BorlandDatabaseEngine)是Inprise公司的数据库引擎,它结 合了SQLLinks允许程序员通过它能够连接到各种不同的数据库。主要应用于Inprise公 司相应的开发工具,具备跨平台的开发支持能力,数据访问效率较高。
[0010] 现有的ODBC,JDBC,AD0,BDE等技术,能够实现对异构数据的访问,但这些技术与 数据库系统本身关联密切,都需要在前台(客户端)完成SQL语句的封装后,提交到数据库服 务器后台实现数据的查询处理,或者直接调用数据库服务器的存储过程来完成。由于不同 数据库平台的连接方式,SQL语法存在差异,开发者通过这些技术进行数据访问时,必须针 对后台数据库类型进行适应性的开发工作,也就是说需要按照不同的数据库平台进行独立 的中间件和客户端的开发工作,降低了开发者的工作效率,增加了部署难度,也增加了开发 项目管理的难度。
【主权项】
1. 一种异构数据库访问方法,其特征在于构建按如下步骤运行的数据库引擎系统: A. 数据库引擎系统启动,按照配置文件定义加载具体的后台数据库服务器驱动程序, 完成数据库连接; B. 数据库引擎系统确认数据库连接成功以后,建立与系统消息总线连接,将统一数据 接口以服务的模式注册到系统消息总线上,准备提供后续服务; C. 客户端应用程序按照具体应用类型,选择应用数据访问接口,对接口消息体进行封 装,并通过消息总线将消息发送给数据库引擎系统进行处理; D. 数据库引擎系统收到消息后,对消息体进行解析,调用对应的接口函数,在接口函 数中对消息体参数进行解析,并封装相应的结构化查询语言语句或者调用数据库服务器存 储过程,获得应用数据; E. 数据获得以后,按照接口类型进行数据处理,将数据处理结果封装为返回消息报 文,以可扩展标记语言方式将数据通过消息总线返回给应用层客户端程序; F. 应用层客户端解析返回的消息报文,判断数据接口访问执行结果,将结果或者返回 的数据展现给操作人员。
【专利摘要】本发明提出一种异构数据库访问方法,针对JDBC,ODBC,ADO以及BDE技术,解决了数据访问跨平台特性,数据访问跨开发语言与开发环境特性,同时充分考虑数据访问效率,通过特定的方法实现不同数据类型,大容量数据类型的访问模式,使应用层面的开发人员抛弃繁琐的SQL语言,数据库存储过程开发工作,专注于应用业务逻辑的实现,而数据库开发人员,可以专注于不同数据库服务器的特性,组织业务数据格式,提升数据访问效率。对开发人员来说,采用一个成熟的系统架构模型和专业的开发分工,有助于提升应用系统开发的可靠性。
【IPC分类】G06F17-30
【公开号】CN104794147
【申请号】CN201410840029
【发明人】程启北, 蔡晟, 任彩玲, 李月彬
【申请人】深圳键桥通讯技术股份有限公司
【公开日】2015年7月22日
【申请日】2014年12月30日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1