[发明专利]事务处理方法、服务器集群及数据库节点在审
| 申请号: | 202111616825.2 | 申请日: | 2021-12-27 |
| 公开(公告)号: | CN114296888A | 公开(公告)日: | 2022-04-08 |
| 发明(设计)人: | 王海龙;李金龙;韩朱忠 | 申请(专利权)人: | 上海达梦数据库有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F16/22;G06F16/23;G06F16/27 |
| 代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 李礼 |
| 地址: | 201203 上海*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 事务处理 方法 服务器 集群 数据库 节点 | ||
本发明实施例公开了一种事务处理方法、服务器集群及数据库节点。所述方法包括:第一节点接收事务管理器请求,若所述第一节点中存在所述事务管理器请求对应的目标事务,则所述第一节点执行所述目标事务,否则,所述第一节发送事务注册请求至第二节点;其中,所述事务注册请求包括所述目标事务对应的目标全局事务标识符GTID和目标节点号所构成的目标键值对,所述目标节点号为所述第一节点的节点号;所述第二节点根据所述事务注册请求向所述第一节点返回注册结果;所述第一节点设置注册标记以记录所述注册结果,并根据所述注册标记执行相应的事务处理操作。利用该方法,能够在处理事务时保证事务的唯一性。
技术领域
本发明实施例涉及数据库技术领域,尤其涉及一种事务处理方法、服务器集群及数据库节点。
背景技术
XA协议由X/Open组织定义,用于跨异构数据源的分布式事务处理(DistributedTransaction Processing,DTP),XA协议是事务管理器(Transaction Manager,TM)与资源管理器(Resource Manager,RM)间的通信接口标准。实现该XA协议的数据库可作为异构数据源在事务管理器的协调管理下参与同一个分布式事务。
在共享存储集群下,各个节点作为资源管理器独立参与分布式事务的处理,其中由XA协议规定的分布式事务,可称为XA事务。由于各个节点维护的XA事务信息彼此不可见,会导致不同的节点可同时参与处理同一XA事务,从而无法保证每个XA事务只有一个唯一节点参与,即无法保证XA事务的唯一性。
发明内容
本发明实施例提供了一种事务处理方法、服务器集群及数据库节点,以在处理事务时保证事务的唯一性。
第一方面,本发明实施例提供了一种事务处理方法,包括:
第一节点接收事务管理器请求,若所述第一节点中存在所述事务管理器请求对应的目标事务,则所述第一节点执行所述目标事务,否则,所述第一节发送事务注册请求至第二节点;其中,所述事务注册请求包括所述目标事务对应的目标全局事务标识符(GlobalTransaction Identifier,GTID)和目标节点号所构成的目标键值对,所述目标节点号为所述第一节点的节点号;
所述第二节点根据所述事务注册请求向所述第一节点返回注册结果;
所述第一节点设置注册标记以记录所述注册结果,并根据所述注册标记执行相应的事务处理操作。
第二方面,本发明实施例还提供了一种事务处理方法,包括:
接收事务管理器请求;
若所述第二节点中存在所述事务管理器请求对应的目标事务,则执行所述目标事务;
若所述第二节点中不存在所述事务管理器请求对应的目标事务,则注册所述目标事务,并设置注册标记以记录注册结果;
根据所述注册标记执行相应的事务处理操作。
第三方面,本发明实施例还提供了一种服务器集群,包括:第一节点和第二节点;
所述第一节点和所述第二节点用于实现本发明实施例提供的事务处理方法。
第四方面,本发明实施例还提供了一种数据库节点,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例提供的事务处理方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111616825.2/2.html,转载请声明来源钻瓜专利网。





