CN111142788B - 一种数据迁移方法、装置和计算机可读存储介质 - Google Patents

一种数据迁移方法、装置和计算机可读存储介质 Download PDF

Info

Publication number
CN111142788B
CN111142788B CN201911204966.6A CN201911204966A CN111142788B CN 111142788 B CN111142788 B CN 111142788B CN 201911204966 A CN201911204966 A CN 201911204966A CN 111142788 B CN111142788 B CN 111142788B
Authority
CN
China
Prior art keywords
migration
file
target
task
files
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911204966.6A
Other languages
English (en)
Other versions
CN111142788A (zh
Inventor
王帅阳
孟祥瑞
李文鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201911204966.6A priority Critical patent/CN111142788B/zh
Publication of CN111142788A publication Critical patent/CN111142788A/zh
Priority to PCT/CN2020/103695 priority patent/WO2021103596A1/zh
Application granted granted Critical
Publication of CN111142788B publication Critical patent/CN111142788B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种数据迁移方法,包括:获取目标迁移文件;根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;根据迁移个数向客户端发送目标迁移文件的迁移任务,以便客户端根据迁移任务对目标迁移文件进行并发迁移;其中,当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。本申请通过设置预留IO供用户缓冲使用,快速清理快速池提升存储系统整体性能的同时,不影响用户使用;通过利用当前系统空闲IO的属性确定并发迁移的迁移个数,自适应的调整并发迁移的迁移个数,提高数据迁移效率。本申请同时还提供的数据迁移装置、电子设备和计算机可读存储介质,均具有上述有益效果。

Description

一种数据迁移方法、装置和计算机可读存储介质
技术领域
本申请涉及数据存储技术领域,特别涉及一种数据迁移方法、数据迁移装置、电子设备和计算机可读存储介质。
背景技术
对于分布式文件系统,按照文件顺序对分级文件数据进行数据迁移,若当前文件的数据迁移完成后,才继续进行下一个文件的数据迁移,因此,导致文件迁移效率低下,数据迁移消耗周期长,快速池内数据不能及时迁移至低速池,影响整个存储系统的性能,针对此问题相关技术是增加并发迁移,配置固定的并发迁移数,但是此方案难以适配现场所有场景,例如在高并发迁移时会影响用户的IO操作;用户低IO操作时,迁移速度受自生并发迁移数配置限制,文件迁移效率较低。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本申请的目的是提供一种数据迁移方法、数据迁移装置、电子设备和计算机可读存储介质,能够提高数据迁移效率。其具体方案如下:
本申请公开了一种数据迁移方法,包括:
获取目标迁移文件;
根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;
根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移;
其中,所述当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。
可选的,所述根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数,包括:
根据系统空闲iops与预设的每个文件迁移任务需要的迁移iops,确定第一迁移个数;
根据系统剩余聚合带宽与预设的每个文件迁移任务需要的迁移聚合带宽,确定第二迁移个数;
确定所述第一迁移个数与所述第二迁移个数中最小的数值作为所述迁移个数。
可选的,所述根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,包括:
判断当前正在执行的所有的待迁移文件的数量是否小于所述迁移个数;
若小于所述迁移个数,则向所述客户端发送所述目标迁移文件的所述迁移任务;
若大于所述迁移个数,则进行等待,直至所有的所述待迁移文件的数量小于所述迁移个数,并向所述客户端发送所述目标迁移文件的所述迁移任务。
可选的,所述若大于所述迁移个数,则进行等待,直至所有的所述待迁移文件的数量小于所述迁移个数,并向所述客户端发送所述目标迁移文件的所述迁移任务,包括:
当完成一个待迁移文件时,根据当前系统空闲IO的属性确定并发迁移的新的迁移个数;
若所有的所述待迁移文件的数量小于所述新的迁移个数,则向所述客户端发送所述目标迁移文件的所述迁移任务。
可选的,还包括:
定时扫描待迁移文件;
对应的,所述根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移之后,还包括:
判断所述待迁移文件是否完成并发迁移;
若完成,则停止扫描,其中,所述待迁移文件包括目标迁移文件。
可选的,所述根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移之后,还包括:
当所述目标迁移文件并发迁移完成后,记录所述目标迁移文件的处理信息。
可选的,所述预留IO是系统最大IO的20%。
本申请提供一种数据迁移装置,包括:
目标迁移文件获取模块,用于获取目标迁移文件;
迁移个数调整模块,用于根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;
迁移任务下发模块,用于根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移;
其中,所述当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。
本申请提供一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述数据迁移方法的步骤。
本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述数据迁移方法的步骤。
本申请提供一种数据迁移方法,包括:获取目标迁移文件;根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;根据迁移个数向客户端发送目标迁移文件的迁移任务,以便客户端根据迁移任务对目标迁移文件进行并发迁移;其中,当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。
可见,本申请将系统最大IO分配为当前系统剩余IO、用户实际占用IO和预留IO,预留IO供用户缓冲使用,快速清理快速池提升存储系统整体性能的同时,设置的预留IO不影响用户使用;通过利用当前系统空闲IO的属性确定并发迁移的迁移个数,自适应的调整并发迁移的迁移个数,提升了文件迁移速度,根据迁移个数向客户端发送目标迁移文件的迁移任务,在此过程中采用了异步数据存储的方式,避免了相关技术通过同步数据存储的方式造成的迁移效率低、迁移周期长的缺点,提高数据迁移效率。
本申请同时还提供的一种数据迁移装置、电子设备和计算机可读存储介质,均具有上述有益效果,在此不再进行赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种数据迁移方法的流程图;
图2为本申请实施例提供的一种存储系统IO分配示意图;
图3为本申请实施例提供的一种迁移个数确定的流程示意图;
图4为本申请实施例所提供的一种迁移任务下发的流程图;
图5为本申请实施例提供的一种具体的数据迁移方法;
图6为本申请实施例所提供的一种数据迁移装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构图;
图8为本申请实施例提供的另一种电子设备的结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在常见的针对数据迁移进行的操作是增加并发迁移,配置固定的并发迁移数,但是此方案难以适配现场所有场景,例如在高并发迁移时会影响用户的IO操作;用户低IO操作时,迁移速度受自生并发迁移数配置限制,文件迁移效率较低。基于上述技术问题,本实施例提供一种数据迁移方法,具体请参考图1,图1为本申请实施例所提供的一种数据迁移方法的流程图,具体包括:
S101、获取目标迁移文件。
其中,目标迁移文件时实际用户数据文件。
S102、根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数。
其中,当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。
可以理解的是,请参考图2,图2为本申请实施例提供的一种存储系统IO分配示意图,系统最大IO记为max_io可以分配为当前系统剩余IO记为left_io、用户实际占用IO记为user_io和预留IO记为tmp_io,其中,系统最大IO可以从两个方面进行计算,分别为IOPS和聚合带宽,系统最大IO是存储系统最大IO能力,进一步可以理解的是,当前系统剩余IO是标识系统当前还能增加处理的IO能力,在进行数据迁移时,并发迁移能力主要依据的是当前系统空闲IO,当前系统空闲IO越大,对应的并发迁移能力越高,对应的迁移IO并不单独统计,用户实际占用IO包含迁移io,因为迁移时调用用户接口,可认为是用户操作,迁移IO决定新增的迁移的并发数,迁移IO发起后,用户实际占用IO增加,对应的当前系统剩余IO减少。
针对预留IO本实施例进行进一步阐述,本实施例中不对预留IO进行限定它可以是系统最大IO的20%、系统最大IO的30%、40%或者其他数值,优选地,设置为系统最大的20%,以便在保证高数据迁移速率的条件下,能够不影响用户的操作。具体的,当系统最大IO以IOPS进行计算时,当系统最大的IOPS是5000iops,则预留IO为1000iops,用户实际占用IO与当前系统剩余IO的总和为4000iops;当系统最大IO以聚合带宽进行计算时,系统最大IO对应的聚合带宽为1000G时,则预留IO为200G,用户实际占用IO与当前系统剩余IO的总和为800G;当然,当前系统IO也可以是以两者共同决定,具体的本实施例不再进行阐述,用户可根据实际情况进行设置,只要是能够实现本实施例的目的即可。
对应的,本实施例不对迁移个数的确定方式进行限定,可以是根据当前系统剩余IO的IOPS进行计算,或,根据当前系统剩余IO的剩余聚合带宽进行计算,或,根据当前系统剩余IO的IOPS和剩余聚合带宽进行计算。在一种可实现的实施方式中,根据当前系统剩余IO的IOPS进行计算包括:确定系统空闲iops,将系统空闲iops除以预设的增加一个文件迁移任务需要的迁移iops得到的整数值作为迁移个数,例如,系统空闲iops为3000iops,预设的增加一个文件迁移任务需要的迁移iops为100iops则,确定迁移个数为30。在另一种可实现的实施方式中,确定系统剩余聚合带宽,将系统剩余聚合带宽除以预设的增加一个文件迁移任务需要的迁移聚合带宽得到的整数值作为迁移个数,例如,系统聚合带宽为500G,预设的增加一个文件迁移任务需要的迁移聚合带宽为10G,则确定迁移个数为50。
在另一种可实现的实施方式中,针对迁移个数的确定,请参考图3,图3为本申请实施例提供的一种迁移个数确定的流程示意图,包括:
S1021、根据系统空闲iops与预设的每个文件迁移任务需要的迁移iops,确定第一迁移个数。
可以理解的是,确定系统空闲iops,将系统空闲iops除以预设的增加一个文件迁移任务需要的迁移iops得到的整数值作为迁移个数。例如,系统空闲iops为3000iops,预设的增加一个文件迁移任务需要的迁移iops为100iops则,确定第一迁移个数为30。
S1022、根据系统剩余聚合带宽与预设的每个文件迁移任务需要的迁移聚合带宽,确定第二迁移个数。
确定系统剩余聚合带宽,将系统剩余聚合带宽除以预设的增加一个文件迁移任务需要的迁移聚合带宽得到的整数值作为迁移个数,例如,系统聚合带宽为500G,预设的增加一个文件迁移任务需要的迁移聚合带宽为10G,则确定第二迁移个数为50。
S1023、确定第一迁移个数与第二迁移个数中最小的数值作为迁移个数。
当第一迁移个数是30,第二迁移个数是50时,确定迁移个数为30。
可见,通过以系统空闲iops和系统剩余聚共同确定迁移个数,文件迁移速度根据系统性能剩余量自适应当前存储性能,更加准确的获取自适应的迁移个数,提高并发迁移的效率。
S103、根据迁移个数向客户端发送目标迁移文件的迁移任务,以便客户端根据迁移任务对目标迁移文件进行并发迁移。
其中根据迁移个数向客户端发送目标迁移文件的迁移任务,具体可以包括:当迁移个数小于或者等于当前正在处理的文件量的个数时,则在处理完成一个文件迁移后,再计算新的迁移个数,若新的迁移个数小于或者等于当前正在处理的文件量的个数时,则在处理完成下一个文件迁移后,再计算新的迁移个数,直至当计算得到的迁移个数大于当前正在处理的文件量的个数时,向客户端发送目标迁移文件的迁移任务,以便客户端根据迁移任务对目标迁移文件进行并发处理。
进一步的,还包括:定时扫描待迁移文件。其中,若待迁移文件处理完毕,本周期不需要进行迁移处理了。可以理解的是,待迁移文件包括在目标迁移文件之前的正在处理的文件,还包括目标迁移文件。对应的,步骤S103之后,还包括:判断待迁移文件是否完成并发迁移;若完成,则停止扫描,其中,待迁移文件包括目标迁移文件。可见,通过定时扫描,确定任务的完成情况,有利于实时了解文件迁移的完成情况。
进一步的,步骤S103之后,还包括:当目标迁移文件并发迁移完成后,记录目标迁移文件的处理信息。当目标迁移文件并发迁移完成后,记录下目标迁移文件的处理信息,其中,处理信息包括但是不限定于目标迁移文件的ID、迁移开始时间、迁移结束时间、并发处理的线程ID。
综上可知,本实施例提供的数据迁移方法,能够充分发挥系统存储性能,提升文件分级数据迁移速度,提升文件分级扫描线程处理能力,高速池空间容量回收得到提速,充分发挥高速池的作用,提升整系统存储能力,自管理,发挥系统迁移性能,同时不影响用户业务。本实施例通过界定划分存储性能系统最大IO分配;文件迁移速度根据当前系统空闲IO自适应当前存储性能;用户预留IO存储能力,处理用户突发IO。利用迁移个数动态调整方式,控制迁移速度。在充分利用系统存储性能的进行数据迁移的基础上,能够保证用户业务不受影响。
基于上述技术方案,本实施例将系统最大IO分配为当前系统剩余IO、用户实际占用IO和预留IO,预留IO供用户缓冲使用,快速清理快速池提升存储系统整体性能的同时,设置的预留IO不影响用户使用;通过利用当前系统空闲IO的属性确定并发迁移的迁移个数,自适应的调整并发迁移的迁移个数,提升了文件迁移速度,根据迁移个数向客户端发送目标迁移文件的迁移任务,在此过程中采用了异步数据存储的方式,避免了相关技术通过同步数据存储的方式造成的迁移效率低、迁移周期长的缺点,提高数据迁移效率。
针对S103,本实施例进行进一步阐述,请参考图4,图4为本申请实施例所提供的一种迁移任务下发的流程图,包括:
S1031、判断当前正在执行的所有的待迁移文件的数量是否小于迁移个数。
S1032、若小于迁移个数,则向客户端发送目标迁移文件的迁移任务。
S1033、若大于迁移个数,则进行等待,直至所有的待迁移文件的数量小于迁移个数,并向客户端发送目标迁移文件的迁移任务。
可以理解的是,每次向客户端发送目标迁移文件的迁移任务前,都要根据集群系统存储性能的当前系统空闲IO动态调整并发数即迁移个数,判断当前正在进行的数据迁移文件数是否小于迁移个数,大于迁移个数进行等待文件迁移完成消息,小于迁移个数则向迁移客户端发送迁移任务,然后继续处理下一文件。
进一步的,步骤S1033具体可以包括:当完成一个待迁移文件时,根据当前系统空闲IO的属性确定并发迁移的新的迁移个数;若所有的待迁移文件的数量小于新的迁移个数,则向客户端发送目标迁移文件的迁移任务。
可见,文件迁移速度根据系统性能剩余量即当前系统空闲IO自适应当前存储性能,利用迁移个数动态调整方式,控制迁移速度。
请参考图5,图5为本申请实施例提供的一种具体的数据迁移方法,包括:
扫描任务定时进行。
判断待处理文件是否处理完毕。即判断待迁移文件是否完成并发迁移。
如果处理完毕,判断本次处理的文件数据即待处理文件是否全部迁移完毕,迁移完毕结束本次扫描,否则进行等待,等本次扫描文件数据全部迁移完成后结束本次扫描。
文件未处理完毕时,每次发送迁移任务前,都要根据集群系统存储性能动态调整并发数即迁移个数,判断当前正在进行的数据迁移文件数即正在进行的待迁移文件数量是否小于阈值即迁移个数,大于阈值进行等待文件迁移完成消息,小于阈值则向客户端发送迁移任务,然后继续处理下一文件。
下面对本申请实施例提供的一种数据迁移装置进行介绍,下文描述的数据迁移装置与上文描述的数据迁移方法可相互对应参照,参考图6,图6为本申请实施例所提供的一种数据迁移装置的结构示意图,包括:
目标迁移文件获取模块610,用于获取目标迁移文件;
迁移个数调整模块620,用于根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;
迁移任务下发模块630,用于根据迁移个数向客户端发送目标迁移文件的迁移任务,以便客户端根据迁移任务对目标迁移文件进行并发迁移;
其中,当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。
在一些具体的实施例中,迁移个数调整模块620,包括:
第一迁移个数确定单元,用于根据系统空闲iops与预设的每个文件迁移任务需要的迁移iops,确定第一迁移个数;
第二迁移个数确定单元,用于根据系统剩余聚合带宽与预设的每个文件迁移任务需要的迁移聚合带宽,确定第二迁移个数;
迁移个数确定单元,用于确定第一迁移个数与第二迁移个数中最小的数值作为迁移个数。
在一些具体的实施例中,迁移任务下发模块630,包括:
判断单元,用于判断当前正在执行的所有的待迁移文件的数量是否小于迁移个数;
第一迁移任务下发单元,用于若小于迁移个数,则向客户端发送目标迁移文件的迁移任务;
第二迁移任务下发单元,用于若大于迁移个数,则进行等待,直至所有的待迁移文件的数量小于迁移个数,并向客户端发送目标迁移文件的迁移任务。
在一些具体的实施例中,第二迁移任务下发单元包括:
新的迁移个数确定子单元,用于当完成一个待迁移文件时,根据当前系统空闲IO的属性确定并发迁移的新的迁移个数;
第二迁移任务下发子单元,用于若所有的待迁移文件的数量小于新的迁移个数,则向客户端发送目标迁移文件的迁移任务。
在一些具体的实施例中,还包括:
扫描模块,用于定时扫描待迁移文件;
判断模块,用于判断待迁移文件是否完成并发迁移;
停止扫描模块,用于若完成,则停止扫描,其中,待迁移文件包括目标迁移文件。
在一些具体的实施例中,还包括:
记录模块,用于当目标迁移文件并发迁移完成后,记录目标迁移文件的处理信息。
在一些具体的实施例中,预留IO是系统最大IO的20%。
由于数据迁移装置部分的实施例与数据迁移方法部分的实施例相互对应,因此数据迁移装置部分的实施例请参见数据迁移方法部分的实施例的描述,这里暂不赘述。
下面对本申请实施例提供的一种电子设备进行介绍,下文描述的电子设备与上文描述的数据迁移方法可相互对应参照。参见图7,图7为本申请实施例提供的一种电子设备的结构图,包括:
存储器100,用于存储计算机程序;
处理器200,用于执行计算机程序时可以实现上述实施例所提供的步骤。
具体的,存储器100包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器200为电子设备提供计算和控制能力,执行存储器100中保存的计算机程序时,可以实现以下步骤:获取目标迁移文件;根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;根据迁移个数向客户端发送目标迁移文件的迁移任务,以便客户端根据迁移任务对目标迁移文件进行并发迁移;其中,当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。
在一些实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:根据系统空闲iops与预设的每个文件迁移任务需要的迁移iops,确定第一迁移个数;根据系统剩余聚合带宽与预设的每个文件迁移任务需要的迁移聚合带宽,确定第二迁移个数;确定第一迁移个数与第二迁移个数中最小的数值作为迁移个数。
在一些实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:判断当前正在执行的所有的待迁移文件的数量是否小于迁移个数;若小于迁移个数,则向客户端发送目标迁移文件的迁移任务;若大于迁移个数,则进行等待,直至所有的待迁移文件的数量小于迁移个数,并向客户端发送目标迁移文件的迁移任务。
在一些实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:当完成一个待迁移文件时,根据当前系统空闲IO的属性确定并发迁移的新的迁移个数;若所有的待迁移文件的数量小于新的迁移个数,则向客户端发送目标迁移文件的迁移任务。
在一些实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:定时扫描待迁移文件;判断待迁移文件是否完成并发迁移;若完成,则停止扫描,其中,待迁移文件包括目标迁移文件。
由于电子设备部分的实施例与数据迁移方法部分的实施例相互对应,因此电子设备部分的实施例请参见数据迁移方法部分的实施例的描述,这里暂不赘述。
在上述实施例的基础上,作为优选实施方式,参见图8,图8为本申请实施例提供的另一种电子设备的结构图,该电子设备还包括:
输入接口300,与处理器200相连,用于获取外部导入的计算机程序、参数和指令,经处理器200控制保存至存储器100中。该输入接口300可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元400,与处理器200相连,用于显示处理器200发送的数据。该显示单元400可以为PC机上的显示屏、液晶显示屏或者电子墨水显示屏等。
网络端口500,与处理器200相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MHL)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。
下面对本申请实施例提供的一种计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的方法可相互对应参照。
本实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述数据迁移方法的步骤。
该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。该存储介质上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取目标迁移文件;根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;根据迁移个数向客户端发送目标迁移文件的迁移任务,以便客户端根据迁移任务对目标迁移文件进行并发迁移;其中,当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO。
在一些实施例中,计算机可读存储介质中存储的计算机子程序被处理器执行时,可以实现以下步骤:根据系统空闲iops与预设的每个文件迁移任务需要的迁移iops,确定第一迁移个数;根据系统剩余聚合带宽与预设的每个文件迁移任务需要的迁移聚合带宽,确定第二迁移个数;确定第一迁移个数与第二迁移个数中最小的数值作为迁移个数。
在一些实施例中,计算机可读存储介质中存储的计算机子程序被处理器执行时,可以实现以下步骤:判断当前正在执行的所有的待迁移文件的数量是否小于迁移个数;若小于迁移个数,则向客户端发送目标迁移文件的迁移任务;若大于迁移个数,则进行等待,直至所有的待迁移文件的数量小于迁移个数,并向客户端发送目标迁移文件的迁移任务。
在一些实施例中,计算机可读存储介质中存储的计算机子程序被处理器执行时,可以实现以下步骤:当完成一个待迁移文件时,根据当前系统空闲IO的属性确定并发迁移的新的迁移个数;若所有的待迁移文件的数量小于新的迁移个数,则向客户端发送目标迁移文件的迁移任务。
在一些实施例中,计算机可读存储介质中存储的计算机子程序被处理器执行时,可以实现以下步骤:定时扫描待迁移文件;判断待迁移文件是否完成并发迁移;若完成,则停止扫描,其中,待迁移文件包括目标迁移文件。
由于计算机可读存储介质部分的实施例与方法部分的实施例相互对应,因此计算机可读存储介质部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种数据迁移方法、数据迁移装置、电子设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (9)

1.一种数据迁移方法,其特征在于,包括:
获取目标迁移文件;
根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;
根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移;
其中,所述当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO;
所述根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,包括:
判断当前正在执行的所有的待迁移文件的数量是否小于所述迁移个数;
若小于所述迁移个数,则向所述客户端发送所述目标迁移文件的所述迁移任务;
若大于所述迁移个数,则进行等待,直至所有的所述待迁移文件的数量小于所述迁移个数,并向所述客户端发送所述目标迁移文件的所述迁移任务。
2.根据权利要求1所述的数据迁移方法,其特征在于,所述根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数,包括:
根据系统空闲iops与预设的每个文件迁移任务需要的迁移iops,确定第一迁移个数;
根据系统剩余聚合带宽与预设的每个文件迁移任务需要的迁移聚合带宽,确定第二迁移个数;
确定所述第一迁移个数与所述第二迁移个数中最小的数值作为所述迁移个数。
3.根据权利要求1所述的数据迁移方法,其特征在于,所述若大于所述迁移个数,则进行等待,直至所有的所述待迁移文件的数量小于所述迁移个数,并向所述客户端发送所述目标迁移文件的所述迁移任务,包括:
当完成一个待迁移文件时,根据当前系统空闲IO的属性确定并发迁移的新的迁移个数;
若所有的所述待迁移文件的数量小于所述新的迁移个数,则向所述客户端发送所述目标迁移文件的所述迁移任务。
4.根据权利要求1所述的数据迁移方法,其特征在于,还包括:
定时扫描待迁移文件;
对应的,所述根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移之后,还包括:
判断所述待迁移文件是否完成并发迁移;
若完成,则停止扫描,其中,所述待迁移文件包括目标迁移文件。
5.根据权利要求1所述的数据迁移方法,其特征在于,所述根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移之后,还包括:
当所述目标迁移文件并发迁移完成后,记录所述目标迁移文件的处理信息。
6.根据权利要求1所述的数据迁移方法,其特征在于,所述预留IO是系统最大IO的20%。
7.一种数据迁移装置,其特征在于,包括:
目标迁移文件获取模块,用于获取目标迁移文件;
迁移个数调整模块,用于根据当前系统空闲IO的属性与预设的每个文件迁移任务需要的迁移IO,确定并发迁移的迁移个数;
迁移任务下发模块,用于根据所述迁移个数向客户端发送所述目标迁移文件的迁移任务,以便所述客户端根据所述迁移任务对所述目标迁移文件进行并发迁移;
其中,所述当前系统空闲IO为系统最大IO中去除用户实际占用IO和预留IO后的IO;
所述迁移任务下发模块包括:
判断单元,用于判断当前正在执行的所有的待迁移文件的数量是否小于所述迁移个数;
第一迁移任务下发单元,用于若小于所述迁移个数,则向所述客户端发送所述目标迁移文件的所述迁移任务;
第二迁移任务下发单元,用于若大于所述迁移个数,则进行等待,直至所有的所述待迁移文件的数量小于所述迁移个数,并向所述客户端发送所述目标迁移文件的所述迁移任务。
8.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述数据迁移方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述数据迁移方法的步骤。
CN201911204966.6A 2019-11-29 2019-11-29 一种数据迁移方法、装置和计算机可读存储介质 Active CN111142788B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911204966.6A CN111142788B (zh) 2019-11-29 2019-11-29 一种数据迁移方法、装置和计算机可读存储介质
PCT/CN2020/103695 WO2021103596A1 (zh) 2019-11-29 2020-07-23 一种数据迁移方法、装置和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911204966.6A CN111142788B (zh) 2019-11-29 2019-11-29 一种数据迁移方法、装置和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN111142788A CN111142788A (zh) 2020-05-12
CN111142788B true CN111142788B (zh) 2021-10-15

Family

ID=70517371

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911204966.6A Active CN111142788B (zh) 2019-11-29 2019-11-29 一种数据迁移方法、装置和计算机可读存储介质

Country Status (2)

Country Link
CN (1) CN111142788B (zh)
WO (1) WO2021103596A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111142788B (zh) * 2019-11-29 2021-10-15 浪潮电子信息产业股份有限公司 一种数据迁移方法、装置和计算机可读存储介质
CN111966301B (zh) * 2020-08-25 2023-01-10 苏州浪潮智能科技有限公司 分布式对象存储系统的迁移速度控制方法、装置及介质
CN113741810B (zh) * 2021-07-30 2023-08-11 苏州浪潮智能科技有限公司 一种数据迁移方法及装置
CN115904263B (zh) * 2023-03-10 2023-05-23 浪潮电子信息产业股份有限公司 一种数据迁移方法、系统、设备及计算机可读存储介质
CN116980641B (zh) * 2023-09-22 2023-12-15 江西云眼视界科技股份有限公司 视频迁移的异步处理方法、系统、计算机及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297481A (zh) * 2012-03-05 2013-09-11 中兴通讯股份有限公司 互联交换方法和装置
CN103500073A (zh) * 2013-10-08 2014-01-08 浪潮(北京)电子信息产业有限公司 一种数据块迁移方法及装置
CN103677959A (zh) * 2013-12-16 2014-03-26 国家计算机网络与信息安全管理中心 一种基于组播的虚拟机集群迁移方法及系统
CN103733175A (zh) * 2013-08-09 2014-04-16 华为技术有限公司 一种文件处理方法、装置及存储设备
CN104331253A (zh) * 2014-10-30 2015-02-04 浪潮电子信息产业股份有限公司 一种对象存储系统中对象迁移的计算方法
CN105045873A (zh) * 2015-07-17 2015-11-11 深圳市腾讯计算机系统有限公司 一种数据文件的推送方法、装置及系统
CN107506500A (zh) * 2017-10-09 2017-12-22 郑州云海信息技术有限公司 一种数据迁移的控制方法及相关装置
CN107844590A (zh) * 2017-11-17 2018-03-27 郑州云海信息技术有限公司 小文件迁移方法、装置、设备及计算机可读存储介质
CN108536539A (zh) * 2018-04-26 2018-09-14 东北大学 一种工业分布式数据采集系统中的任务调度方法
CN109343793A (zh) * 2018-09-11 2019-02-15 阿里巴巴集团控股有限公司 数据迁移方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080016390A1 (en) * 2006-07-13 2008-01-17 David Maxwell Cannon Apparatus, system, and method for concurrent storage pool migration and backup
CN103136043B (zh) * 2013-01-28 2016-05-25 华为技术有限公司 一种异步io的迁移方法、系统和网络节点
CN103530388A (zh) * 2013-10-22 2014-01-22 浪潮电子信息产业股份有限公司 一种云存储系统中提升性能的数据处理方法
US20160196089A1 (en) * 2015-01-07 2016-07-07 Netapp, Inc. System and method for adaptive data transfers with limited resources
CN105843820B (zh) * 2015-01-16 2019-10-08 阿里巴巴集团控股有限公司 数据迁移方法及装置
CN105978949A (zh) * 2016-04-27 2016-09-28 乐视控股(北京)有限公司 离线数据上传方法及装置
CN111142788B (zh) * 2019-11-29 2021-10-15 浪潮电子信息产业股份有限公司 一种数据迁移方法、装置和计算机可读存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297481A (zh) * 2012-03-05 2013-09-11 中兴通讯股份有限公司 互联交换方法和装置
CN103733175A (zh) * 2013-08-09 2014-04-16 华为技术有限公司 一种文件处理方法、装置及存储设备
CN103500073A (zh) * 2013-10-08 2014-01-08 浪潮(北京)电子信息产业有限公司 一种数据块迁移方法及装置
CN103677959A (zh) * 2013-12-16 2014-03-26 国家计算机网络与信息安全管理中心 一种基于组播的虚拟机集群迁移方法及系统
CN104331253A (zh) * 2014-10-30 2015-02-04 浪潮电子信息产业股份有限公司 一种对象存储系统中对象迁移的计算方法
CN105045873A (zh) * 2015-07-17 2015-11-11 深圳市腾讯计算机系统有限公司 一种数据文件的推送方法、装置及系统
CN107506500A (zh) * 2017-10-09 2017-12-22 郑州云海信息技术有限公司 一种数据迁移的控制方法及相关装置
CN107844590A (zh) * 2017-11-17 2018-03-27 郑州云海信息技术有限公司 小文件迁移方法、装置、设备及计算机可读存储介质
CN108536539A (zh) * 2018-04-26 2018-09-14 东北大学 一种工业分布式数据采集系统中的任务调度方法
CN109343793A (zh) * 2018-09-11 2019-02-15 阿里巴巴集团控股有限公司 数据迁移方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"如何使用qos管理分配存储iops";weixin_34090562;《https://blog.csdn.net/weixin_34090562/article/details/90455390》;20170704;第1-4页 *

Also Published As

Publication number Publication date
WO2021103596A1 (zh) 2021-06-03
CN111142788A (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
CN111142788B (zh) 一种数据迁移方法、装置和计算机可读存储介质
CN112905326B (zh) 任务处理方法及装置
JP6669961B2 (ja) プロセッサ、再構成可能回路の制御方法及びプログラム
CN108415772B (zh) 一种基于容器的资源调整方法、装置和介质
CN106528290A (zh) 移动终端的资源调度方法及移动终端
WO2021169618A1 (zh) 一种虚拟机的迁移方法、装置、设备及介质
CN114048006A (zh) 虚拟机动态迁移方法、装置以及存储介质
CN106095417B (zh) 一种前景应用程序界面刷新同步方法及系统
CN115004168A (zh) 数据推送方法、装置、服务器及存储介质
CN112015326A (zh) 集群数据处理方法、装置、设备及存储介质
CN116467235B (zh) 一种基于dma的数据处理方法、装置、电子设备及介质
CN111159124B (zh) Linux内核文件系统异步写缓存方法、装置及介质
CN111176570B (zh) 一种厚置备卷创建方法、装置、设备及介质
CN114816766B (zh) 一种计算资源分配方法及其相关组件
CN113703678B (zh) 一种存储桶索引重分裂的方法、装置、设备和介质
CN116303132A (zh) 一种数据缓存方法、装置、设备以及存储介质
CN116450290A (zh) 计算机资源的管理方法、装置、云服务器及存储介质
CN111966301B (zh) 分布式对象存储系统的迁移速度控制方法、装置及介质
CN114745338A (zh) 流量控制方法、装置、存储介质以及服务器
CN113821174A (zh) 存储处理方法、装置、网卡设备及存储介质
CN114416326A (zh) 大数据管控方法、装置、管控系统及可读存储介质
CN110955644A (zh) 一种存储系统的io控制方法、装置、设备及存储介质
CN113032369A (zh) 一种数据迁移方法、装置及介质
US20240320896A1 (en) Multi-gpu-based image rendering method and apparatus, and readable storage medium
CN114564307B (zh) 一种内存分配方法、装置、设备和计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20200512

Assignee: INSPUR (BEIJING) ELECTRONIC INFORMATION INDUSTRY Co.,Ltd.

Assignor: INSPUR ELECTRONIC INFORMATION INDUSTRY Co.,Ltd.

Contract record no.: X2022990000833

Denomination of invention: A data migration method, device and computer readable storage medium

Granted publication date: 20211015

License type: Common License

Record date: 20221024

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20200512

Assignee: Inspur(Jinan)Data Technology Co.,Ltd

Assignor: INSPUR ELECTRONIC INFORMATION INDUSTRY Co.,Ltd.

Contract record no.: X2022110000054

Denomination of invention: A data migration method, device and computer readable storage medium

Granted publication date: 20211015

License type: Common License

Record date: 20221024

EE01 Entry into force of recordation of patent licensing contract