网格环境下实时数据库事务处理架构

2022-09-10

传统的分布式事务中, 事务管理器对参与事务中的资源有着完全的控制能力系统是紧耦合和相互信任的。在网格中, 参与同一事务的网格服务是在事务执行之前动态发现的, 它们往往来自不同的组织甚至是互相不信任的组织。与之相比, 网格是一个松散耦合、异构和动态的环境[1]。

在分析网格和网格实时数据库事务处理特点的基础上, 本文提出了一个适用于网格环境下实时数据库事务处理架构。该架构采用网格中间件和网格服务, 能够满足网格环境中对实时事务自治性、异构性、动态性等特点的要求。

1 网格服务

网格服务的概念是在结合网格技术和W e b服务的基础产生的, 开放网格服务体系结构OGSA是建立在Grid技术和Web服务框架基础上的以服务为中心的网格体系结构[2]。O G S A认为, 网格服务是自包含、自描述、遵守O G S A接口和规范的扩展的W e b服务:任何松散祸合的网络实体都是网格服务。

O G S A采用W e b服务框架的优点是:一方面, 通过注册和发现接口定义和终端 (endpoint) 实现描述以及动态产生特定接口绑定的代理, 在异构环境中能够支持服务的动态发现和合成。另一方面, 由于W e b服务机制在商业应用领域广泛采用, O G S A采用W e b服务框架使人们能够利用许多现有的开发工具和扩展服务, 如产生语言绑定的W S D L处理器。

2 网格实时事务处理架构

实时事务架构描述实时事务处理过程, 模型建立在网格中间件和网格实时数据库服务 (G T D S) 的基础之上, 其核心部件是网格实时事务管理服务 (G T T M S) 。

在网格中, 网格实时事务管理服务是一种高层服务, 它建立在底层的网格中间件之上, 为上层的网格应用提供可靠性和实时性支持。图1描述网格实时数据库事务服务体系结构, 它分为四个层次。

第一层:网格应用。它是有可靠性和实时性要求的应用程序。它通过调用接口服务发起和管理事务, 并与网格实时数据库事务管理服务进行连接和数据交换。

第二层:网格实时事务管理服务 (G T T M S) 。它是专门提供事务管理能力的高层网格服务, 用于创建事务、协调事务和故障恢复等。

第三层:网格中间件。它提供基础的网格服务, 便于互操作。

第四层:网格实时数据库服务 (G T D S) 。通过对底层实时数据库进行网格化的封装, 数据库资源即可以一种标准网格服务的形式提供给用户或者其上层的其它网格服务[3]。

其中, G T T M S是整个结构的核心部分, 它的主要部件如下。

2.1 激活服务

激活服务的工作主要包括三个方面:

(1) 创建事务上下文、协调者和参加者。网格用户开始执行一个事务时, 它向激活服务发送一个创建事务的请求消息, 激活服务建立一个新的事务活动, 并产生一个事务上下文。

(2) 创建一个协调者, 并将事务分解为多个子事务, 然后把事务上下文传播给远程的网格服务。在服务端, 当调度器收到事务上下文时, 创建一个参加者对应其一个子事务, 然后用Response消息将参加者注册到协调者的参加者列表中。每个参加者创建多个等价者并行执行其对应的子事务, 并根据协调者的命令管理它们。通过这个过程, 一个事务处理系统就被动态建立起来。

(3) 激活发现服务模块, 并根据发现服务结果向远程网格服务关联的G T T M S发送事务上下文。

2.2 发现服务

发现服务动态地发现满足应用要求 (如服务代价、服务质量和可用性等) 的网格服务, 以执行指定的子任务。

2.3 协调服务

协调服务进行应用程序和网格服务参与事务的协调, 它分为以下三部分:

(1) 协调者是事务的全局管理器, 它维护着一张注册到事务中的参加者列表。根据参加者列表, 协调者向参加者发送命令, 收集每一个网格服务的执行状态并据此决定下一步行动。

(2) 参加者向协调者报告它所关联的等价者的工作状态, 根据协调者的命令控制自己的多个等价者执行, 并控制相关网格服务准备事务、提交事务/放弃事务。

(3) 等价者执行相对应参加者的功能等价服务, 并向其报告相关联的网格服务工作状态。

2.4 并发服务

并发服务根据不同的协调服务提供相应的并发控制, 以便本地实时数据库事务管理系统进行调度。

2.5 实时服务

实时服务根据实时应用的时间信息计算实时 (子) 事务的截止期和优先权。

2.6 接口服务

该部件提供了两类接口:事务相关接口用于管理事务:服务相关接口用于管理G T T M S服务实例和发现执行子任务的网格服务。

3 结语

本文提出了一个网格环境下基于功能等价服务的实时数据库事务处理架构。该架构具有以下功能:网格实时事务管理服务支持网格自治性:网格中间件屏蔽网格异构性:功能等价服务不仅屏蔽网格动态性, 而且由于降低了冲突概率使得事务实时性增强:网格实时数据库服务便于互操作。

摘要:在分析网格和网格实时数据库事务处理特点的基础上, 本文提出了一个适用于网格环境下实时数据库事务处理架构。该架构采用网格中间件和网格服务, 能够满足网格环境中对实时事务自治性、异构性、动态性等特点的要求。

关键词:网格,实时事务架构,网格中间件,网格服务

参考文献

[1] 唐飞龙.服务网格中事务处理的若干关键技术研究[D].上海:上海交通大学, 2005, 6.

[2] 马新娟, 李陶深, 李卫玲.网格环境下数据库事务模型的研究[J].通讯和计算机 (美) , 2006, 13 (6) :12~17.

上一篇:我国大学生就业促进政策制度存在的问题及其完善对策下一篇:重视单元整合,加强方法引领