[发明专利]事务数据的同步方法、装置、计算机设备及存储介质有效
| 申请号: | 202210447065.5 | 申请日: | 2022-04-26 |
| 公开(公告)号: | CN114896258B | 公开(公告)日: | 2022-12-16 |
| 发明(设计)人: | 郭亚齐;于洋;高经郡 | 申请(专利权)人: | 北京科杰科技有限公司 |
| 主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/27;G06F9/54 |
| 代理公司: | 北京维正专利代理有限公司 11508 | 代理人: | 卓凡 |
| 地址: | 100020 北京市朝阳区阜*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 事务 数据 同步 方法 装置 计算机 设备 存储 介质 | ||
本申请公开了一种事务数据的同步方法、装置、计算机设备及存储介质,其中,该事务数据的同步方法包括:采用事务记录筛选器确定消息的消息类型;若消息类型为事务数据,则给消息建立事务账本,并采用Raft共识机制将事务账本与所有节点的全网账本进行同步;当事务账本对应的账本状态处于待消费状态时,检查事务账本的幂等性获取检查结果;若检查结果为不满足幂等性,则执行事务账本中的事务,并获取事务执行结果;采用补偿机制校验事务执行结果,获取校验结果。该方法可有效地提高大数据实时同步系统中事务数据的及时同步保持事务数据的一致性,保证数据不重复不丢失,简化数据配置单元,有效实现分布式系统配件的插拔扩展。
技术领域
本发明涉及分布式系统技术领域,尤其涉及一种事务数据的同步方法、装置、计算机设备及存储介质。
背景技术
数据实时同步系统对结构化及非结构化数据进行实时同步,保障数据的底层支撑。为了实现分布式系统的事务一致性,在真实的分布式业务系统中采用混合事务的ACID(atomicity-原子性,consistency-一致性,isolation-隔离性,durability-持久性)原则和CAP(Consistency-一致性、Availability-可用性、Partition tolerance-分区容错性)原则的设计原则,这将显著提高对于系统架构和各个消息组件的配置要求,增加了系统的复杂度,并且对于已完成部署的系统造成繁琐的改造工作。并且,在当前分布式系统中为了保证数据高可用性,各服务器系统会保留多个副本,当网络或服务器出现故障时,还会出现副本写入内容不一致造成了数据事务的不一致性的情形。
发明内容
本发明实施例提供一种事务数据的同步方法、装置、计算机设备及存储介质,以解决如何降低分布式系统的复杂度,对于已完成部署的系统改造工作简便同时实现数据一致性的问题。
一种事务数据的同步方法,包括:
获取消息,并采用事务记录筛选器确定消息的消息类型;
若消息类型为事务数据,则给消息建立事务账本以及事务ID,并采用Raft共识机制将事务ID对应的事务账本与所有节点的全网账本进行同步;
当事务账本对应的账本状态处于待消费状态时,检查事务账本的幂等性,获取检查结果;
若检查结果为不满足幂等性,则执行事务账本中的事务,并获取事务执行结果;
采用补偿机制校验事务执行结果,获取校验结果,基于校验结果更新事务账本对应的账本状态。
优选地,全网账本包括一个主节点和至少一个与主节点保持同步的从节点;
在采用Raft共识机制将事务ID对应的事务账本与全网账本进行同步之后,还包括:
若主节点发生故障,则从任一从节点中选举出新的主节点。
优选地,执行事务账本中的事务,包括:
将事务账本中的事务发送给消息中间件,以使消息中间件将事务账本中的事务插入消息队列后发送给消息消费者,用于执行事务账本中的事务。
优选地,校验结果包括完成执行和未完成执行;
采用补偿机制校验事务执行结果,获取校验结果,基于校验结果更新事务账本对应的账本状态,包括:
校验事务执行结果对应的所有子事务;
若所有子事务均完成,则校验结果为完成执行,将账本状态更新为事务完成执行;
若所有子事务未完全完成,则校验结果为未完成执行并提取异常数据;
采用补偿机制补偿异常数据,若在预设补偿次数后获取的校验结果仍为未完成,则进行数据回滚,并将账本状态更新为事务未完成执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京科杰科技有限公司,未经北京科杰科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210447065.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





