用于支持中间层事务日志到数据库的内联委托的系统和方法技术方案

技术编号:10505387 阅读:185 留言:0更新日期:2014-10-08 10:21
提供了用于支持事务恢复的系统和方法,所述事务恢复基于事务日志到数据库的内联委托。所述系统可以从持久性储存器检索事务的事务恢复信息,其中事务恢复信息在准备阶段期间存留在与持久性储存器相关联的资源管理器上。此外,所述系统可以从所述事务的一个或多个参与的资源管理器检索一个或多个可疑事务。然后,所述系统可以通过将所述一个或多个可疑事务与事务恢复信息进行匹配来确定是提交还是回滚所述一个或多个可疑事务。

【技术实现步骤摘要】
【国外来华专利技术】用于支持中间层事务日志到数据库的内联委托的系统和方 法 版权声明 本专利文档的公开内容的一部分包含受版权保护的材料。版权所有人不反对任何 人如该专利文档或专利公开内容在专商局专利文件或记录中所登载的那样对其进行复制 再现,但是保留所有其他版权权利。
本专利技术总体上涉及计算机系统和软件,诸如中间件,更特别地,涉及事务式中间 件。
技术介绍
事务式中间件系统或面向事务的中间件包括可以处理组织内的各种事务的企业 应用服务器。随着诸如高性能网络和多处理器计算机之类的新技术的发展,需要进一步改 进事务式中间件的性能。这些大致是本专利技术的实施例旨在针对的领域。
技术实现思路
提供了用于支持事务恢复的系统和方法,所述事务恢复基于事务日志到数据库的 内联委托。所述系统可以从持久性储存器检索事务的事务恢复信息,其中事务恢复信息在 准备阶段期间存留在与持久性储存器相关联的资源管理器上。此外,所述系统可以从所述 事务的一个或多个参与资源管理器检索一个或多个可疑事务。然后,所述系统可以通过将 所述一个或多个可疑事务与事务恢复信息进行匹配来确定是提交还是回滚所述一个或多 个可疑事务。 当按照附图阅读下面对各种实施例的详细描述时,从该详细描述,本专利技术的其他 目的和优点将对于本领域技术人员而言变得清楚。 【附图说明】 图1示出根据本专利技术一实施例的事务式环境的例示。 图2示出支持事务式中间件机器环境中的两阶段提交的例示。 图3示出在事务式中间件机器环境中恢复可疑事务的例示。 图4示出根据本专利技术一实施例的支持事务日志到数据库的内联委托以用于在事 务式中间件机器环境中对事务进行处理的例示。 图5是根据本专利技术一实施例的事务恢复信息记录的内容的例示。 图6示出根据本专利技术一实施例的基于事务日志到数据库的内联委托来恢复事务 的系统。 图7是根据本专利技术一实施例的基于事务日志到数据库的内联委托来恢复事务的 例示性流程图。 【具体实施方式】 在附图中以举例的方式、而非限制的方式例示了本专利技术,在附图中,相似的附图标 记指示类似的元件。应注意,本公开中所提及的一、一个或一些实施例不一定是同 一个实施例,这样的提及意指至少一个。 如下对本专利技术的描述使用Tuxedo环境作为事务式中间件机器环境的例子。对于 本领域技术人员将显而易见的是,可以没有限制地使用其他类型的事务式中间件机器环 境。 本文中描述的是用于支持事务恢复的系统和方法,所述事务恢复基于事务日志到 数据库的内联委托。所述系统可以从持久性储存器检索事务的事务恢复信息,其中事务恢 复信息在准备阶段期间存留在与持久性储存器相关联的资源管理器上。此外,所述系统可 以从所述事务的一个或多个参与资源管理器检索一个或多个可疑事务。然后,所述系统可 以通过将所述一个或多个可疑事务与事务恢复信息进行匹配来确定是提交还是回滚所述 一个或多个可疑事务。 事务环境和全局事务 图1示出了根据本专利技术一实施例的事务式环境的例示。如图1所示,事务式环境 100可包括终端用户101、应用程序102、一个或多个事务管理器(TM) 103、多个资源管理器 (RM) 104-106、以及一个或多个持久性储存器,例如数据库110。 根据本专利技术一实施例,应用程序102可以指定构成事务的动作。如图所示,应用程 序102与事务管理器103进行通信以开始、提交或中止事务,并且事务管理器103可以将事 务的开始、结束和处置发送回到应用程序102。此外,应用程序102可以定义事务管理器103 的事务边界,事务管理器103可以与多个资源管理器(冊)104-106交换事务信息。另外,应 用程序102可以经由嵌入式结构化查询(SQL)与多个资源管理器104-106进行通信来从事 有用的工作。 多个资源管理器104-106可以提供对持久性储存器(例如数据库110)的访问。根 据本专利技术一实施例,多个资源管理器104-106可以实施XA接口从而以对持久性储存器透明 的方式处理数据库连接和断开。XA接口可以基于描述用于事务协调、提交和恢复的协议的 规范。参与事务的XA资源可包括XA资源管理器和后端持久性储存器。 根据本专利技术的各种实施例,事务式系统可以支持可在多于一个的服务器上执行的 全局事务,并且能够从多于一个的资源管理器访问数据。 可以将全局事务看作由原子性(atomicity)、一致性、隔离性和耐久性(ACID)这 四个属性表征的特定操作序列。全局事务可以是具有以下特征的逻辑工作单元: ?所有部分要么成功,要么没有效果; ?执行正确地将资源从一种一致状态变换为另一种一致状态的操作; ?中间结果不可供其他事务访问,但是同一事务中的其他处理可以访问该数据; ?已完成序列的所有效果都不能被任何种类的失败所改变。 此外,全局事务可包括若干局域事务,每个局域事务访问单个资源管理器。局域事 务可以访问单个数据库或文件,并且可以由负责在不同的数据库执行并发控制和更新的原 子性的资源管理器进行控制。给定的局域事务在完成其访问时可以要么成功,要么不成功。 另外,事务管理器103可以在事务式环境100中向不同事务分配全局事务标识符 (GTRID)。事务管理器103可以监视它们的处理,并且负责确保事务完成并且提供失败恢 复。另外,事务管理器103可以经由XA接口与多个资源管理器104-105进行通信以交换事 务信息,诸如将两阶段提交调用发送到资源管理器104-105。 两阶段提交(2PC) 两阶段提交(2PC)协议可用于执行事务,诸如松散耦合的全局事务。两阶段提交 协议(2PC)可以包括准备阶段和提交阶段。在准备阶段中,协调事务管理器(TM)指示参与 的资源管理器(RM)采取用于提交或中止事务的必要步骤。在提交阶段,事务管理器(TM) 基于准备阶段的结果来决定是提交还是中止事务。 图2示出了支持事务式中间件机器环境中的两阶段提交的例示。如图2所示,事 务式环境200可包括支持各种事务的执行的事务管理器201、以及管理一个或多个数据源 (例如数据库205)的一个或多个资源管理器202-204。 例如,事务管理器201可以执行涉及事务分支A 211、事务分支B212和事务分支C 213的事务,各个事务分支可以分别针对资源管理器202-204来执行。如果任何分支在事务 中失败,则事务管理器201可以帮助资源管理器202-204决定是提交还是回滚该事务。 如图2所示,事务管理器201可以在所有三个分支上将准备指令发送到资源管理 器202-204(步骤1、2和3)。在资源管理器202-204返回0K投票(步骤4、5和6)之后, 事务管理器201可以将事务日志写入到数据库205 (步骤7)。 如果任何分支在提交阶段失败,则可以将事务日志(TL0G)写入到文件或数据库, 从而事务管理器201可以具有足够的信息以恢复该事务。 然后,事务管理器201可以指示资源管理器202-204提交所有三个分支(步骤8、 9和10)。在成功完成提交阶段(步骤11、12和13)之后,资源管理器202-204可以通知事 务管理器201。 基于事本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201380008047.html" title="用于支持中间层事务日志到数据库的内联委托的系统和方法原文来自X技术">用于支持中间层事务日志到数据库的内联委托的系统和方法</a>

【技术保护点】
一种用于在多个资源管理器上恢复事务的方法,所述方法包括:从持久性储存器检索事务的事务恢复信息,其中所述事务恢复信息是在准备阶段期间经由与所述持久性储存器相关联的资源管理器存留的;从所述事务的一个或多个参与的资源管理器检索一个或多个可疑事务;以及通过将所述一个或多个可疑事务与所述事务恢复信息进行匹配来确定是提交还是回滚所述一个或多个可疑事务。

【技术特征摘要】
【国外来华专利技术】2012.03.16 US 61/612,144;2013.03.07 US 61/774,356;1. 一种用于在多个资源管理器上恢复事务的方法,所述方法包括: 从持久性储存器检索事务的事务恢复信息,其中所述事务恢复信息是在准备阶段期间 经由与所述持久性储存器相关联的资源管理器存留的; 从所述事务的一个或多个参与的资源管理器检索一个或多个可疑事务;以及 通过将所述一个或多个可疑事务与所述事务恢复信息进行匹配来确定是提交还是回 滚所述一个或多个可疑事务。2. 根据权利要求1所述的方法,还包括: 通过执行以下步骤之一来恢复所述一个或多个可疑事务中的可疑事务: 如果在所述事务恢复信息中找到匹配,则提交所述可疑事务;和 如果在所述事务恢复信息中没有找到匹配,则回滚所述可疑事务。3. 根据权利要求1所述的方法,还包括: 通过到所述持久性储存器的连接来设立事务恢复信息表。4. 根据权利要求1所述的方法,还包括: 在用于准备与所述持久性储存器相关联的资源管理器的同一调用中将所述事务恢复 信息存留到所述持久性储存器。5. 根据权利要求1所述的方法,还包括: 周期性地从所述持久性储存器删除所述事务恢复信息。6. 根据权利要求1所述的方法,还包括: 将所述事务恢复信息存留到所述持久性储存器的正常表和所述持久性储存器的重做 日志中的至少一个。7. 根据权利要求1所述的方法,还包括: 使所述事务恢复信息包括全局事务标识符(GTRID)、格式标识符(ID)以及关于所述事 务的其他参与者的信息。8. 根据权利要求1所述的方法,还包括: 使用以下信息中的至少一个来查询所述持久性储存器: 全局事务标识符(GTRID); 格式标识符(ID)和容器标识符(ID);以及 来自所述一个或多个资源管理器的、作为所返回的事务恢复信息的界定参数的可疑 GTRID和格式标识符(ID)的列表。9. 根据权利要求1所述的方法,还包括: 使所述事务跨多个事务管理器,其中所述事务管理器能具有不同的产品类型。10. 根据权利要求9所述的方法,还包括: 在所述持久性储存器中存留通过分解事务树而产生的图表,或 在所述持久性储存器中存留一个或多个外来端点。11. 一种用于恢复事务的系统,所述系统包括: 事务管理器;以及 多个资源管理器,所述资源管理器在中间层事务式系统中与所述事务管理器进行通 信,并且 其中,所述事务管理器进行操作以执行包括以下的步骤: 从持久性储存器检索所述事务的事务恢复信...

【专利技术属性】
技术研发人员:P·帕金森T·J·利特尔S·H·罗艾斯科C·L·科尔雷恩E·希伦
申请(专利权)人:甲骨文国际公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1