数据处理方法与流程

文档序号:36737958发布日期:2024-01-16 12:53阅读:18来源:国知局
数据处理方法与流程

本申请涉及数据处理,特别是涉及一种数据处理方法。


背景技术:

1、为了防止数据库中的数据丢失,可以通过将数据写入到多个副本中来保证数据的安全,而多副本中数据的强一致性实现,即同步实现,是一个重要的问题。

2、在数据库系统中,为了实现强一致性,一般采用主从数据库的架构,在工作过程中,主数据库可以接收客户端发送的请求,并根据该请求生成日志,以及根据该请求对自身的数据库数据进行操作。进一步,主数据库可以对其生成的日志进行持久化处理。另外,主数据库还可以将其生成的日志发送给从数据库。

3、虽然上述数据库同步方法可以实现强一致性,但是,仍然存在数据库同步效率较低的问题。


技术实现思路

1、本申请至少提供一种数据处理方法。

2、本申请第一方面提供了一种数据处理方法,应用于从数据库对应的从节点,方法包括:接收主节点发送的主数据库对应的数据库日志,将数据库日志添加至日志缓存队列中;提取日志缓存队列中当前待同步的数据库日志,得到目标日志,基于目标日志对从数据库进行数据库同步处理;响应于数据库同步处理成功,对目标日志进行持久化存储。

3、在一实施例中,主节点发送的数据库日志均对应有全局事务顺序标识;提取日志缓存队列中当前待同步的数据库日志,得到目标日志,包括:按照各个数据库日志对应的全局事务顺序标识,对日志缓存队列中的数据库日志进行排序;从排序后的日志缓存队列中选取出当前待同步的数据库日志,得到目标日志。

4、在一实施例中,在从排序后的日志缓存队列中选取出当前待同步的数据库日志,得到目标日志之后,方法还包括:获取非易失性存储器中已存储的数据库日志对应的最新全局事务顺序标识,得到第一基准标识;将目标日志对应的全局事务顺序标识作为待同步日志标识;检测第一基准标识和待同步日志标识之间是否相邻;基于目标日志对从数据库进行数据库同步处理,包括:若第一基准标识和待同步日志标识相邻,则基于目标日志对从数据库进行数据库同步处理。

5、在一实施例中,接收主节点发送的主数据库的数据库日志,将数据库日志添加至日志缓存队列中,包括:获取主节点发送的数据库日志的全局事务顺序标识,得到待添加日志标识;以及获取日志缓存队列中数据库日志对应的最新全局事务顺序标识,得到第二基准标识;检测第二基准标识和待添加日志标识之间是否相邻;若第二基准标识和待添加日志标识相邻,则将主节点发送的数据库日志添加至日志缓存队列中。

6、在一实施例中,方法还包括:若第二基准标识和待添加日志标识不相邻,则基于第二基准标识生成事务日志追平请求;将事务日志追平请求发送至主节点,以使主节点基于事务日志追平请求中的第二基准标识,向从节点发送主数据库对应的数据库日志。

7、在一实施例中,方法还包括:获取客户端发送的数据库读请求,检测从节点是否可以执行数据库读请求;若从节点可以执行数据库读请求,则检测日志缓存队列中是否存在数据库日志,若日志缓存队列中不存在数据库日志,则基于数据库读请求对从数据库执行读操作;若从节点不可以执行数据库读请求,则将数据库读请求转发至其它从节点或主节点。

8、在一实施例中,方法还包括:获取客户端发送的数据库写请求;将数据库写请求转发至主节点,以使主节点执行数据库写请求。

9、本申请第二方面提供了一种数据处理方法,应用于主数据库对应的主节点,方法包括:向从数据库对应的从节点发送主数据库的数据库日志,以使从节点将数据库日志添加至日志缓存队列中,提取日志缓存队列中当前待同步的数据库日志,得到目标日志,基于目标日志对从数据库进行数据库同步处理,并响应于数据库同步处理成功,对目标日志进行持久化存储。

10、在一实施例中,主数据库中存储有节点状态表,节点状态表存储有各个从节点对应的最新全局事务顺序标识;向从数据库对应的从节点发送主数据库的数据库日志,包括:从节点状态表中获取各个从节点的最新全局事务顺序标识;基于各个从节点的最新全局事务顺序标识,分别确定各个从节点待发送的数据库日志;分别向各个从节点发送待发送的数据库日志。

11、在一实施例中,方法还包括:获取客户端或从节点发送的数据库写请求;对主数据库执行数据库写请求,并生成数据库写请求对应的数据库日志;将数据库写请求对应的数据库日志发送给各个从节点。

12、本申请第三方面提供了一种电子设备,包括存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述数据处理方法。

13、本申请第四方面提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述数据处理方法。

14、上述方案,通过接收主节点发送的主数据库对应的数据库日志,将数据库日志添加至日志缓存队列中;提取日志缓存队列中当前待同步的数据库日志,得到目标日志,基于目标日志对从数据库进行数据库同步处理;响应于数据库同步处理成功,对目标日志进行持久化存储。即针对一个数据库日志,只有在数据库同步处理后,才对数据库日志进行持久化存储,可以仅执行一次数据写入操作,通过减少读写操作,缩短了数据库同步需要耗费的时间,提高了数据库系统性能。

15、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本申请。



技术特征:

1.一种数据处理方法,应用于从数据库对应的从节点,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述主节点发送的数据库日志均对应有全局事务顺序标识;所述提取所述日志缓存队列中当前待同步的数据库日志,得到目标日志,包括:

3.根据权利要求2所述的方法,其特征在于,在所述从排序后的日志缓存队列中选取出当前待同步的数据库日志,得到目标日志之后,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述接收主节点发送的主数据库的数据库日志,将所述数据库日志添加至日志缓存队列中,包括:

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:

6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:

7.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:

8.一种数据处理方法,应用于主数据库对应的主节点,其特征在于,所述方法包括:

9.根据权利要求8所述的方法,其特征在于,所述主数据库中存储有节点状态表,所述节点状态表存储有各个从节点对应的最新全局事务顺序标识;所述向从数据库对应的从节点发送所述主数据库的数据库日志,包括:

10.根据权利要求8所述的方法,其特征在于,所述方法还包括:


技术总结
本申请公开了一种数据处理方法,该方法包括:接收主节点发送的主数据库对应的数据库日志,将数据库日志添加至日志缓存队列中;提取日志缓存队列中当前待同步的数据库日志,得到目标日志,基于目标日志对从数据库进行数据库同步处理;响应于数据库同步处理成功,对目标日志进行持久化存储。即针对一个数据库日志,只有在数据库同步处理后,才对数据库日志进行持久化存储,可以仅执行一次数据写入操作,通过减少读写操作,缩短了数据库同步需要耗费的时间,提高了数据库系统性能。

技术研发人员:江惠中,周明伟
受保护的技术使用者:浙江大华技术股份有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1