本申请涉及分布式数据,具体涉及一种分布式应用程序数据迁移方法、装置、服务器及存储介质。
背景技术:
1、目前分布式应用程序协调服务(zookeeper,zk)的使用模式通常包括云上购买的标准zk模式,和用户购买云服务器(cloud virtual machine,cvm)私搭模式或者传统互联网数据中心(internet data center,idc)的搭建模式。
2、而zk高低版本特性、存在兼容性问题,当底板版zk升级至高版本zk时,可能导致高版本zk无法启动,因此需解决低版本升级标准镜像的数据迁移问题。
技术实现思路
1、本申请提供一种分布式应用程序数据迁移方法、装置、服务器及存储介质、旨在解决现有技术中,低版本分布式应用程序的数据迁移至高版本分布式应用程序时,出现异常导致数据迁移失败的问题。
2、一方面,本申请提供一种分布式应用程序数据迁移方法,所述方法包括:
3、获取第一版本的分布式应用程序对应的第一数据;
4、判断所述第一数据中是否包括快照日志文件;
5、若所述第一数据中不包括所述快照日志文件,则获取第二版本的分布式应用程序对应的初始快照日志文件;
6、将所述初始快照文件和所述第一数据存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的数据目录,完成数据迁移;
7、其中,所述第一版本的分布式应用程序进行版本升级后得到所述第二版本的分布式应用程序。
8、在本申请一种可能的实现方式中,所述将第一数据存储至目标数据目录下的方式为,复制所述第一数据至所述目标数据目录下,在将所述第一数据存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的数据目录,完成数据迁移之前,所述方法还包括:
9、获取并校验预设初始分布式应用程序;
10、获取所述第二版本的分布式应用程序对应的应用程序配置文件,以根据所述应用程序配置文件和所述初始分布式应用程序,得到所述第二版本的初始分布式应用程序。
11、在本申请一种可能的实现方式中,所述应用程序配置文件包括所述第一版本的分布式应用程序对应的第一版本号,和所述第二版本的分布式应用程序对应的第二版本号;
12、所述方法还包括:
13、根据所述第一版本号和所述第二版本号建立第一数据目录和目标数据目录;
14、将所述第一数据进行备份并存储在所述第一数据目录下。
15、在本申请一种可能的实现方式中,在将所述初始快照文件存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的目标数据目录,完成数据迁移之前,所述方法还包括:
16、备份所述应用程序配置文件,并存储在所述目标数据目录下。
17、在本申请一种可能的实现方式中,在将所述初始快照文件和所述第一数据存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的数据目录,完成数据迁移之前,所述方法还包括:
18、获取所述第二版本的分布式应用程序对应的标准镜像参数;
19、根据所述标准镜像参数对所述第二版本的初始分布式应用程序进行处理,得到所述第二版本的分布式应用程序。
20、在本申请一种可能的实现方式中,所述根据所述标准镜像参数对所述第二版本的初始分布式应用程序进行处理,得到所述第二版本的分布式应用程序,包括:
21、利用预设程序开发工具,创建并覆盖所述第二版本的初始分布式应用程序中的原始镜像参数,得到所述标准镜像参数;
22、利用所述标准镜像参数对所述第二版本的初始分布式应用程序进行处理,以得到包括所述标准镜像参数的第二版本的分布式应用程序。
23、在本申请一种可能的实现方式中,所述方法还包括:
24、若所述第一版本的分布式应用程序的数据迁移至第二版本的分布式应用程序失败,将所述第二版本的分布式应用程序的应用程序配置文件和标准镜像参数,调换为所述第一版本的分布式应用程序对应的应用程序配置参数和标准镜像参数。
25、另一方面,本申请提供一种分布式应用程序数据迁移装置,所述装置包括:
26、第一获取模块,用于获取第一版本的分布式应用程序对应的第一数据;
27、判断模块,用于判断所述第一数据中是否包括快照日志文件;
28、第二获取模块,用于若所述第一数据中不包括所述快照日志文件,则获取第二版本的分布式应用程序对应的初始快照日志文件;
29、数据迁移模块,用于将所述初始快照文件和所述第一数据存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的数据目录,完成数据迁移;
30、其中,所述第一版本的分布式应用程序进行版本升级后得到所述第二版本的分布式应用程序。
31、另一方面,本申请还提供一种服务器,所述服务器包括:
32、一个或多个处理器;
33、存储器;以及
34、一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现所述的分布式应用程序数据迁移方法。
35、另一方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行所述的分布式应用程序数据迁移方法中的步骤。
36、本申请提供一种分布式应用程序数据迁移方法、装置、服务器及存储介质,首先获取较低版本的第一版本的分布式应用程序对应的第一数据,并判断第一数据中是否包括快照日志文件;若不包括快照日志文件,则获取高版本的第二版本的分布式应用程序对应的初始快照日志文件,并将初始快照日志文件存储在第二版本的分布式应用程序的目标数据目录下,使得第二版本的分布式应用程序中存在快照日志文件,从而可以正常启动高版本的第二版本的分布式应用程序,实现数据的迁移。本申请通过获取高版本分布式应用程序对应的初始快照日志文件,以避免版本升级时低版本分布式应用程序没有快照日志文件,导致数据迁移后无法启动高版本分布式应用程序,从而导致数据迁移失败的问题。
1.一种分布式应用程序数据迁移方法,其特征在于,所述方法包括:
2.根据权利要求1所述的分布式应用程序数据迁移方法,其特征在于,所述将第一数据存储至目标数据目录下的方式为,复制所述第一数据至所述目标数据目录下,在将所述第一数据存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的数据目录,完成数据迁移之前,所述方法还包括:
3.根据权利要求2所述的分布式应用程序数据迁移方法,其特征在于,所述应用程序配置文件包括所述第一版本的分布式应用程序对应的第一版本号,和所述第二版本的分布式应用程序对应的第二版本号;
4.根据权利要求2或3所述的分布式应用程序数据迁移方法,其特征在于,在将所述初始快照文件存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的目标数据目录,完成数据迁移之前,所述方法还包括:
5.根据权利要求1所述的分布式应用程序数据迁移方法,其特征在于,在将所述初始快照文件和所述第一数据存储至目标数据目录下,所述目标数据目录为第二版本的分布式应用程序的数据目录,完成数据迁移之前,所述方法还包括:
6.根据权利要求5所述的分布式应用程序数据迁移方法,其特征在于,所述根据所述标准镜像参数对所述第二版本的初始分布式应用程序进行处理,得到所述第二版本的分布式应用程序,包括:
7.根据权利要求1所述的分布式应用程序数据迁移方法,其特征在于,所述方法还包括:
8.一种分布式应用程序数据迁移装置,其特征在于,所述装置包括:
9.一种服务器,其特征在于,所述服务器包括:
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的分布式应用程序数据迁移方法中的步骤。