Redis数据库迁移系统、方法和电子设备与流程

文档序号:34448365发布日期:2023-06-13 12:34阅读:31来源:国知局
Redis数据库迁移系统、方法和电子设备与流程

本发明涉及数据迁移技领域,特别是涉及一种redis数据库迁移系统、方法和电子设备。


背景技术:

1、redis是一个开源的高性能键值对数据库,它通过提供多种键值数据类型来适应不同场景下的存储需求,并借助许多高层级的接口使其可以胜任如缓存、队列系统等不同的角色。redis数据库应用广泛,可应用的业务场景类型多样,因此redis数据库的环境配置也存在多样性。业务服务过程中,常常因为多种原因,需要将redis数据库内的数据进行内部或外部的迁移。不同的迁移需求、不同的数据库配置之间,需要选用不同的数据迁移工具及命令算法。然而,现有技术中,在进行redis数据库迁移时,往往需要技术人员逐一检测数据库的类型及配置,并根据迁移需求,挨个设计迁移方案,并分别装载相应的软件工具来执行数据迁移操作,耗费大量人力物力和时间,工作效率低,还存在较高的出现故障的可能性,且在数据库迁移后没有足够全面地检测迁移效果,迁移过程出现错误时也需通过人工检测及处理。然而,目前却没有可适用于多种数据库类型的高效的redis数据库迁移系统。


技术实现思路

1、针对上述技术问题,本发明采用的技术方案为:

2、本发明实施例提供一种redis数据库迁移系统,所述系统包括:通信连接的处理器和存储器,所述存储器中存储有配置文件;所述处理器与一个或多个显示装置通信连接,用于执行计算机程序,基于所述配置文件在所述显示装置上显示配置页面,所述配置页面用于供用户配置迁移信息,所述迁移信息至少包括数据库的id、环境信息、连接端口、源数据库中需要迁移的数据、迁移所需要的线程、迁移工具、检测工具、检测次数和检测精度;

3、所述处理器还用于执行计算机程序,以实现如下步骤:

4、s100,基于获取的源数据库和目标数据库的id和连接端口,选择对应的对接端口分别与对应的源数据库和目标数据库进行通信连接;

5、s200,基于获取的迁移所需要的线程为当前迁移任务分配对应的线程并基于获取的需要迁移的数据,为每个线程分配需要迁移的数据量,以及基于获取的环境信息为当前迁移任务选择对应的迁移方式;

6、s300,基于获取的需要迁移的数据从对应的源数据库获取对应的数据进行备份,得到备份数据,并分配给对应的线程;

7、s400,对于每个线程,利用当前迁移任务对应的迁移工具基于选择的迁移方式将对应的数据向所述目标数据库进行迁移,并在迁移过程中,实时获取源数据库中的变化数据,并进行存储;

8、s500,在检测到备份数据迁移完后,从存储的数据中获取与需要迁移的数据对应的变化数据并分配给对应的线程并向所述目标数据库进行迁移;执行s600;

9、s600,如果检测到源数据库中没有需要继续迁移的数据,执行s700;否则,从存储的数据中获取与需要迁移的数据对应的变化数据并分配给对应的线程并向所述目标数据库进行迁移,并执行s600;

10、s700,基于获取的检测次数和检测精度,利用当前迁移任务对应的检测工具对源数据库中需要迁移的数据和迁入目标数据库中的数据的一致性进行检测,如果一致,则退出控制程序,否则,执行s800;

11、s800,从源数据库中获取不一致的数据并分配给对应的线程并迁移到所述目标数据库中,并在迁移之后退出控制程序。

12、本发明另一实施例提供一种redis数据库迁移方法,所述方法包括:

13、s10,获取迁移信息,所述迁移信息至少包括数据库的id、环境信息、连接端口、源数据库中需要迁移的数据、迁移所需要的线程、迁移工具、检测工具、检测次数和检测精度;

14、s20,基于获取的迁移信息执行相应的迁移操作;

15、s20具体包括:

16、s201,基于获取的源数据库和目标数据库的id和连接端口,选择对应的对接端口分别与对应的源数据库和目标数据库进行通信连接;

17、s202,基于获取的迁移所需要的线程为当前迁移任务分配对应的线程并基于获取的需要迁移的数据,为每个线程分配需要迁移的数据量,以及基于获取的环境信息为当前迁移任务选择对应的迁移方式;

18、s203,基于获取的需要迁移的数据从对应的源数据库获取对应的数据进行备份,得到备份数据,并分配给对应的线程;

19、s204,对于每个线程,利用当前迁移任务对应的迁移工具基于选择的迁移方式将对应的数据向所述目标数据库进行迁移,并在迁移过程中,实时获取源数据库中的变化数据,并进行存储;

20、s205,在检测到备份数据迁移完后,从存储的数据中获取与需要迁移的数据对应的变化数据并分配给对应的线程并向所述目标数据库进行迁移;执行s206;

21、s206,如果检测到源数据库中没有需要继续迁移的数据,执行s207;否则,从存储的数据中获取与需要迁移的数据对应的变化数据并分配给对应的线程并向所述目标数据库进行迁移,并执行s206;

22、s207,基于获取的检测次数和检测精度,利用当前迁移任务对应的检测工具对源数据库中需要迁移的数据和迁入目标数据库中的数据的一致性进行检测,如果一致,则退出控制程序,否则,执行s208;

23、s208,从源数据库中获取不一致的数据并分配给对应的线程并迁移到所述目标数据库中,并在迁移之后退出控制程序。

24、本发明另一实施例提供一种电子设备,包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述处理器用于执行所述至少一条指令或所述至少一段程序以实现权前述的方法。

25、本发明至少具有以下有益效果:

26、本发明能够在进行redis数据库迁移时,能够自动检测数据库的类型及配置,并根据迁移需求,自动设计迁移方案,并自动装载相应的软件工具来执行数据迁移操作,能够节约时间,提高迁移效率,并且在数据库迁移后会自动检测迁移效果,能够确保迁移准确性。



技术特征:

1.一种redis数据库迁移系统,其特征在于,所述系统包括:通信连接的处理器和存储器,所述存储器中存储有配置文件;所述处理器与一个或多个显示装置通信连接,用于执行计算机程序,基于所述配置文件在所述显示装置上显示配置页面,所述配置页面用于供用户配置迁移信息,所述迁移信息至少包括数据库的id、环境信息、连接端口、源数据库中需要迁移的数据、迁移所需要的线程、迁移工具、检测工具、检测次数和检测精度;

2.根据权利要求1所述的系统,其特征在于,所述需要迁移的数据包括源数据库中的部分数据和全部数据。

3.根据权利要求2所述的系统,其特征在于,在s400中,如果获取的需要迁移的数据为源数据库中的部分数据,则需要迁移的数据对应的变化数据为所述部分数据中发生变化的数据,如果获取的需要迁移的数据为源数据库中的全部数据,则需要迁移的数据对应的变化数据包括上一次迁移的数据中发生变化的数据和当前源数据库中新加入的数据。

4.根据权利要求1所述的系统,其特征在于,所述检测精度包括检测数据的id、检测数据的数据值以及检测数据的id和数据值。

5.根据权利要求1所述的系统,其特征在于,所述处理器还用于执行计算机程序,以实现如下步骤

6.根据权利要求1所述的系统,其特征在于,所述数据库的环境信息至少包括架构、版本、数据量大小、数据容量、业务场景、操作系统版本。

7.根据权利要求1所述的系统,其特征在于,所述迁移方式至少包括平滑迁移方式、异构迁移方式和持久化迁移方式。

8.根据权利要求1所述的系统,其特征在于,所述对接端口至少包括中间件的端口和redis-server的端口。

9.一种redis数据库迁移方法,其特征在于,所述方法包括:

10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述处理器用于执行所述至少一条指令或所述至少一段程序以实现权利要求9中所述的方法。


技术总结
本发明提供了一种Redis数据库迁移系统,所述系统包括:通信连接的处理器和存储器,所述存储器中存储有配置文件;所述处理器与一个或多个显示装置通信连接,用于执行计算机程序,基于所述配置文件在所述显示装置上显示配置页面,所述配置页面用于配置迁移信息,所述迁移信息至少包括数据库的ID、环境信息、连接端口、源数据库中需要迁移的数据、迁移所需要的线程、迁移工具、检测工具、检测次数和检测精度;所述处理器还用于根据获取的迁移信息执行相应的迁移操作。本发明还提供一种Redis数据库迁移方法和电子设备。本发明能够节约时间,提高迁移效率,并且在数据库迁移后会自动检测迁移效果,能够确保迁移准确性。

技术研发人员:陈栋,魏兴华,李建辉,张文件,罗春,李春,张彦东,吴炎,臧冰凌
受保护的技术使用者:杭州沃趣科技股份有限公司
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1