当前位置: 首页 > 专利查询>白腊梅专利>正文

数据库中表级别的数据同步方法和装置制造方法及图纸

技术编号:32344421 阅读:17 留言:0更新日期:2022-02-20 01:57
本发明专利技术提供了一种数据库中表级别的数据同步方法和装置,包括:S1、在第一时间点,获取源数据表的记录集,生成目标数据表;S2、在小于或等于第一时间点的第二时间点起持续获取源数据表的操作;S3、将源数据表的操作按照主键划分为多个子操作集,每个子操作集存储主键按照时序排列的相关操作;S4、对各个子操作集中相关操作的存储数量进行计数,在存储数量达到预设阈值时,获取子操作集中本次计数所涉及的目标操作;S5、根据目标操作更新目标数据表中相应主键的数据;S6、将存储数量计数清零,并循环执行步骤S4本发明专利技术从第二时间点起持续获取源数据库中源数据表的操作,并持续循环更新,保证数据不遗漏的前提下提高了同步速度。保证数据不遗漏的前提下提高了同步速度。保证数据不遗漏的前提下提高了同步速度。

【技术实现步骤摘要】
数据库中表级别的数据同步方法和装置


[0001]本专利技术涉及计算机
,尤其涉及数据库中表级别的数据同步方法和装置。

技术介绍

[0002]数据是我们每天都要面对的无法缺少的信息基础,数据库技术是信息系统的一项核心技术。随着信息技术的发展,为满足使用要求,数据库中的数据量和数据存放位置也不断地变化。例如,信息系统中数据库的扩容、数据库中数据表的数据重分布、数据库更换新的运行服务器、数据库的更换信息系统以及备份数据库等多种情况下需要对数据库进行数据迁移和同步。
[0003]现有的数据表的数据同步技术是:获取迁移后数据的第一个操作动作,解析该操作及其后的所有操作,并按照数据库日志记录的顺序,依次对目标数据库中的数据重复执行上述操作。同时,为了保证同步后目标数据库与源数据库的一致性,要保证每次操作的正确性以及各个操作间的顺序性,做到顺序操作。
[0004]然而,当数据库中的数据量比较大,每行数据的操作次数比较多时,现有的顺序操作、重复执行的同步方式,存在同步速度慢的缺陷。例如,当源数据表中有1000行数据,且每一行存在10000次操作,则需要对这1000行依次执行10000次的操作,可见同步过程中总的操作次数比较多。

技术实现思路

[0005]本专利技术实施例提供一种数据库中表级别的数据同步方法和装置,旨在解决采用现有的数据同步方法存在同步速度慢的问题。
[0006]本专利技术实施例是这样实现的,提供一种数据库中表级别的数据同步方法,所述方法包括以下步骤:
[0007]S1、在第一时间点,从源数据库中获取源数据表的记录集,将所述记录集插入目标数据库中形成所述目标数据表;
[0008]S2、在第二时间点起持续获取所述源数据库中所述源数据表的操作,其中,所述第二时间点小于或等于所述第一时间点;
[0009]S3、将所述源数据表的操作按照主键划分为多个子操作集,每个所述子操作集存储所述主键按照时序排列的相关操作;
[0010]S4、对各个子操作集中相关操作的存储数量进行计数,在存储数量达到预设阈值时,获取所述子操作集中本次计数所涉及的目标操作;
[0011]S5、根据所述目标操作更新所述目标数据表中相应主键的数据;
[0012]S6、将子操作集中存储数量达到预设阈值时计数清零,并循环执行所述步骤S4。
[0013]更进一步的,所述步骤S5的步骤包括:
[0014]所述目标数据表中所述目标操作对应的主键按照时间戳升序执行所述目标操作。
[0015]更进一步的,所述步骤S5的步骤还包括:
[0016]将所述目标操作进行操作压缩,得到所述目标操作的替代操作;
[0017]所述目标数据表中所述目标操作对应的主键执行所述替代操作。
[0018]更进一步的,所述将所述目标操作进行操作压缩,得到所述目标操作的替代操作的步骤包括:
[0019]获取所述目标操作中的最大时间戳对应操作;
[0020]根据所述最大时间戳对应操作的操作类型和字段值确定所述目标操作的替代操作。
[0021]更进一步的,当所述最大时间戳对应操作的操作类型为插入时,所述替代操作的操作类型包括删除和插入;
[0022]当所述最大时间戳对应操作的操作类型为修改时,所述替代操作的操作类型为删除和插入;
[0023]当所述最大时间戳对应操作的操作类型为删除时,所述替代操作的操作类型为删除。
[0024]此外,本专利技术实施例还提出一种数据库中表级别的数据同步装置,其特征在于,所述装置包括:
[0025]形成单元,用于在第一时间点,从所述源数据库中获取所述源数据表的记录集,将所述记录集插入目标数据库中形成所述目标数据表;
[0026]持续获取单元,用于在第二时间点起持续获取所述源数据库中所述源数据表的操作,其中,所述第二时间点小于或等于所述第一时间点;
[0027]划分单元,用于将所述源数据表的操作按照主键划分为多个子操作集,每个所述子操作集存储所述主键按照时序排列的相关操作;
[0028]目标操作获取单元,用于对各个子操作集中相关操作的存储数量进行计数,在存储数量达到预设阈值时,获取所述子操作集中本次计数所涉及的目标操作;
[0029]更新单元,用于根据所述目标操作更新所述目标数据表中相应主键的数据;
[0030]循环单元,用于将子操作集中存储数量达到预设阈值的计数清零,并循环执行所述对各个子操作集中相关操作的存储数量进行计数,在存储数量达到预设阈值时,获取所述子操作集中本次计数所涉及的目标操作的步骤。
[0031]更进一步的,所述更新单元包括:
[0032]第一执行模块,用于所述目标数据表中所述目标操作对应的主键按照时间戳升序执行所述目标操作。
[0033]更进一步的,所述更新单元还包括:
[0034]压缩操作模块,用于将所述目标操作进行操作压缩,得到所述目标操作的替代操作;
[0035]第二执行模块,用于所述目标数据表中所述目标操作对应的主键执行所述替代操作。
[0036]更进一步的,所述压缩操作模块包括:
[0037]获取子模块,用于获取所述目标操作中的最大时间戳对应操作;
[0038]确定子模块,用于根据所述最大时间戳对应操作的操作类型和字段值确定所述目标操作的替代操作。
[0039]更进一步的,当所述最大时间戳对应操作的操作类型为插入时,所述替代操作的操作类型包括删除和插入;
[0040]当所述最大时间戳对应操作的操作类型为修改时,所述替代操作的操作类型为删除和插入;
[0041]当所述最大时间戳对应操作的操作类型为删除时,所述替代操作的操作类型为删除。
[0042]本专利技术的有益效果在于,与现有技术相比,本专利技术在第一时间点从源数据库中获取源数据表的记录集,并将该记录集插入目标数据库中形成迁移后的目标数据表。从小于或等于第一时间点的第二时间点起持续从源数据库中获取源数据表的操作。将得到的操作集中每个主键的操作按照主键划分为多个子操作集,每个所述子操作集存储所述主键按照时序排列的相关操作。在不停机的迁移操作下,每分每秒源数据库中的数据都在变化,数据的同步很难存在一个同步终点。在本申请中,从第二时间点起持续获取元数据库中元数据标的操作,对各个逐渐划分子自操作集,并对子操作集中存储的操作的数据进行统计,从而,在操作的数量累计到预设阈值时,将本次统计数量时所涉及的操作作为目标操作。根据目标操作的具体内容更新目标数据表中相应主键的数据。在子操作集中操作的存储数量达到预设阈值时执行一次主键的数据更新,此时源数据表中的数据还在不断变化,因此,重新开始对子操作集中新存储的操作数量进行计数,并循环执行目标操作的获取和目标数据表的更新,在存储数量再次达到预设阈值时,获取子操作集中本次计数所涉及的目标操作,根据再次确定的目标操作更新对应主键的数据。周期循环从而保证目标数据表与源数据中的数据同步。每个主键都有其自身对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库中表级别的数据同步方法,其特征在于,所述方法包括以下步骤:S1、在第一时间点,从源数据库中获取源数据表的记录集,将所述记录集插入目标数据库中形成所述目标数据表;S2、在第二时间点起持续获取所述源数据库中所述源数据表的操作,其中,所述第二时间点小于或等于所述第一时间点;S3、将所述源数据表的操作按照主键划分为多个子操作集,每个所述子操作集存储所述主键按照时序排列的相关操作;S4、对各个子操作集中相关操作的存储数量进行计数,在存储数量达到预设阈值时,获取所述子操作集中本次计数所涉及的目标操作;S5、根据所述目标操作更新所述目标数据表中相应主键的数据;S6、将子操作集中存储数量达到预设阈值时计数清零,并循环执行所述步骤S4。2.如权利要求1所述的数据库中表级别的数据同步方法,其特征在于,所述步骤S5的步骤包括:所述目标数据表中所述目标操作对应的主键按照时间戳升序执行所述目标操作。3.如权利要求1所述的数据库中表级别的数据同步方法,其特征在于,所述步骤S5的步骤还包括:将所述目标操作进行操作压缩,得到所述目标操作的替代操作;所述目标数据表中所述目标操作对应的主键执行所述替代操作。4.如权利要求3所述的数据库中表级别的数据同步方法,其特征在于,所述将所述目标操作进行操作压缩,得到所述目标操作的替代操作的步骤包括:获取所述目标操作中的最大时间戳对应操作;根据所述最大时间戳对应操作的操作类型和字段值确定所述目标操作的替代操作。5.如权利要求4所述的数据库中表级别的数据同步方法,其特征在于,当所述最大时间戳对应操作的操作类型为插入时,所述替代操作的操作类型包括删除和插入;当所述最大时间戳对应操作的操作类型为修改时,所述替代操作的操作类型为删除和插入;当所述最大时间戳对应操作的操作类型为删除时,所述替代操作的操作类型为删除。6.一种数据库中表级别的数据同步装置,其特征在于,所述装置包括:形成单元,用于在第一时间点,从所述源数据库中获取...

【专利技术属性】
技术研发人员:白腊梅
申请(专利权)人:白腊梅
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1