当前位置: 首页 > 专利查询>伊姆西公司专利>正文

用于在同步复制系统中处理事务的方法和装置制造方法及图纸

技术编号:13591691 阅读:38 留言:0更新日期:2016-08-26 01:00
本发明专利技术的实施方式提供了一种用于在同步复制系统中处理事务的方法和装置。该方法包括在所述同步复制系统的源站点处执行如下步骤:将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交;响应于发起对事务的提交,针对在所述同步复制系统中进行的每个事务生成日志,以记录相应事务的所有操作对所述同步复制系统的影响;对已生成日志的事务作标记;以及完成对已被作标记的事务的提交。本发明专利技术的实施方式通过为事务的操作记录日志来保持事务的“原子性”,从而解决了应用层面不一致问题。

【技术实现步骤摘要】

本专利技术的各实施方式涉及失效切换(failover)领域,并且更具体地,涉及在同步复制系统中处理事务的方法和装置。
技术介绍
随着计算机技术的高速发展,存储技术也逐渐变为研究的热点之一。存储领域中面临的一个重要问题是如何对资源进行失效切换。概括地说,术语“失效切换”涉及在一台系统失效、例如发生故障或掉电从而不能对外提供服务时,切换到备份存储系统,由该备份存储系统接管相应功能从而对外提供服务。为了实现精细粒度的失效切换,通常在源存储系统和备份存储系统之间执行数据的同步复制,即在源存储系统处对数据的任何改动在备份存储系统处能够实时地发生,使得两侧的数据尽可能的保持一致。此外,由于块层面的同步复制比文件系统层面的同步复制更易于实现,因此在“失效切换”时往往采用块层面的同步复制。然而,在存储系统包括诸如数据库之类的基于事务机制来组织、存储和管理的数据集合的情况下,“失效切换”可能恰好发生于在源存储系统处进行事务提交期间。在这种情况下,备份存储系统处的被复制的数据集合(例如数据库表)的一部分包含事务处理之后的数据,而另一部分包含事务处理之前的数据,从而使得被复制的数据库被置于不一致状态。由此,备份存储系统将无法接管源存储系统的相应功能以对外提供服务。
技术实现思路
鉴于上述以及其他潜在问题,本专利技术的各实施方式提出了一种
能够在同步复制系统中保持事务“原子性”的方案。根据本专利技术实施方式的第一方面,提供了一种用于在同步复制系统中处理事务的方法。该方法包括在所述同步复制系统的源站点处:将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交;响应于发起对事务的提交,针对在所述同步复制系统中进行的每个事务生成日志,以记录相应事务的所有操作对所述同步复制系统的影响;对已生成日志的事务作标记;以及完成对已被作标记的事务的提交。在一个实施方式中,将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交包括:使得在同一时间仅有一个事务能够获得提交锁。在一个实施方式中,所述方法进一步包括:响应于所述源站点失效而发起向所述同步复制系统中的目标站点的切换;其中,在所述源站点和所述目标站点之间实现数据的同步复制。在一个实施方式中,所述方法进一步包括:在所述目标站点处,确定未完成提交的事务是否已被作标记;响应于确定所述事务已被作标记,以针对所述事务生成的日志的内容来更新从所述源站点同步复制到所述目标站点的、与所述事务关联的数据。在一个实施方式中,所述方法进一步包括:在所述目标站点处,确定未完成提交的事务是否已被作标记;响应于确定所述事务未被作标记,信任从所述源站点同步复制到所述目标站点的、与所述事务关联的数据。在一个实施方式中,所述方法进一步包括:移除针对所述事务所生成的日志。在一个实施方式中,对已生成日志的事务作标记包括针对已生成日志的事务创建标记文件。根据本专利技术实施方式的第二方面,提供了一种用于在同步复制系统中处理事务的装置。该装置包括布置在所述同步复制系统的源站点处的:串行化单元,被配置为将所述同步复制系统中的事务提
交串行化,以使得在同一时间仅有一个事务能够被提交;日志生成单元,被配置为响应于发起对事务的提交,针对在所述同步复制系统中进行的每个事务生成日志,以记录相应事务的所有操作对所述同步复制系统的影响;标记单元,被配置为对已生成日志的事务作标记;以及提交完成单元,被配置为完成对已被作标记的事务的提交。根据本专利技术实施方式的第三方面,提供了一种计算机程序产品,其包括计算机可读介质。所述计算机可读介质承载在其中体现的用于与计算机一起使用的计算机程序代码,所述计算机程序代码包括:用于将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交的代码;用于响应于发起对事务的提交,针对在所述同步复制系统中进行的每个事务生成日志,以记录相应事务的所有操作对所述同步复制系统的影响的代码;用于对已生成日志的事务作标记的代码;以及用于完成对已被作标记的事务的提交的代码。本专利技术的实施方式通过为事务的操作记录日志来保持事务的“原子性”,从而解决了应用层面不一致问题。附图说明结合附图并参考以下详细说明,本专利技术各实施方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本专利技术的若干实施方式。在附图中:图1示出了根据本专利技术一个实施方式的用于在同步复制系统中处理事务的方法100的流程图;图2示出了根据本专利技术一个实施方式的用于在同步复制系统中处理事务的装置200的示意性框图;以及图3示出了适于用来实践本专利技术实施方式的计算机系统300的示意性框图。具体实施方式下面参考附图详细描述本专利技术的各实施方式。附图中的流程图和框图,图示了按照本专利技术各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。在本文中,同步复制系统例如可以包括位于源站点处的源存储系统和位于目标站点处的备份存储系统,并且在源存储系统和备份存储系统之间实现数据的同步复制,例如块层面的同步复制。在源存储系统失效、例如发生故障或掉电从而不能为用户提供服务时,切换到备份存储系统,由该备份存储系统接管相应功能从而为用户提供服务。源存储系统和备份存储系统通常包括基于事务机制来组织、存储和管理的数据集合,例如数据库等。如本领域技术人员已知的,“事务”是指作为单个逻辑工作单元执行的一系列相关操作。设想以下网上购物场景。网上购物的付款过程至少包括以下操作:·更新客户所购商品的库存信息;·保存客户付款信息——可能包括与银行系统的交互;·生成订单并且保存到数据库中;·更新客户相关信息,例如购物数量等等。在正常情况下,以上操作将顺利进行,最终交易成功,与交易相关的所有数据库信息也成功地更新。但是,如果在这一系列称作
中任何一个环节出现差错,例如在更新商品库存信息时发生异常、该客户银行帐户存款不足等,都将导致交易失败。一旦交易失败,数据库中所有信息都必须保持交易前的状态不变。例如,如果最后一步更新客户信息时失败而导致交易失败,那么必须保证这笔失败的交易不影响数据库的状态——库存信息没有被更新、客户也没有付款,订单也没有生成。否则,数据库的信息将会一片混乱而不可预测。从上述示例性场景可知,事务必须是原子工作单元,对于其数据修改,要么全部执行,要么全部不执行,这一点被称作事务的“原子性”。通常,与某个事务关联的操作具有共同的目标,并且是相互依赖的。如果只执行这些操作的一个子集,则可能会破坏事务的总体目标。因此,在基于事务机制来组织、存储和管理的数据集合中保持事务的本文档来自技高网
...

【技术保护点】
一种用于在同步复制系统中处理事务的方法,包括在所述同步复制系统的源站点处:将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交;响应于发起对事务的提交,针对在所述同步复制系统中进行的每个事务生成日志,以记录相应事务的所有操作对所述同步复制系统的影响;对已生成日志的事务作标记;以及完成对已被作标记的事务的提交。

【技术特征摘要】
1.一种用于在同步复制系统中处理事务的方法,包括在所述同步复制系统的源站点处:将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交;响应于发起对事务的提交,针对在所述同步复制系统中进行的每个事务生成日志,以记录相应事务的所有操作对所述同步复制系统的影响;对已生成日志的事务作标记;以及完成对已被作标记的事务的提交。2.根据权利要求1所述的方法,其中,将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交包括:使得在同一时间仅有一个事务能够获得提交锁。3.根据权利要求2所述的方法,进一步包括:响应于所述源站点失效而发起向所述同步复制系统中的目标站点的切换;其中,在所述源站点和所述目标站点之间实现数据的同步复制。4.根据权利要求3所述的方法,进一步包括:在所述目标站点处,确定未完成提交的事务是否已被作标记;响应于确定所述事务已被作标记,以针对所述事务生成的日志的内容来更新从所述源站点同步复制到所述目标站点的、与所述事务关联的数据。5.根据权利要求3所述的方法,进一步包括:在所述目标站点处,确定未完成提交的事务是否已被作标记;响应于确定所述事务未被作标记,信任从所述源站点同步复制到所述目标站点的、与所述事务关联的数据。6.根据权利要求5所述的方法,进一步包括:移除针对所述事务所生成的日志。7.根据权利要求1至6中任一项所述的方法,其中对已生成日志的事务作标记包括:针对已生成日志的事务创建标记文件。8.一种用于在同步复制系统中处理事务的装置,包括布置在所述同步复制系统的源站点处的:串行化单元,被配置为将所述同步复制系统中的事务提交串行化,以使得在同一时间仅有一个事务能够被提交;日志生成单元,被配置为响应于发起对事务的提交,针对在所述同步复制系统中进行的每个事务生成日志,以记录相应事务的所有操作对所...

【专利技术属性】
技术研发人员:徐宁张明辉熊天放邬源杨鲁逸峰
申请(专利权)人:伊姆西公司
类型:发明
国别省市:美国;US

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

1