本申请涉及计算机,尤其涉及一种数据同步方法、装置、计算机设备和存储介质。
背景技术:
1、业务从一个单机数据库迁移到一个分布式数据库时,有一个重要的流程就是当业务迁移成功后,有个反向同步的窗口期,用于防止万一迁移出现不成功时,业务还能快速的回切到原单机数据库上。在分布式数据库(源端数据库)向单机数据库(目标端数据库)同步增量数据的过程中,服务端定时从分布式数据库和单机数据库拉取需要进行比对校验的数据,当业务负载较高时服务端会堆积大量来自单机数据库的无效中间待校验数据,而服务端对无效的中间校验数据进行校验同步处理将会浪费服务端的计算力。
技术实现思路
1、为了解决上述技术问题,本申请提供了一种数据同步方法、装置、计算机设备和存储介质。
2、第一方面,本申请提供了一种数据同步方法,包括:
3、在符合数据比对条件的情况下,向源端数据库发送第一拉取请求,其中,所述第一拉取请求用于请求拉取预设时长内的第一比对数据;
4、在接收到来自所述源端数据库的所述第一比对数据的情况下,向目标端数据库发送第二拉取请求,其中,所述第二拉取请求用于请求拉取与所述第一比对数据对应的第二比对数据;
5、在接收到所述第二比对数据的情况下,根据所述第一比对数据与所述第二比对数据之间的比对结果,确定所述源端数据库与所述目标端数据库之间的目标差异数据;
6、根据所述目标差异数据对所述目标端数据库进行同步处理。
7、第二方面,本申请提供了一种数据同步装置,包括:
8、第一拉取模块,用于在符合数据比对条件的情况下,向源端数据库发送第一拉取请求,其中,所述第一拉取请求用于请求拉取预设时长内的第一比对数据;
9、第二拉取模块,用于在接收到来自所述源端数据库的所述第一比对数据的情况下,向目标端数据库发送第二拉取请求,其中,所述第二拉取请求用于请求拉取与所述第一比对数据对应的第二比对数据;
10、比对校验模块,用于在接收到所述第二比对数据的情况下,根据所述第一比对数据与所述第二比对数据之间的比对结果,确定所述源端数据库与所述目标端数据库之间的目标差异数据;
11、同步模块,用于根据所述目标差异数据对所述目标端数据库进行同步处理。
12、第三方面,本申请提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
13、在符合数据比对条件的情况下,向源端数据库发送第一拉取请求,其中,所述第一拉取请求用于请求拉取预设时长内的第一比对数据;
14、在接收到来自所述源端数据库的所述第一比对数据的情况下,向目标端数据库发送第二拉取请求,其中,所述第二拉取请求用于请求拉取与所述第一比对数据对应的第二比对数据;
15、在接收到所述第二比对数据的情况下,根据所述第一比对数据与所述第二比对数据之间的比对结果,确定所述源端数据库与所述目标端数据库之间的目标差异数据;
16、根据所述目标差异数据对所述目标端数据库进行同步处理。
17、第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
18、在符合数据比对条件的情况下,向源端数据库发送第一拉取请求,其中,所述第一拉取请求用于请求拉取预设时长内的第一比对数据;
19、在接收到来自所述源端数据库的所述第一比对数据的情况下,向目标端数据库发送第二拉取请求,其中,所述第二拉取请求用于请求拉取与所述第一比对数据对应的第二比对数据;
20、在接收到所述第二比对数据的情况下,根据所述第一比对数据与所述第二比对数据之间的比对结果,确定所述源端数据库与所述目标端数据库之间的目标差异数据;
21、根据所述目标差异数据对所述目标端数据库进行同步处理。
22、基于上述数据同步方法,服务端在符合数据比对条件的情况下,才向源端数据库发送第一拉取请求以拉取预设时长内的第一比对数据,在接收到源端数据库发送的第一比对数据时,向目标端数据库发送第二拉取请求以拉取第一比对数据对应的第二比对数据,根据接收到的第二比对数据与第一比对数据进行比对,并基于其比对结果确定源端数据库与目标端数据库之间的目标差异数据,以源端数据库中的记录为准按照目标差异数据对目标端数据库中的记录进行同步处理,由于上述数据同步方法中服务端自行按需从源端数据库和目标端数据库中拉取比对数据,避免了业务负载较高时会在服务端堆积大量的无效中间待校验数据,从而解决了服务端对无效的中间校验数据进行校验同步处理导致服务端计算力浪费的问题。
1.一种数据同步方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述在符合数据比对条件的情况下,向源端数据库发送第一拉取请求,包括:
3.根据权利要求1所述的方法,其特征在于,所述在接收到来自所述源端数据库的所述第一比对数据的情况下,向目标端数据库发送第二拉取请求,包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一比对数据与所述第二比对数据之间的比对结果,确定所述源端数据库与所述目标端数据库之间的目标差异数据,包括:
5.根据权利要求4所述的方法,其特征在于,所述通过每个所述比对线程按照预设比对方案,将各个所述目标任务中每个所述第一待比对记录与多个所述第二待比对记录进行比对处理,得到各个所述目标任务对应的比对结果,包括:
6.根据权利要求5所述的方法,其特征在于,所述通过当前比对线程确定当前目标任务中当前第一待比对记录的记录标识与各个所述第二待比对记录的记录标识之间的第一匹配结果之后,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述目标差异数据包括所述差异文件中的各个记录标识,所述根据所述目标差异数据对所述目标端数据库进行同步处理,包括:
8.一种数据同步装置,其特征在于,所述装置包括:
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述方法的步骤。