数据复制方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:30038691 阅读:11 留言:0更新日期:2021-09-15 10:36
本申请涉及一种数据复制方法、装置、计算机设备和存储介质。所述方法包括:响应于复制任务,获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较;若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值;其中,主键第一阈值大于主键第二阈值;根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据;将所述分片数据并行复制到目标数据库中。采用本方法能够有效提高数据复制效率。制效率。制效率。

【技术实现步骤摘要】
数据复制方法、装置、计算机设备和存储介质


[0001]本申请涉及计算机
,特别是涉及一种数据复制方法、装置、计算机设备和存储介质。

技术介绍

[0002]随着计算机技术的发展,5G时代的来临,互联网的出现给现代生活带来了极大的便利,越来越多的企业可以通过使用系统业务平台在线对多种业务进行处理,为用户带来便捷。
[0003]然而,目前的数据复制方式中,通常使用线程依次从源数据库中读取数据复制到目标数据库,例如,在目前的交易系统中,需要对生成的交易数据进行存储时,通常使用线程将数据库中存储的数据复制到另一个数据库中存储,按照线程的容量依次从源数据库中读取交易数据并进行复制,即通过单线程或多线程依次从源数据库中读取交易数据复制到目标数据库,这种数据复制方式容易导致数据复制效率较低。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够提高数据复制效率的数据复制方法、装置、计算机设备和存储介质。
[0005]一种数据复制方法,所述方法包括:
[0006]响应于复制任务,获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较;
[0007]若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值;其中,主键第一阈值大于主键第二阈值;
[0008]根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据;
[0009]将所述分片数据并行复制到目标数据库中。
[0010]在其中一个实施例中,所述响应于复制任务之后,所述方法还包括:
[0011]查询各所述复制任务对应的数据表的行数,并将所述复制任务按照所述行数从大到小的顺序进行排序处理;
[0012]所述获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较包括:
[0013]获取已排序的所述复制任务中行数最大的目标复制任务所对应的数据表的行数,并将所述行数与预设阈值进行比较。
[0014]在其中一个实施例中,所述主键信息包括自增主键;
[0015]所述若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值包括:
[0016]查询所述数据表的主键信息中是否存在自增主键;
[0017]若所述数据表的主键信息中不存在自增主键,则获取所述数据表的主键信息中的主键第一阈值和主键第二阈值;
[0018]若所述数据表的主键信息中存在自增主键,则获取所述数据表的自增主键中的主键第一阈值和主键第二阈值。
[0019]在其中一个实施例中,所述根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据包括:
[0020]根据所述自增主键中的主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据。
[0021]在其中一个实施例中,所述根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据包括:
[0022]根据所述主键信息中的主键第一阈值和主键第二阈值,利用SQL语句对所述主键信息的值域进行分页,得到分页后的数值;
[0023]所述将所述分片数据并行复制到目标数据库中,包括:
[0024]利用所述分页后的数值查询对应的行数据,并将查询到的所述行数据并行复制到目标数据库中。
[0025]在其中一个实施例中,所述响应于复制任务之前,所述方法还包括:
[0026]将预设时间段内的交易数据导入到历史数据库中,并根据所述历史数据库中的每个数据表生成对应的复制任务。
[0027]在其中一个实施例中,所述将所述行数与预设阈值进行比较包括:
[0028]若所述行数不大于预设阈值,则扫描所述数据表,将所述数据表复制到目标数据库中。
[0029]一种数据复制装置,所述装置包括:
[0030]比较模块,用于响应于复制任务,获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较;
[0031]获取模块,用于若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值;其中,主键第一阈值大于主键第二阈值;
[0032]分片模块,用于根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据;
[0033]复制模块,用于将所述分片数据并行复制到目标数据库中。
[0034]一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0035]响应于复制任务,获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较;
[0036]若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值;其中,主键第一阈值大于主键第二阈值;
[0037]根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据;
[0038]将所述分片数据并行复制到目标数据库中。
[0039]一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执
行时实现以下步骤:
[0040]响应于复制任务,获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较;
[0041]若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值;其中,主键第一阈值大于主键第二阈值;
[0042]根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据;
[0043]将所述分片数据并行复制到目标数据库中。
[0044]上述数据复制方法、装置、计算机设备和存储介质,通过响应于复制任务,获取复制任务中目标复制任务对应的数据表的行数,并将行数与预设阈值进行比较。若行数大于预设阈值,则查询数据表的主键信息,并获取主键信息中的主键第一阈值和主键第二阈值,其中,主键第一阈值大于主键第二阈值。根据主键第一阈值和主键第二阈值,对主键信息的值域进行分片,得到对应的分片数据,将分片数据并行复制到目标数据库中。由此,将每个表的复制作为一个任务,多个复制任务并发执行,同时根据表的特征自动选择适配的分片算法,对单表分片后并行复制到目标数据库,即通过分片并行复制的方式有效提高了数据复制的效率。
附图说明
[0045]图1为一个实施例中数据复制方法的应用环境图;
[0046]图2为一个实施例中数据复制方法的流程示意图;
[0047]图3为一个实施例中查询各复制任务对应的数据表的行数步骤的流程示意图;
[0048]图4为一个实施例中若行数大于预设阈值,则查询数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据复制方法,所述方法包括:响应于复制任务,获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较;若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值;其中,主键第一阈值大于主键第二阈值;根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据;将所述分片数据并行复制到目标数据库中。2.根据权利要求1所述的方法,其特征在于,所述响应于复制任务之后,所述方法还包括:查询各所述复制任务对应的数据表的行数,并将所述复制任务按照所述行数从大到小的顺序进行排序处理;所述获取所述复制任务中目标复制任务对应的数据表的行数,并将所述行数与预设阈值进行比较包括:获取已排序的所述复制任务中行数最大的目标复制任务所对应的数据表的行数,并将所述行数与预设阈值进行比较。3.根据权利要求1所述的方法,其特征在于,所述主键信息包括自增主键;所述若所述行数大于预设阈值,则查询所述数据表的主键信息,并获取所述主键信息中的主键第一阈值和主键第二阈值包括:查询所述数据表的主键信息中是否存在自增主键;若所述数据表的主键信息中不存在自增主键,则获取所述数据表的主键信息中的主键第一阈值和主键第二阈值;若所述数据表的主键信息中存在自增主键,则获取所述数据表的自增主键中的主键第一阈值和主键第二阈值。4.根据权利要求3所述的方法,其特征在于,所述根据所述主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据包括:根据所述自增主键中的主键第一阈值和主键第二阈值,对所述主键信息的值域进行分片,得到对应的分片数据。5.根据权利要求1所述的方法,其特征在于...

【专利技术属性】
技术研发人员:禹春雷周基鑫张静华魏猛曹春雨王义开杨栩李功训邹胜苗咏
申请(专利权)人:深圳华锐金融技术股份有限公司
类型:发明
国别省市:

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

1