文件迁移方法、装置、设备、介质和程序产品与流程

文档序号:34065276发布日期:2023-05-06 14:51阅读:25来源:国知局
文件迁移方法、装置、设备、介质和程序产品与流程

本公开涉及信息安全领域,具体地涉及一种文件迁移方法、装置、设备、介质和程序产品。


背景技术:

1、目前,应用程序涉及编译和部署时间较长,这给交付流水线带来了较大的维护压力和生成风险。为了降低协同成本与增强集成效率,需要将各应用中代码提版迁移至预设代码库中的各个目录下。

2、在代码迁移的过程中,存在源代码库的编码格式和目标代码库的编码格式存在不一致的情况,并且,在迁移过程中每个文件都会对应一个迁移任务,巨量的待迁移文件的数量将导致迁移时多迁或少迁,这极大地影响了迁移的效率和周密性。


技术实现思路

1、鉴于上述问题,本公开提供了提高迁移效率和周密性的文件迁移方法、装置、设备、介质和程序产品。

2、根据本公开的第一个方面,提供了一种文件迁移方法,包括:获取配置文件和消息摘要表,所述配置文件包括源库编码、目标库编码和文件映射关系,所述文件映射关系包括多个迁移文件的源库目录和多个迁移文件的目标库目录的映射关系,所述消息摘要表包括所述多个迁移文件中已完成迁移的迁移文件的消息摘要;判断所述迁移文件的所述源库编码和所述目标库编码是否一致;在所述源库编码和所述目标库编码一致的情况下,计算所述迁移文件的消息摘要,得到第一消息摘要;基于所述消息摘要表核对所述第一消息摘要是否已迁移;以及在所述第一消息摘要为未迁移的情况下,基于所述文件映射关系,将所述迁移文件迁移至所述目标库目录。

3、根据本公开的实施例,其中,所述消息摘要表是以key-value形式存储的,所述key包括所述源库目录和所述目标库目录,所述value包括所述消息摘要,所述基于所述消息摘要表核对所述第一消息摘要是否已迁移,包括:核对所述第一消息摘要是否同时存在于所述源库目录的消息摘要中和所述目标库目录的消息摘要中;以及在所述第一消息摘要同时存在于所述源库目录的value中和所述目标库目录的value中的情况下,判定所述第一消息摘要为已迁移。

4、根据本公开的实施例,其中,在所述基于所述文件映射关系,将所述迁移文件迁移至所述目标库目录后,还包括:基于所述源库目录下的所述迁移文件和所述目标库目录下的所述迁移文件,分别生成第二消息摘要和第三消息摘要;校验所述第二消息摘要和所述第三消息摘要是否一致;以及在所述第二消息摘要和所述第三消息摘要一致的情况下,将所述第二消息摘要和所述第三消息摘要,分别存入所述消息摘要表中的所述key为源库目录对应的value中以及所述key为目标库目录对应的value中。

5、根据本公开的实施例,其中,在所述判断所述迁移文件的所述源库编码和所述目标库编码是否一致后,还包括:在所述源库编码和所述目标库编码不一致的情况下,将所述迁移文件转化为中间格式文件;将所述中间格式文件存入第三方区域中;基于所述目标库编码,将所述中间格式文件转化为第二迁移文件;以及基于所述文件映射关系,将所述第二迁移文件迁移至所述目标库目录。

6、根据本公开的实施例,其中,在所述基于所述文件映射关系,将所述第二迁移文件迁移至所述目标库目录后,还包括:生成特殊任务标记,所述特殊任务标记是所述源库编码和所述目标库编码不一致的情况下的任务标记,所述特殊任务标记包括所述源库目录、所述目标库目录以及所述迁移文件的文件名。

7、根据本公开的实施例,其中,所述配置文件还包括目录层级,所述基于所述文件映射关系,将所述迁移文件迁移至所述目标库目录中,包括:按照目录层级由低到高的顺序对所述迁移文件进行迁移;以及在所述目录层级中最高层级小于等于当前层级的情况下,结束迁移。

8、本公开的第二个方面,提供了一种文件迁移装置,包括:迁移信息获取模块,用于获取配置文件和消息摘要表,所述配置文件包括源库编码、目标库编码和文件映射关系,所述文件映射关系包括多个迁移文件的源库目录和多个迁移文件的目标库目录的映射关系,所述消息摘要表包括所述多个迁移文件中已完成迁移的迁移文件的消息摘要;编码校验模块,用于判断所述迁移文件的所述源库编码和所述目标库编码是否一致;摘要生成模块,用于在所述源库编码和所述目标库编码一致的情况下,计算所述迁移文件的消息摘要,得到第一消息摘要;摘要查询模块,用于基于所述消息摘要表核对所述第一消息摘要是否已迁移;以及迁移模块,用于在所述第一消息摘要为未迁移的情况下,基于所述文件映射关系,将所述迁移文件迁移至所述目标库目录。

9、根据本公开的实施例,其中,所述消息摘要表是以key-value形式存储的,所述key包括所述源库目录和所述目标库目录,所述value包括所述消息摘要,所述编码校验模块,用于核对所述第一消息摘要是否同时存在于所述源库目录的消息摘要中和所述目标库目录的消息摘要中;以及在所述第一消息摘要同时存在于所述源库目录的value中和所述目标库目录的value中的情况下,判定所述第一消息摘要为已迁移。

10、根据本公开的实施例,其中,所述装置还包括摘要校验与维护模块,用于基于所述源库目录下的所述迁移文件和所述目标库目录下的所述迁移文件,分别生成第二消息摘要和第三消息摘要;校验所述第二消息摘要和所述第三消息摘要是否一致;以及在所述第二消息摘要和所述第三消息摘要一致的情况下,将所述第二消息摘要和所述第三消息摘要,分别存入所述消息摘要表中的所述key为源库目录对应的value中以及所述key为目标库目录对应的value中。

11、根据本公开的实施例,其中,所述装置还包括异编码迁移模块,用于在所述源库编码和所述目标库编码不一致的情况下,将所述迁移文件转化为中间格式文件;将所述中间格式文件存入第三方区域中;基于所述目标库编码,将所述中间格式文件转化为第二迁移文件;以及基于所述文件映射关系,将所述第二迁移文件迁移至所述目标库目录。

12、根据本公开的实施例,其中,所述装置还包括异编码维护模块,用于生成特殊任务标记,所述特殊任务标记是所述源库编码和所述目标库编码不一致的情况下的任务标记,所述特殊任务标记包括所述源库目录、所述目标库目录以及所述迁移文件的文件名。

13、根据本公开的实施例,其中,所述配置文件还包括目录层级,所述迁移模块,还用于按照目录层级由低到高的顺序对所述迁移文件进行迁移;以及在所述目录层级中最高层级小于等于当前层级的情况下,结束迁移。

14、本公开的第三个方面,提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述文件迁移方法。

15、本公开的第四个方面,还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述文件迁移方法。

16、本公开的第五个方面,还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述文件迁移方法。

17、在本公开的实施例中,在将源库目录下的文件迁移至目标库的过程中,通过核对该迁移文件是否为已迁移状态,可以保证迁移有序地进行,避免重复迁移。进一步地,用以核对的数据采用的是消息摘要的格式,保证了在远端文件迁移的场景下信息核对的安全性,并且,消息摘要相较于原有的迁移文件,所使用的数据量较少,在进行核对时可以减少流量开销,并提升迁移的效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1