掌桥专利:专业的专利平台
掌桥专利
首页

文件迁移方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 19:16:40


文件迁移方法、装置、电子设备及存储介质

技术领域

本发明实施例涉及计算机技术领域,尤其涉及一种文件迁移方法、装置、电子设备及存储介质。

背景技术

文件迁移工具是指通过在线的方式将数据从一个地方迁移至另外一个地方,迁移过程中保持原目录结构不变。

目前常用的文件存储方式一般为本地磁盘存储、对象存储、文件传输协议(FileTransfer Protocol,FTP)存储、安全文件传输协议(SSH File Transfer Protocol,SFTP)存储、网络文件系统(Network File System,NFS)存储、通用互联网文档系统(CommonInternet File System,CIFS)存储等类型。在实际的生产环境中往往存在多种文件存储类型,由于业务变更、系统升级、数据备份等需要,需要将文件从某一种文件存储类型迁移至另外一种存储类型,实际操作中的数据迁移方案往往非常复杂,耗费大量的人力和时间成本。

发明内容

本申请提供了一种文件迁移方法、装置、电子设备及存储介质,以解决现有技术中全部或者部分的问题。

第一方面,本申请提供了一种文件迁移方法,该方法包括:

获取文件迁移指令;

对文件迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式;

根据迁移信息标识确定第一迁移接口以及第二迁移接口;

根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合;

当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移方式,对待迁移文件进行迁移处理。

通过该方式,获取文件迁移指令;对文件迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式;根据迁移信息标识确定第一迁移接口以及第二迁移接口;根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合;当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移方式,对待迁移文件进行迁移处理。可以将不同存储类型的迁移方法分别进行封装,每个迁移方法对应一个迁移信息标识,在有迁移的需求时,将迁移信息标识以及其他迁移条件通过迁移指令进行下发,根据迁移指令中的迁移信息标识确定对应的迁移方法接口(第一迁移接口和第二迁移接口),完成迁移任务,可以只利用接口暴露的方法进行数据迁移,不涉及具体的方法实现,将管理、执行和抽象接口分层次设计也让系统更方便的扩展功能,避免人为迁移造成的操作失误,更加可靠,而且可以方便的扩展更多的存储类型,极大的节省了人力资源和时间成本。

结合第一方面,在本发明第一方面的第一实施例中,根据迁移信息标识确定第一迁移接口以及第二迁移接口,包括:

根据迁移信息标识从至少一个预构建的迁移方法中确定迁移信息标识对应的迁移方法;

根据迁移方法确定迁移方法对应的第一迁移接口以及第二迁移接口。

结合第一方面或者第一方面的第一实施例,在本发明第一方面的第二实施例中,根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,具体包括:

根据第一迁移接口从来源地址获取待迁移文件的第一文件信息;

根据第二迁移接口从来源地址获取待迁移文件的第一文件元信息;

根据第一文件信息以及第一文件元信息,构建第一文件信息组合。

结合第一方面或者第一方面的第一实施例,在本发明第一方面的第三实施例中,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合,具体包括:

根据第一迁移接口从目标地址获取与待迁移文件对应的第二文件信息;

根据第二迁移接口从目标地址获取与第二文件信息对应的第二文件元信息;

根据第二文件信息和第二文件元信息,构建第二文件信息组合。

结合第一方面,在本发明第一方面的第四实施例中,文件迁移方式包括以下的一种或者多种:

移动文件或者复制文件。

结合第一方面或者第一方面的第一实施例或者第一方面的第四实施例,在本发明第一方面的第五实施例中,获取文件迁移指令之前,方法还包括:

设定迁移时间;

当达到迁移时间时,开始获取文件迁移指令。

通过该方式,可以灵活设定迁移时间,体验更佳。

第二方面,本申请提供了一种文件迁移装置,该装置包括:获取模块、解析模块、确定模块、处理模块以及迁移模块;

获取模块,用于获取文件迁移指令;

解析模块,用于对文件迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式;

确定模块,用于根据迁移信息标识确定第一迁移接口以及第二迁移接口;

处理模块,用于根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合;

迁移模块,用于当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移方式,对待迁移文件进行迁移处理。

可选的,该装置包括:

确定模块,还用于根据迁移信息标识从至少一个预构建的迁移方法中确定迁移信息标识对应的迁移方法;根据迁移方法确定迁移方法对应的第一迁移接口以及第二迁移接口。

可选的,该装置还包括:构建模块;

处理模块,还用于根据第一迁移接口从来源地址获取待迁移文件的第一文件信息;根据第二迁移接口从来源地址获取待迁移文件的第一文件元信息;

构建模块,用于根据第一文件信息以及第一文件元信息,构建第一文件信息组合。

可选的,该装置包括:

处理模块,还用于根据第一迁移接口从目标地址获取与待迁移文件对应的第二文件信息;根据第二迁移接口从目标地址获取与第二文件信息对应的第二文件元信息;

构建模块,还用于根据第二文件信息和第二文件元信息,构建第二文件信息组合。

可选的,迁移模块中的迁移方式具体包括:移动文件或者复制文件。

可选的,该装置还包括:设定模块;

设定模块,用于设定迁移时间;

处理模块,还用于当达到迁移时间时,开始获取文件迁移指令。

第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例的文件迁移方法的步骤。

第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如第一方面任一项实施例的文件迁移方法的步骤。

附图说明

图1为本发明实施例提供的一种文件迁移方法流程示意图;

图2为本发明实施例提供的一种文件迁移方法的实现实例示意图;

图3为本发明实施例提供的另一种文件迁移方法流程示意图;

图4为本发明实施例提供的一种文件迁移装置结构示意图;

图5为本发明实施例提供一种电子设备结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为便于对本发明实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明实施例的限定。

针对背景技术中所提及的技术问题,本申请实施例提供了一种文件迁移方法,具体参见图1所示,图1为本发明实施例提供的一种文件迁移方法流程示意图,该方法步骤包括:

步骤110,获取文件迁移指令。

步骤120,对文件迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式。

具体的,文件迁移指令可以通过网络请求的方式下发,可以通过页面触发或者接口触发,通过对文件迁移指令进行解析,可获取文件迁移指令中包括的待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式。因为文件的存储方式有多种,例如本地磁盘存储,对象存储,FTP存储,SFTP存储等类型,可以在底层代码针对每种存储类型的迁移方法分别进行实现,如此,每种存储类型则分别具有了对应的实现实例,每个实现实例具有不同的迁移信息标识,将所有的实现实例封装在统一的对外操作接口中以备调用,在调用时,只需在迁移指令中将目标迁移地址的存储类型对应的迁移信息标识进行透传即可,同时,还可以指定迁移方式,在一个可选的例子中,迁移方式包括移动文件或者复制文件。

在一个可选的例子中,例如可以设定一套通用性的文件操作抽象接口,在底层针对本地存储、对象存储、FTP存储、SFTP存储、NFS存储、CIFS存储、简单服务存储(SimpleStorage Service,S3)等存储类型分别针对该接口实现对应的实现实例(迁移方法),可以将实现实例的方法名称作为迁移信息标识,根据实际需求,也可以根据实现实例的ID作为迁移信息标识,在此不做过多限定,实现实例中的迁移操作可以如图2中所示,首先在文件系统(filesystem)中列取文件,读取文件元信息,根据列取出的文件信息和读取的文件元信息确定待迁移的文件信息,根据文件信息从源地址读取文件,按照源地址中待迁移文件的目录格式,在目标地址中对应的文件夹中写入文件。

步骤130,根据迁移信息标识确定第一迁移接口以及第二迁移接口。

具体的,在一个可选的实施例中,根据迁移信息标识确定第一迁移接口以及第二迁移接口,包括:

根据迁移信息标识从至少一个预构建的迁移方法中确定迁移信息标识对应的迁移方法;

根据迁移方法确定迁移方法对应的第一迁移接口以及第二迁移接口。

具体的,迁移方法即与存储类型分别对应的实现实例,迁移信息标识为实现实例的唯一标识,因此,可以根据迁移信息标识从多个已实现的迁移方法中确定该迁移信息标识对应的迁移方法,每个迁移方法中对应实现有两个接口,则可根据迁移方法确定与迁移方法对应的第一迁移接口以及第二迁移接口。

步骤140,根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合。

具体的,第一迁移接口用于获取待迁移文件的文件信息,第二迁移接口用于获取待迁移文件的文件元信息,以保证迁移文件信息的完整和准确。

在一种可选的实施例中,根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,包括:

根据第一迁移接口从来源地址获取待迁移文件的第一文件信息;

根据第二迁移接口从来源地址获取待迁移文件的第一文件元信息;

根据第一文件信息以及第一文件元信息,构建第一文件信息组合。

具体的,第一迁移接口为列取文件信息接口,用于获取待迁移文件的第一文件信息,第一文件信息包括待迁移文件的目录信息以及目录下的文件,例如可以封装一个文件列取接口,用于读取每种存储类型的文件目录以及目录下的文件。

第二迁移接口为读取文件元信息接口,用于获取待迁移文件的第一文件元信息,包括文件的创建时间、文件大小、修改时间等信息。

将第一文件信息以及第一文件元信息进行组合,即为第一文件信息组合。

为了避免将已经迁移或者已经在目标地址存在的文件进行重复迁移,浪费系统资源,可以同样根据第一迁移接口和第二迁移接口从目的地址读取文件信息,查看是否已被迁移或者已在目标地址存在同样的文件信息。

因此,在一种可选的实施例中,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合,具体包括:

根据第一迁移接口从目标地址获取与待迁移文件对应的第二文件信息;

根据第二迁移接口从目标地址获取与第二文件信息对应的第二文件元信息;

根据第二文件信息和第二文件元信息,构建第二文件信息组合。

具体的,根据第一迁移接口即列取文件接口,从目标地址中根据待迁移文件的文件名称或者文本标识等信息读取第二文件信息,若目标地址中存在与待迁移的文件一致的文件,则被读取,若不存在,则读取信息为零,根据第二迁移接口即读取文件元信息接口,读取与第二文件信息对应的文件元信息,若第二文件信息为零,则第二文件元信息为零,将第二文件信息与第二文件元信息进行组合,即为第二文件信息组合。

步骤150,当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移方式,对待迁移文件进行迁移处理。

具体的,将第一文件信息组合与第二文件信息组合进行比对,若一致,表明目标地址已存在相同文件,无需进行迁移操作,若不一致,则根据迁移指令中的迁移方式,将待迁移的文件读取的信息组合,即第一文件信息组合迁移至目标地址,迁移方式可以包括移动文件或者复制文件。

在一个具体的实施例中,如图3所示,可以开发一个迁移工具,任务管理模块用于实现迁移任务指令下发,即分配任务,配置管理可以管理不同类型的存储类型的迁移实现实例,当出现新的存储类型需求时,可以直接在配置管理里进行添加即可,日志管理用于管理迁移日志,查看迁移进度或者程序错误信息等,迁移执行模块即本方法的执行模块,接收迁移指令后,根据迁移指令中的迁移信息标识确定迁移实现实例,然后从来源地址读取文件信息,并将文件信息写入目标地址,读取和写入的操作均有实现实例中的迁移接口完成,即列取文件接口和读取文件元信息接口,然后执行读取文件以及写入文件的操作。

在一种优选的实施例中,为了更加灵活的执行迁移任务,例如在服务器利用率较低时执行迁移任务,在服务器利用率较高,需处理其他业务时不执行迁移任务,还可以设定迁移时间,具体包括:

设定迁移时间;

当达到迁移时间时,开始获取文件迁移指令。

具体的,例如在图3所示的由迁移工具执行的迁移流程图中,在任务管理模块设定迁移的定时任务,当达到定时任务设定的时间时,开始获取迁移指令,执行迁移任务。如此,可以灵活设定迁移时间,拥有更佳的用户体验。

本发明实施例提供的文件迁移方法,获取文件迁移指令;对文件迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式;根据迁移信息标识确定第一迁移接口以及第二迁移接口;根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合;当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移方式,对待迁移文件进行迁移处理。可以将不同存储类型的迁移方法分别进行封装,每个迁移方法对应一个迁移信息标识,在有迁移的需求时,将迁移信息标识以及其他迁移条件通过迁移指令进行下发,根据迁移指令中的迁移信息标识确定对应的迁移方法接口(第一迁移接口和第二迁移接口),完成迁移任务,可以只利用接口暴露的方法进行数据迁移,不涉及具体的方法实现,将管理、执行和抽象接口分层次设计也让系统更方便的扩展功能,避免人为迁移造成的操作失误,更加可靠,而且可以方便的扩展更多的存储类型,极大的节省了人力资源和时间成本。

以上,为本申请所提供的文件迁移方法实施例,下文中则介绍说明本申请所提供的文件迁移其他实施例,具体参见如下。

图4为本发明实施例提供的一种文件迁移装置,该装置包括:获取模块401、解析模块402、确定模块403、处理模块404以及迁移模块405;

获取模块401,用于获取文件迁移指令;

解析模块402,用于对文件迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式;

确定模块403,用于根据迁移信息标识确定第一迁移接口以及第二迁移接口;

处理模块404,用于根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合;

迁移模块405,用于当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移方式,对待迁移文件进行迁移处理。

可选的,该装置包括:

确定模块403,还用于根据迁移信息标识从至少一个预构建的迁移方法中确定迁移信息标识对应的迁移方法;根据迁移方法确定迁移方法对应的第一迁移接口以及第二迁移接口。

可选的,该装置还包括:构建模块406;

处理模块404,还用于根据第一迁移接口从来源地址获取待迁移文件的第一文件信息;根据第二迁移接口从来源地址获取待迁移文件的第一文件元信息;

构建模块406,用于根据第一文件信息以及第一文件元信息,构建第一文件信息组合。

可选的,该装置包括:

处理模块404,还用于根据第一迁移接口从目标地址获取与待迁移文5件对应的第二文件信息;根据第二迁移接口从目标地址获取与第二文件信

息对应的第二文件元信息;

构建模块406,还用于根据第二文件信息和第二文件元信息,构建第二文件信息组合。

可选的,迁移模块中的迁移方式具体包括:移动文件或者复制文件。0可选的,该装置还包括:设定模块407;

设定模块407,用于设定迁移时间;

处理模块404,还用于当达到迁移时间时,开始获取文件迁移指令。

本发明实施例提供的文件迁移装置中各部件所执行的功能均已在上述任一方法实施例中做了详细的描述,因此这里不再赘述。

5本发明实施例提供的一种文件迁移装置,获取文件迁移指令;对文件

迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式;根据迁移信息标识确定第一迁移接口以及第二迁移接口;

根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,

以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息0组合;当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移

方式,对待迁移文件进行迁移处理。可以将不同存储类型的迁移方法分别进行封装,每个迁移方法对应一个迁移信息标识,在有迁移的需求时,将迁移信息标识以及其他迁移条件通过迁移指令进行下发,根据迁移指令中

的迁移信息标识确定对应的迁移方法接口(第一迁移接口和第二迁移接口),5完成迁移任务,可以只利用接口暴露的方法进行数据迁移,不涉及具体的方法实现,将管理、执行和抽象接口分层次设计也让系统更方便的扩展功能,避免人为迁移造成的操作失误,更加可靠,而且可以方便的扩展更多的存储类型,极大的节省了人力资源和时间成本。

如图5所示,本申请实施例提供了一种电子设备,包括处理器111、通信接口112、存储器113和通信总线114,其中,处理器111,通信接口112,存储器113通过通信总线114完成相互间的通信。

存储器113,用于存放计算机程序;

在本申请一个实施例中,处理器111,用于执行存储器113上所存放的程序时,实现前述任意一个方法实施例提供的文件迁移方法,包括:

获取文件迁移指令;

对文件迁移指令进行解析,获取待迁移文件的来源地址、目标地址、迁移信息标识以及迁移方式;

根据迁移信息标识确定第一迁移接口以及第二迁移接口;

根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,以及,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合;

当第一文件信息组合与第二文件信息组合对比不一致时,根据迁移方式,对待迁移文件进行迁移处理。

可选的,根据迁移信息标识确定第一迁移接口以及第二迁移接口,包括:

根据迁移信息标识从至少一个预构建的迁移方法中确定迁移信息标识对应的迁移方法;

根据迁移方法确定迁移方法对应的第一迁移接口以及第二迁移接口。

可选的,根据第一迁移接口以及第二迁移接口从来源地址获取第一文件信息组合,具体包括:

根据第一迁移接口从来源地址获取待迁移文件的第一文件信息;

根据第二迁移接口从来源地址获取待迁移文件的第一文件元信息;

根据第一文件信息以及第一文件元信息,构建第一文件信息组合。

可选的,根据第一迁移接口以及第二迁移接口从目标地址获取第二文件信息组合,具体包括:

根据第一迁移接口从目标地址获取与待迁移文件对应的第二文件信息;

根据第二迁移接口从目标地址获取与第二文件信息对应的第二文件元信息;

根据第二文件信息和第二文件元信息,构建第二文件信息组合。

可选的,文件迁移方式包括以下的一种或者多种:

移动文件或者复制文件。

可选的,获取文件迁移指令之前,方法还包括:

设定迁移时间;

当达到迁移时间时,开始获取文件迁移指令。

本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如前述任意一个方法实施例提供的文件迁移方法的步骤。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

相关技术
  • 文件迁移方法、装置、计算机设备及存储介质
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 电子设备控制方法及装置、电子设备及存储介质
  • 数据分布存储方法、装置、存储介质及电子设备
  • 存储清理方法、装置、电子设备及存储介质
  • 文件迁移方法、装置、存储介质及电子设备
  • 一种文件迁移方法、装置、存储介质及电子设备
技术分类

06120115849647