[发明专利]事务处理方法、装置、节点设备及存储介质在审
申请号: | 202210443858.X | 申请日: | 2022-04-25 |
公开(公告)号: | CN115098229A | 公开(公告)日: | 2022-09-23 |
发明(设计)人: | 卢卫;赵展浩;黄觉;罗宇;李海翔;杜小勇;潘安群 | 申请(专利权)人: | 深圳市腾讯计算机系统有限公司;中国人民大学 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F11/07;G06F16/27 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 祝亚男 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 事务处理 方法 装置 节点 设备 存储 介质 | ||
1.一种事务处理方法,其特征在于,由分布式数据库系统的协调节点设备执行,所述方法包括:
确定目标事务所涉及执行的数据库操作对应的主副本节点设备;
向所述主副本节点设备分发所述目标事务在所述主副本节点设备上的子事务;
向所述主副本节点设备发送准备请求,所述准备请求用于指示所述主副本节点设备对所述子事务进行数据异常检测;
在符合事务提交条件的情况下,向所述主副本节点设备发送提交请求,所述提交请求用于指示所述主副本节点设备提交所述子事务,以及将所述子事务的重做日志发送至对应的从副本节点设备。
2.根据权利要求1所述的方法,其特征在于,所述确定目标事务所涉及执行的数据库操作对应的主副本节点设备包括:
确定所述数据库操作所对应数据项所属的数据分区;
基于分区信息表,查询得到所述数据分区对应的所述主副本节点设备,所述分区信息表用于记录数据分区与主副本节点设备的对应关系。
3.根据权利要求1所述的方法,其特征在于,所述协调节点设备存储有所述目标事务的操作日志列表,所述操作日志列表包括所述目标事务当前已执行的数据库操作的操作记录;
所述向所述主副本节点设备分发所述目标事务在所述主副本节点设备上的子事务之后,所述方法还包括:
响应于所述主副本节点设备返回的子事务执行结果,在所述操作日志列表中,添加所述子事务已执行的数据库操作的操作记录,所述操作记录表征所述数据库操作的操作类型和涉及操作的数据项。
4.根据权利要求3所述的方法,其特征在于,在所述分布式数据库系统中,所述协调节点设备和至少一个其他协调节点设备构成协调节点组,所述方法还包括:
每间隔第一目标时长,向所述协调节点组中的所述至少一个其他协调节点设备发送已存储的至少一个事务的操作日志列表。
5.根据权利要求4所述的方法,其特征在于,所述向所述主副本节点设备发送准备请求包括:
在所述目标事务的子事务的操作记录均添加至所述操作日志列表,且所述操作日志列表已同步至任一其他协调节点设备的情况下,向所述主副本节点设备发送所述准备请求。
6.根据权利要求3至5中任一项所述的方法,其特征在于,所述操作日志列表还用于存储所述目标事务的准备操作记录或提交操作记录中至少一项,所述准备操作记录用于记录所述目标事务在准备阶段所处的状态,所述提交操作记录用于记录所述目标事务的提交阶段所处的状态。
7.根据权利要求1所述的方法,其特征在于,若所述主副本节点设备发生故障,所述方法还包括:
确定从所述主副本节点设备对应的至少一个从副本节点设备中选举得到的目标节点设备;
确定所述目标节点设备对应的目标子事务,所述目标子事务是指原本由所述主副本节点设备执行但由于故障正在等待恢复的子事务;
向所述目标节点设备发送所述目标子事务的待恢复操作队列,所述待恢复操作队列包括所述目标子事务在操作日志列表中对应的至少一条操作记录。
8.根据权利要求7所述的方法,其特征在于,所述目标节点设备是从所述至少一个从副本节点设备中随机选举得到的;或,所述目标节点设备是所述至少一个从副本节点设备中负载最低的节点设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市腾讯计算机系统有限公司;中国人民大学,未经深圳市腾讯计算机系统有限公司;中国人民大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210443858.X/1.html,转载请声明来源钻瓜专利网。