下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于ORBIX的分布式数据库系统的设计与实现 08-05-06 09:15:00 作者:李智芳 编辑:studa0714摘 要:本文给出了基于CORBA的ORBIX分布式数据库系统结构。在此基础上,就使用ORBIX实现分布式数据库系统的几个关键技术即分布式事务处理、交易服务、会话管理等进行了研究。关键词:CORBA;ORBIX;分布式数据库;资源管理器;XA接口ABSTRACT: The ORBIX dis
2、tributed database system architecture is given in this thesis. On this basis, Several key technology such as distributed transaction processing、trader service and session management etc. in the development of distributed database system are researched. Key Words:CORBA;ORBIX;Distributed Database Syst
3、em ;Resource manager ;XA Interface物理上分散而逻辑上有集中是分布式数据库系统(DDBS)的最显著的特点。DDBS的实现实际上就是将分布在不同地理位置上的集中式数据库系统通过相应的软件连接起来构成逻辑上统一的数据库系统。而对于任何节点用户来说使用DDBS就好象在使用一个集中式数据库。CORBA规范是目前最为流行的应用最广的分布式对象技术。CORBA的目的是定义一套协议,符合这个协议的对象可以互相交互,不论它们是用什么样的语言写的,不论它们运行于什么样的机器和操作系统。从而简化了简化本地与远地对象间的通信,使之以透明的方式实现互连、互通与互操作,免去繁琐易于出错的
4、底层工作,使大型分布软件开发工作相对地提高速度并增加其可靠性1。2 相关技术在分布式数据库应用的设计过程中需要解决分布存储、分布式查询处理、逻辑互联、网络信息传输等问题,其复杂性导致软件开发成本高、开发周期长。所以在开发过程中若能充分利用现有的分布式计算技术,将极大提高分布式数据库的开发效率5。(1)CORBA的主要内容包括:IDL接口定义语言、ORB核心、OA对象适配器、IDL桩、IDL构架、DII动态调用接口、DSI动态程序构架接口、GIOP协议1。 (2)Orbix是IONA公司研制的基于库的CORBA规范实现,支持Windows、OS/2、各种UNIX等20余种操作平台。Orbix是建
5、立在IONA的ART(Adaptive Runtime Technology)技术之上的。ART高效的模块化结构允许在运行过程中添加新的功能模块,只是通过改变配置的设置就可以完成。这样大大的缩减了开发时间2。3 基于ORBIX分布式数据库系统结构 如图1为基于Orbix的分布是系统结构。其中每个客户端Orbix对一个客户应用程序,每个服务器端Orbix对应一个服务器应用程序。使用XA接口,使全局事务的提交是由交易服务控制,应用程序只需通知交易服务提交或回滚事务,就可以控制整个事务(可能涉及多个异地的数据库)的全部提交或回滚,应用程序完全不用考虑冲正逻辑。XA协议属于X/OPEN DTP(Dis
6、tributed Transaction Processing) 模型中的一部分,是中间件产品与数据库之间的标准协议。采用ADO作为数据库连接工具,从而简化了数据库访问的开发过程,数据访问更快捷,支持当前流行的各种数据库格式,有利于使用当前已有的数据资源。4 ORBIX分布式数据库系统实现4.1 分布式事务处理事务指一个程序或程序段,在一个或多个资源如数据库或文件上为完成某些功能的执行过程的集合。为了支持面向对象、分布式、事务处理应用,实现了(1)对象事务管理器。(2)X/Open XA接口。(3)两阶段提交(2PC)4协议。分布事务管理器数据库,支持本地事务。当一个应用需要两个或多个资源管理
7、器参与同一事务时,某第三方必须提供必要的协调以保证分布式事务的ACID属性。 应用程序使用事务管理器创建事务。处理期间访问的每个资源管理器都是一个事务的参与者。因而,当应用程序完成事务时,要么一个提交请求,要么一个回滚请求,事务管理器与每个资源管理器联络。和 X/Open XA 接口接口功能:提供管理事务划分(创建和完成)的接口,将事务信息传播给事务参与者和接口,允许应用参与事务。X/Open XA接口用于数据库的集成,以形成数据库的逻辑连接。 如图2所示为客户、应用、OTS及资源管理之间互操作获得ACID属性的过程。包括以下步骤:(1)客户与OTS链接并创建一个事务。(2)客户在事务环境中对
8、应用作出调用并更新一些数据。(3)应用程序检测到数据正在被更新并创建一个资源对象,向事务注册资源对象。(4)客户通过与OTS实现联系,试图提交事务。(5)事务开始提交协议。选择哪种协议(1PC或2PC),依据向事务注册资源对象数量及OTS是否支持1PC优化而定。(6)假定使用了2PC协议,OTS发送一个准备信息到资源。资源存贮足够的信息以防万一失败(例如,通过将改变写入一个日志文件)。资源对象表决提交事务。(7)OTS收集所有资源对象的表决并决定事务的结果。将决定发送到所有的注册资源对象。(8)资源对象根据收到的提交或回滚消息作出必要的改变并将决定保存到日志中。(9)OTS返回结果给客户。4.
9、2 交易服务交易服务提供对象的位置和发现的设施。与CORBA命名服务按名字定位对象不同,对象在交易服务中是没有名字的。服务器根据对象所提供的服务类型在交易服务中广告该对象。客户通过查问交易服务定位感兴趣的对象,以查找所有提供特殊服务的对象。客户能够进一步限制只搜索那些具有特殊特性的对象。CORBA交易服务是允许注册具有功能性描述对象的一个交易服务。该服务通过使服务更易定位极大地增加了分布式系统的可伸缩性。一个交易包含许多描述服务的服务类型。服务器输出一个提议给交易服务,包括其中一个对象对象引用和由服务类型定义的属性值。客户就能按照这些属性使用称为约束(constraint)的过滤器查询交易服务。交易者为客户返回一个服务提议。客户就能使用提议中的对象引用在服务器上调用。交易服务是构造有效分布式应用的工具。用属性注释服务提议和允许根据这些属性使用约束过滤提议的优点使客户可以选择提议而不会导致每个对象上调用操作的管理费用。 服务类型(1)服务类型定义服务类型是交易服务的一般性描述。包括:类型名:唯一地标识服务类型。接口类型:定义IDL接口,必须与广告的对象类型相一致。接口类型描述广告的服务IDL签名。接口类型是一个字符串其格式因该是全局名或是一个如上所述服务类型名的接口仓库标示符。当输出一个新的服务时,交易器可使用接口仓库确定广告的对象与接口类型定义的接口一致。一个对象与一个接口一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 食堂团队考核制度模板
- 消毒供应中心考核制度
- 品质检查员考核制度
- 制药厂绩效考核制度
- 业务员搞工资考核制度
- 员工特长考核制度模板
- 乡镇绩效工资考核制度
- 机关单位中层考核制度
- 《铣工》理论考试试题及答案
- 中国香道数字嗅觉营销编程师认证考试专项练习含答案
- 2025年淄博医院招聘考试笔试题及答案
- 药师处方审核中的常见错误及纠正
- 全球资本流动网络的稳定性研究
- 2025年高考化学试题(浙江卷) 含答案
- 血透室穿刺时误穿肱动脉处理流程
- 医院预防保健管理办法
- 2025年扬州市中考数学试题卷(含答案解析)
- 制造成熟度等级及评价准则(DB61-T 1222-2018)
- 断绝父母关系协议书
- GB/T 13077-2024铝合金无缝气瓶定期检验与评定
- 2021年辽宁省新高考物理试卷及答案
评论
0/150
提交评论