[发明专利]用于为工作单元提供原子性的方法、系统和计算机程序有效

专利信息
申请号: 200680010037.6 申请日: 2006-04-06
公开(公告)号: CN101151630A 公开(公告)日: 2008-03-26
发明(设计)人: J·E·加尔扎;S·J·霍布森;M·马尔霍兰;S·鲍威尔 申请(专利权)人: 国际商业机器公司
主分类号: G06Q10/00 分类号: G06Q10/00
代理公司: 北京市金杜律师事务所 代理人: 朱海波
地址: 美国纽*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 工作 单元 提供 原子 方法 系统 计算机 程序
【说明书】:

技术领域

发明涉及一种用于为工作单元提供原子性的方法、系统和计算机程序。

背景技术

在事务处理领域中,通常要求工作单元具备ACID性质。ACID是代表四种工作单元性质的首字母缩写词:原子性、一致性、隔离性和耐久性。原子性要求务必使工作单元的所有操作都发生或者务必使工作单元的操作无一发生。一致性要求工作单元保持它所操作的数据的一致性。隔离性要求工作单元不得读取另一事务的中间结果。耐久性要求使被提交(commit)的工作单元的结果持久并且即使在系统故障的情况下仍然能够确保其它ACID属性。然而,用以保证这些性质的职责落在不同部件上。例如,如果工作单元是事务,则事务协调器提供原子性,应用提供一致性,资源管理器提供隔离性和耐久性。另外,在一些工作单元中,并非所有这样的性质都会得到遵循,例如对于作为长期运行(延展)的事务并且包括数个事务的工作单元而言没有遵循隔离性。

例如,一种公知和理解的工作单元是事务,而事务协调器或者中间件的作用在于提供原子性。由此,例如如果应用在事务中涉及到两个操作并随后请求事务协调器提交该事务,则事务协调器必须保证两个操作均提交(成功)。可选地,如果该应用请求事务协调器收回(back out)事务,则事务协调器必须保证两个操作均被收回(失败)。

提供原子性的主要问题是即使在事务协调器执行于其上的系统发生故障的情况下仍然必须确保原子性。例如,如果事务涉及到两个操作并随后进行提交,则系统可能在事务协调器已经提交第一操作之后、但是在尚未提交第二操作之前发生故障。结果,当系统重启时,事务协调器必须保证第二操作也提交。为了提供这一功能,事务协调器有必要维护经历了系统故障而留存下来的并且记录各事务的进度的非易失性日志。例如,事务协调器将在该日志中维护对各事务中涉及到的操作以及该事务的进度状态的顺序记录。另外,在事务中的某些点,在事务协调器保证日志记录已经被写到非易失性存储器的同时必须保持该事务。然而,写入日志是耗费时间的。

发明内容

根据第一方面,提供一种用于为涉及到多个参与器的工作单元提供原子性的方法,该方法包括以下步骤:将预备请求发送到至少一个参与器,其中该请求包括为了恢复工作单元而需要的数据;以及在恢复工作单元时,恢复工作单元,包括:从至少一个参与器获得数据;以及使用获得的数据来恢复和保留工作单元的原子性。

优选地,数据包括如下细节,根据该细节能够确定工作单元的结果。更优选地,该数据包括工作单元中其它参与器的列表。更优选地,向预备请求被发送到的最后参与器发送的数据包括提交工作单元的结果的指示。

在优选实施例中,恢复工作单元的步骤还包括:响应于获得的数据包含提交工作单元的结果的指示,将提交请求发送到至少一个参与器。优选地,该方法还包括以下步骤:将遗忘请求发送到至少一个参与器。更优选地,从至少一个参与器获得数据的步骤包括:将对数据的请求发送到至少一个参与器。更优选地,从至少一个参与器获得数据的步骤包括:从至少一个参与器接收消息,该消息包括数据。

根据第二方面,提供一种用于参与工作单元的方法,该方法包括以下步骤:从工作单元的协调器接收预备请求,该预备请求包括代表协调器进行存储的数据;以及处理预备请求,该处理步骤包括以下步骤:确定能够完成更新;在非易失性存储器中存储数据;以及对预备请求做出响应,该响应包括能够完成更新这一指示。

优选地,该方法还包括以下步骤:从协调器接收对数据的请求;以及响应于接收到请求,将数据提供给协调器。更优选地,该方法还包括以下步骤:将数据发送到协调器。更优选地,发送数据的步骤对确定与协调器失去联系做出响应。

根据第三方面,提供一种用于为涉及到多个参与器的工作单元提供原子性的协调器,该协调器包括:用于将预备请求发送到至少一个参与器的装置,其中该请求包括为了恢复工作单元而需要的数据;以及用于在恢复工作单元时恢复工作单元的装置,包括:用于从至少一个参与器获得数据的装置;以及用于使用获得的数据来恢复和保留工作单元的原子性的装置。

根据第四方面,提供一种用于参与工作单元的参与器,该参与器包括:用于从工作单元的协调器接收预备请求的装置,该预备请求包括代表协调器进行存储的数据;以及用于处理预备请求的装置,包括:用于确定能够完成更新的装置;用于存储数据的非易失性存储器;以及用于对预备请求做出响应的装置,该响应包括能够完成更新这一指示

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200680010037.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top