[发明专利]基于节点互证校验的分布式事务故障处理方法及相关设备在审
| 申请号: | 201910385755.0 | 申请日: | 2019-05-09 |
| 公开(公告)号: | CN110413687A | 公开(公告)日: | 2019-11-05 |
| 发明(设计)人: | 吴佳;苏丹;杨睿;刘超;胡学勇;邓卜侨;孙雷;崔伟;刘炜;郑红云;林韶宾;高孝鑫;娄帅;冷曼 | 申请(专利权)人: | 国网冀北电力有限公司;北京中电普华信息技术有限公司;北京万里开源软件有限公司;北京国电通网络技术有限公司;国网信息通信产业集团有限公司 |
| 主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/23 |
| 代理公司: | 北京风雅颂专利代理有限公司 11403 | 代理人: | 李弘 |
| 地址: | 100053 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 分布式事务 故障处理 校验 事物 事务提交 失败 集群 关联 成功 | ||
本发明公开了一种基于节点互证校验的分布式事务故障处理方法及相关设备。所述方法包括:对所述分布式事物包含的每个分片进行第二阶段的提交;获取任一提交失败的分片以及与该分片关联的所述分布式事物的其他分片;判断所述分布式事物的其他分片中是否有任一分片提交成功;若是,则将该提交失败的分片重新提交。本发明所述方法及相关设备在第二阶段提交阶段出现故障的情况下依然可以确保集群事务提交的强一致性。
技术领域
本发明涉及通信网络技术领域,特别是指一种基于节点互证校验的分布式事务故障处理方法及相关设备。
背景技术
事务(Transaction)是一个操作序列为实现特定业务功能而访问数据库的最小逻辑工作单位。分布式事务是指一个事务可能涉及多个数据库操作。当对这些数据库进行操作后,对这些数据库的修改必须全部被提交或回滚,不允许有的数据库提交而有的数据库没有提交,该特性称为事务的原子性和一致性。此时一个数据库对自己内部所做操作的提交不仅依赖本身操作是否成功,还要依赖与分布式事务相关的其它数据库的操作是否成功,如果任一数据库的任一操作失败,则参与此事务的所有数据库所做的所有操作都必须回滚。即要么所有参与节点都提交成功,要么所有参与节点都回滚,如图1所示。
传统方案的实现直接调用了mysql原生的xa接口,由mysql节点作为分布式事务的资源管理器(即参与者),分布式数据库调度程序/业务程序作为分布式事务的事务管理器(即协调者);通过在所有参与者节点执行xa prepare来确定所有参与者进行可提交状态,而后向所有参与者发送第二阶段提交命令进行事务的本地提交。
传统两阶段提交实现的问题在于如果第二阶段提交的命令在某个参与者节点上失败(可能由于网络或节点故障),那么其他参与者依然会提交成功;而对于故障的参与者节点,并没有机制来确保故障节点恢复后对应的分布式事务与其他参与者节点一致,大概率会出现分布式事务部分提交的不一致状态并被客户端感知。
发明内容
有鉴于此,本发明实施例的目的在于提出一种基于节点互证校验的分布式事务故障处理方法及相关设备,在第二阶段提交阶段出现故障的情况下依然可以确保集群事务提交的强一致性。
基于上述目的本发明实施例提供的一种基于节点互证校验的分布式事务故障处理方法,包括:
对所述分布式事物包含的每个分片进行第二阶段的提交;
获取任一提交失败的分片以及与该分片关联的所述分布式事物的其他分片;
判断所述分布式事物的其他分片中是否有任一分片提交成功;
若是,则将该提交失败的分片重新提交。
可选的,所述分布式事物的每一个分片均包含一个主数据副本和至少一个备数据副本,通过强一致复制实现所述主数据副本与所述备数据副本之间的强一致性,所述主数据副本用于在第二阶段提交的过程中实现各个分片的提交,所述备数据副本用于实现提交失败的分片的重新提交。
可选的,所述主数据副本、所述备数据副本均包含业务数据和日志数据,所述业务数据为所述分布式事物本身的业务数据,所述日志数据为嵌入到所述分布式事物本身的业务数据中的分布式日志。
可选的,所述分布式日志以分片节点系统数据表操作的形式存储为日志数据。
可选的,所述日志数据包括关联节点信息以及提交状态信息,所述关联节点信息用于记录本分片节点与其他分片节点之间的关联关系,所述提交状态信息用于记录当前分片的提交状态。
可选的,所述获取任一提交失败的分片以及与该分片关联的所述分布式事物的其他分片包括:将该提交失败的分片的备数据副本提升为新主数据副本,通过所述新主数据副本的日志数据查询与其具有相同分布式事物id信息的其他分片。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国网冀北电力有限公司;北京中电普华信息技术有限公司;北京万里开源软件有限公司;北京国电通网络技术有限公司;国网信息通信产业集团有限公司,未经国网冀北电力有限公司;北京中电普华信息技术有限公司;北京万里开源软件有限公司;北京国电通网络技术有限公司;国网信息通信产业集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910385755.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据写入方法、装置、设备及存储介质
- 下一篇:一种数据处理方法和相关装置





