CN113961145A - 数据迁移方法及装置 - Google Patents
数据迁移方法及装置 Download PDFInfo
- Publication number
- CN113961145A CN113961145A CN202111188799.8A CN202111188799A CN113961145A CN 113961145 A CN113961145 A CN 113961145A CN 202111188799 A CN202111188799 A CN 202111188799A CN 113961145 A CN113961145 A CN 113961145A
- Authority
- CN
- China
- Prior art keywords
- migration
- migrated
- server
- maximum
- data segment
- 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.)
- Granted
Links
- 230000005012 migration Effects 0.000 title claims abstract description 447
- 238000013508 migration Methods 0.000 title claims abstract description 447
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000003860 storage Methods 0.000 claims description 13
- 239000000758 substrate Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 12
- 230000004044 response Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
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
本说明书一个或多个实施例公开了一种数据迁移方法及装置,用以提高数据段的迁移成功率及迁移性能。所述方法包括:在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述待迁移数据段的第一数量;及,确定所述第一服务器对应的满足预设条件的最大迁移量;根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括迁移次数和/或单次迁移量;根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
Description
本发明专利申请是申请日为2018年9月11日、申请号为2018110547200、名称为“数据迁移方法及装置”的中国发明专利申请的分案申请。
技术领域
本说明书涉及数据处理技术领域,尤其涉及一种数据迁移方法及装置。
背景技术
在传统通过哈希槽原理来解决数据均衡性的缓存集群中,往往会根据服务器总量和哈希槽总量来计算单台服务器应该存储的数据段,并且每个服务器会维护一份自身所管理的数据段。新增服务器时会重新计算每台服务器需要维护的数据段,并且根据计算结果调整数据段,完成数据段的迁移后,旧服务器维护需要迁移的数据段以及迁移后的数据段,新服务器维护需要迁入的数据段。
现有技术中,通常采用数据平均分配的方式对服务器所维护的数据段进行迁移。例如,假定集群服务器数量为n,迁移前每个服务器维护的数据段数量为h/n,当服务器需要扩容时,假定增加t个服务器,那么每个服务器维护的数据段数量为h/(n+t),原有的每个服务器需要迁移的数据段数量为(h/n)-h/(n+t)。在数据段的迁移过程中,若随着数据段的迁移数量的增长,很容易造成服务器稳定性指标的明显变化,甚至导致服务器停止响应。
发明内容
本说明书一个或多个实施例的目的是提供一种数据迁移方法及装置,用以提高数据段的迁移成功率及迁移性能。
为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
一方面,本说明书一个或多个实施例提供一种数据迁移方法,包括:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
在一个实施例中,所述预设条件还包括以下至少一项:
所述最大迁移量小于或等于第一预设阈值;
当迁移所述最大迁移量个所述待迁移数据段时,与所述第一服务器相关的指定参数的变化值不超过第二预设阈值。
在一个实施例中,在将所述第一服务器内的待迁移数据段迁移至所述第二服务器时,确定所述待迁移数据段的第一数量;
所述根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略,包括:
根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略;所述迁移策略还包括迁移次数。
在一个实施例中,所述根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略,包括:
若所述第一数量小于或等于所述最大迁移量,则确定所述迁移策略为直接将所述待迁移数据段迁移至所述第二服务器;
若所述第一数量大于所述最大迁移量,则根据所述第一数量及所述最大迁移量确定所述待迁移数据段的迁移次数和/或单次迁移量。
在一个实施例中,所述根据所述第一数量及所述最大迁移量确定对所述待迁移数据段的迁移次数和/或单次迁移量,包括:
计算所述第一数量与所述最大迁移量的商值和/或余数;
根据所述商值和/或余数确定所述迁移次数。
在一个实施例中,所述根据所述第一数量及所述最大迁移量确定对所述待迁移数据段的迁移次数之后,所述根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器,包括:
创建所述迁移次数个、用于迁移所述待迁移数据段的迁移任务;
确定各所述迁移任务分别对应的单次迁移量,所述单次迁移量小于或等于所述最大迁移量;
根据所述单次迁移量,分别执行所述迁移任务。
另一方面,本说明书一个或多个实施例提供一种数据迁移装置,包括:
第一确定模块,用于在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
第二确定模块,用于根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
迁移模块,用于根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
在一个实施例中,所述预设条件还包括以下至少一项:
所述最大迁移量小于或等于第一预设阈值;
当迁移所述最大迁移量个所述待迁移数据段时,与所述第一服务器相关的指定参数的变化值不超过第二预设阈值。
在一个实施例中,所述第一确定模块,还用于在将所述第一服务器内的待迁移数据段迁移至所述第二服务器时,确定所述待迁移数据段的第一数量;
所述第二确定模块,还用于根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略;所述迁移策略还包括迁移次数。
在一个实施例中,所述第二确定模块包括:
第一确定单元,用于若所述第一数量小于或等于所述最大迁移量,则确定所述迁移策略为直接将所述待迁移数据段迁移至所述第二服务器;
第二确定单元,用于若所述第一数量大于所述最大迁移量,则根据所述第一数量及所述最大迁移量确定所述待迁移数据段的迁移次数和/或单次迁移。
在一个实施例中,所述第二确定单元还用于:
计算所述第一数量与所述最大迁移量的商值和/或余数;
根据所述商值和/或余数确定所述迁移次数。
在一个实施例中,所述迁移模块包括:
创建单元,用于所述根据所述第一数量及所述最大迁移量确定对所述待迁移数据段的迁移次数之后,创建所述迁移次数个、用于迁移所述待迁移数据段的迁移任务;
第三确定单元,用于确定各所述迁移任务分别对应的单次迁移量,所述单次迁移量小于或等于所述最大迁移量;
执行单元,用于根据所述单次迁移量,分别执行所述迁移任务。
再一方面,本说明书一个或多个实施例提供一种数据迁移设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
再一方面,本申请实施例提供一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
采用本说明书一个或多个实施例的技术方案,能够在将第一服务器内的待迁移数据段迁移至第二服务器时,确定待迁移数据段的第一数量及第一服务器对应的满足预设条件的最大迁移量,进而根据第一数量及最大迁移量确定针对待迁移数据段的迁移策略,并根据迁移策略将待迁移数据段迁移至第二服务器。其中,迁移策略至少包括迁移次数和/或单次迁移量。可见,该技术方案在迁移数据段时,并不是简单的一次性完迁移所有数据段,而是充分考虑了待迁移数据段的数量及服务器的最大迁移量,因此能够避免因一次性迁移所有数据段时导致的服务器性能不稳定、甚至停止响应的问题,从而提高数据段的迁移成功率。
进一步的,该技术方案能够创建多个迁移任务,且每个迁移任务的单次迁移量均小于或等于服务器的最大迁移量,因此能够避免在同一迁移任务中迁移超过最大迁移量的数据段时导致的服务器性能不稳定、甚至停止响应的问题,且由于单个迁移任务的任务量变小,因此能够开启更多的迁移任务,从而提升数据段的迁移性能。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本说明书一实施例的一种数据迁移方法的示意性流程图;
图2是根据本说明书一具体实施例的一种数据迁移方法的示意性流程图;
图3是根据本说明书一实施例的一种数据迁移装置的示意性框图;
图4是根据本说明书一实施例的一种数据迁移设备的示意性框图。
具体实施方式
本说明书一个或多个实施例提供一种数据迁移方法及装置,用以提高数据段的迁移成功率及迁移性能。
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书一个或多个实施例保护的范围。
图1是根据本说明书一实施例的一种数据迁移方法的示意性流程图,如图1所示,该方法包括:
S102,在将第一服务器内的待迁移数据段迁移至第二服务器时,确定待迁移数据段的第一数量;及,确定第一服务器对应的满足预设条件的最大迁移量。
S104,根据第一数量及最大迁移量,确定针对待迁移数据段的迁移策略。
其中,迁移策略至少包括迁移次数和/或单次迁移量。
S106,根据迁移策略将待迁移数据段迁移至第二服务器。
采用本说明书一个或多个实施例的技术方案,能够在将第一服务器内的待迁移数据段迁移至第二服务器时,确定待迁移数据段的第一数量及第一服务器对应的满足预设条件的最大迁移量,进而根据第一数量及最大迁移量确定针对待迁移数据段的迁移策略,并根据迁移策略将待迁移数据段迁移至第二服务器。其中,迁移策略至少包括迁移次数和/或单次迁移量。可见,该技术方案在迁移数据段时,并不是简单的一次性完迁移所有数据段,而是充分考虑了待迁移数据段的数量及服务器的最大迁移量,因此能够避免因一次性迁移所有数据段时导致的服务器性能不稳定、甚至停止响应的问题,从而提高数据段的迁移成功率。
以下详细介绍上述实施例提高的数据迁移方法。
在将第一服务器内的待迁移数据段迁移至第二服务器时,首先,确定待迁移数据段的第一数量,以及,确定第一服务器对应的满足预设条件的最大迁移量。其中,预设条件包括(1)-(2)中的至少一项:
(1)最大迁移量小于或等于第一预设阈值。其中,关于第一预设阈值的设定,也可参考与第一服务器相关的参数,即,若迁移第一预设阈值个数据段时,不应对第一服务器的性能的稳定性造成影响,可通过参考迁移过程中第一服务器的运行速度、内存大小、响应任务的时长等参数的变化来确定是否对第一服务器的性能的稳定性造成影响。
(2)当迁移最大迁移量个待迁移数据段时,与第一服务器相关的指定参数的变化值不超过第二预设阈值。其中,指定参数可以是第一服务器的运行速度、内存大小、响应任务的时长等任一种或多种可影响服务器稳定性的参数。
上述针对(1)-(2)的预设条件的设定,均能够在一定程度上避免数据段的迁移数量较大而影响服务器性能的稳定性。
在一个实施例中,可根据如下方式确定待迁移数据段的第一数量:若集群服务器数量为n,迁移前每个服务器维护的数据段数量为h/n,当服务器需要扩容时,假定增加t个服务器,那么每个服务器维护的数据段数量为h/(n+t),则原有的每个服务器需要迁移的数据段数量为(h/n)-h/(n+t),即,待迁移数据段的第一数量为(h/n)-h/(n+t)。
在确定待迁移数据段的第一数量以及第一服务器对应的满足预设条件的最大迁移量之后,根据第一数量及最大迁移量确定针对待迁移数据段的迁移策略。其中,迁移策略可包括迁移次数和/或单次迁移量。
在一个实施例中,若待迁移数据段的第一数量小于或等于最大迁移量,则确定迁移策略为直接将待迁移数据段迁移至第二服务器。本实施例中,待迁移数据段的第一数量小于或等于最大迁移量,说明一次性将所有的待迁移数据段迁移至第二服务器时并不会对第一服务器的性能的稳定性造成影响。
若待迁移数据段的第一数量大于最大迁移量,则根据第一数量及最大迁移量确定待迁移数据段的迁移次数和/或单次迁移量。本实施例中,待迁移数据段的第一数量大于最大迁移量,而一次性迁移最大迁移量个待迁移数据段时会对第一服务器的性能的稳定性造成影响,因此这种情况下,需要对待迁移数据段进行多次迁移,且单次迁移量小于或等于最大迁移量。
在一个实施例中,根据第一数量及最大迁移量确定对待迁移数据段的迁移次数时,可计算第一数量与最大迁移量的商值和/或余数,进而根据商值和/或余数确定对待迁移数据段的迁移次数。具体的,若余数为零,则第一数量与最大迁移量的商值即为对待迁移数据段的迁移次数,且单次迁移量为最大迁移量;若余数不为零,则第一数量与最大迁移量的商值加1的值即为对待迁移数据段的迁移次数,且其中一次待迁的单次迁移量与余数相等,其他次待迁的单次迁移量为最大迁移量。
例如,集群服务器数量为n,迁移前每个服务器维护的数据段数量为h/n,第一服务器的最大迁移量为q。当服务器需要扩容时,假定增加t个服务器,那么每个服务器维护的数据段数量为h/(n+t),则原有的每个服务器需要迁移的数据段数量为(h/n)-h/(n+t),即,待迁移数据段的第一数量为(h/n)-h/(n+t)。
当q>(h/n)-h/(n+t)或q=(h/n)-h/(n+t)时,可直接将(h/n)-h/(n+t)个待迁移数据段迁移至第二服务器。
当q<(h/n)-h/(n+t)时,计算第一数量与最大迁移量的商值和/或余数,即计算[(h/n)-h/(n+t)]/q的值。若[(h/n)-h/(n+t)]/q的值为整数,即余数为零,则可确定待迁移数据段的迁移次数为[(h/n)-h/(n+t)]/q,单次迁移量为q;若[(h/n)-h/(n+t)]/q的值不为整数,即余数不为零(假设余数为x),则可确定待迁移数据段的迁移次数为[(h/n)-h/(n+t)]/q+1,其中一次待迁的单次迁移量为x,其他次待迁的单次迁移量为q。
在一个实施例中,根据第一数量及最大迁移量确定对待迁移数据段的单次迁移量时,可确定对待迁移数据段的单次迁移量为小于或等于最大迁移量的值。可选的,确定对待迁移数据段的单次迁移量等于最大迁移量,那么在迁移待迁移数据段时,可每次迁移最大迁移量个待迁移数据段,直至将所有的待迁移数据段迁移至第二服务器。
确定迁移策略之后,根据迁移策略将待迁移数据段迁移至第二服务器。具体可按照如下步骤对待迁移数据段进行迁移:
首先,创建迁移次数个、用于迁移待迁移数据段的迁移任务。
其次,确定各迁移任务分别对应的单次迁移量。
其中,单次迁移量小于或等于最大迁移量,最大迁移量满足如下预设条件中的至少一项:
(1)最大迁移量小于或等于第一预设阈值。其中,关于第一预设阈值的设定,可参考与第一服务器相关的参数,即,若迁移第一预设阈值个数据段时,不应对第一服务器的性能的稳定性造成影响,可通过参考迁移过程中第一服务器的运行速度、内存大小、响应任务的时长等参数的变化来确定是否对第一服务器的性能的稳定性造成影响。
(2)当迁移最大迁移量个待迁移数据段时,与第一服务器相关的指定参数的变化值不超过第二预设阈值。其中,指定参数可以是第一服务器的运行速度、内存大小、响应任务的时长等任一种或多种可影响服务器稳定性的参数。
最后,根据所确定的单次迁移量分别执行迁移任务。
该步骤中,可按照指定顺序依次执行迁移任务,具体的,可按照迁移任务的创建顺序依次执行迁移任务;或者,根据各迁移任务对应的单次迁移量的多少依次执行迁移任务,若多个迁移任务对应相同的单次迁移量,则可按照随机顺序依次执行多个迁移任务。
本实施例能够创建多个迁移任务,且每个迁移任务的单次迁移量均小于或等于服务器的最大迁移量,因此能够避免在同一迁移任务中迁移超过最大迁移量的数据段时导致的服务器性能不稳定、甚至停止响应的问题,且由于单个迁移任务的任务量变小,因此能够开启更多的迁移任务,从而提升数据段的迁移性能。
图2是根据本说明书一具体实施例的一种数据迁移方法的示意性流程图,如图2所示,该方法包括:
S201,在将第一服务器内的待迁移数据段迁移至第二服务器时,确定待迁移数据段的数量及第一服务器对应的最大迁移量。
其中,最大迁移量满足如下预设条件中的至少一项:
(1)最大迁移量小于或等于第一预设阈值。其中,关于第一预设阈值的设定,可参考与第一服务器相关的参数,即,若迁移第一预设阈值个数据段时,不应对第一服务器的性能的稳定性造成影响,可通过参考迁移过程中第一服务器的运行速度、内存大小、响应任务的时长等参数的变化来确定是否对第一服务器的性能的稳定性造成影响。
(2)当迁移最大迁移量个待迁移数据段时,与第一服务器相关的指定参数的变化值不超过第二预设阈值。其中,指定参数可以是第一服务器的运行速度、内存大小、响应任务的时长等任一种或多种可影响服务器稳定性的参数。
该步骤可按照如下方式确定待迁移数据段的数量:若集群服务器数量为n,迁移前每个服务器维护的数据段数量为h/n,当服务器需要扩容时,假定增加t个服务器,那么每个服务器维护的数据段数量为h/(n+t),则原有的每个服务器需要迁移的数据段数量为(h/n)-h/(n+t),即,待迁移数据段的数量为(h/n)-h/(n+t)。
S202,判断待迁移数据段的数量是否大于第一服务器对应的最大迁移量。若是,则执行S203;若否,则执行S208。
S203,计算待迁移数据段的数量与最大迁移量的商值和/或余数。
基于上述计算出的待迁移数据段的数量为(h/n)-h/(n+t),假设第一服务器对应的最大迁移量为q,则待迁移数据段的数量与最大迁移量的商值为[(h/n)-h/(n+t)]/q。
S204,根据商值和/或余数确定对待迁移数据段的迁移次数。
基于上述待迁移数据段的数量与最大迁移量的商值为[(h/n)-h/(n+t)]/q,若[(h/n)-h/(n+t)]/q的值为整数,即余数为零,则可确定待迁移数据段的迁移次数为[(h/n)-h/(n+t)]/q;若[(h/n)-h/(n+t)]/q的值不为整数,即余数不为零(假设余数为x),则可确定待迁移数据段的迁移次数为[(h/n)-h/(n+t)]/q+1。
S205,创建迁移次数个、用于迁移待迁移数据段的迁移任务。
S206,确定各迁移任务分别对应的单次迁移量。
其中,单次迁移量小于或等于第一服务器对应的最大迁移量。
沿用上述举例,若待迁移数据段的迁移次数为[(h/n)-h/(n+t)]/q,则单次迁移量为q;若待迁移数据段的迁移次数为[(h/n)-h/(n+t)]/q+1,则其中一次待迁的单次迁移量为x,其他次待迁的单次迁移量为q。
S207,根据所确定的单次迁移量分别执行各迁移任务。
S208,直接将待迁移数据段迁移至第二服务器。
本实施例中,能够在将第一服务器内的待迁移数据段迁移至第二服务器时,确定待迁移数据段的数量及第一服务器对应的最大迁移量,进而根据待迁移数据段的数量及最大迁移量确定针对待迁移数据段的迁移次数,并根据迁移次数将待迁移数据段迁移至第二服务器。可见,该技术方案在迁移数据段时,并不是简单的一次性完迁移所有数据段,而是充分考虑了待迁移数据段的数量及第一服务器的最大迁移量,因此能够避免因一次性迁移所有数据段时导致的第一服务器性能不稳定、甚至停止响应的问题,从而提高数据段的迁移成功率。
综上,已经对本主题的特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作可以按照不同的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序,以实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
以上为本说明书一个或多个实施例提供的数据迁移方法,基于同样的思路,本说明书一个或多个实施例还提供一种数据迁移装置。
图3是根据本说明书一具体实施例的一种数据迁移装置的示意性流程图,如图3所示,数据迁移装置300包括:
第一确定模块310,用于在将第一服务器内的待迁移数据段迁移至第二服务器时,确定待迁移数据段的第一数量;及,确定第一服务器对应的满足预设条件的最大迁移量;
第二确定模块320,用于根据第一数量及最大迁移量,确定针对待迁移数据段的迁移策略;其中,迁移策略至少包括迁移次数和/或单次迁移量;
迁移模块330,用于根据迁移策略将待迁移数据段迁移至第二服务器。
在一个实施例中,预设条件包括以下至少一项:
最大迁移量小于或等于第一预设阈值;
当迁移最大迁移量个待迁移数据段时,与第一服务器相关的指定参数的变化值不超过第二预设阈值。
在一个实施例中,第二确定模块320包括:
第一确定单元,用于若第一数量小于或等于最大迁移量,则确定迁移策略为直接将待迁移数据段迁移至第二服务器;
第二确定单元,用于若第一数量大于最大迁移量,则根据第一数量及最大迁移量确定待迁移数据段的迁移次数和/或单次迁移。
在一个实施例中,第二确定单元还用于:
计算第一数量与最大迁移量的商值和/或余数;
根据商值和/或余数确定迁移次数。
在一个实施例中,迁移模块330包括:
创建单元,用于根据第一数量及最大迁移量确定对待迁移数据段的迁移次数之后,创建迁移次数个、用于迁移待迁移数据段的迁移任务;
第三确定单元,用于确定各迁移任务分别对应的单次迁移量,单次迁移量小于或等于最大迁移量;
执行单元,用于根据单次迁移量,分别执行迁移任务。
采用本说明书一个或多个实施例的装置,能够在将第一服务器内的待迁移数据段迁移至第二服务器时,确定待迁移数据段的第一数量及第一服务器对应的满足预设条件的最大迁移量,进而根据第一数量及最大迁移量确定针对待迁移数据段的迁移策略,并根据迁移策略将待迁移数据段迁移至第二服务器。其中,迁移策略至少包括迁移次数和/或单次迁移量。可见,该技术方案在迁移数据段时,并不是简单的一次性完迁移所有数据段,而是充分考虑了待迁移数据段的数量及服务器的最大迁移量,因此能够避免因一次性迁移所有数据段时导致的服务器性能不稳定、甚至停止响应的问题,从而提高数据段的迁移成功率。
本领域的技术人员应可理解,上述数据迁移装置能够用来实现前文的数据迁移方法,其中的细节描述应与前文方法部分描述类似,为避免繁琐,此处不另赘述。
基于同样的思路,本说明书一个或多个实施例还提供一种数据迁移设备,如图4所示。数据迁移设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器401和存储器402,存储器402中可以存储有一个或一个以上存储应用程序或数据。其中,存储器402可以是短暂存储或持久存储。存储在存储器402的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对数据迁移设备中的一系列计算机可执行指令。更进一步地,处理器401可以设置为与存储器402通信,在数据迁移设备上执行存储器402中的一系列计算机可执行指令。数据迁移设备还可以包括一个或一个以上电源403,一个或一个以上有线或无线网络接口404,一个或一个以上输入输出接口405,一个或一个以上键盘406。
具体在本实施例中,数据迁移设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据迁移设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述待迁移数据段的第一数量;及,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括迁移次数和/或单次迁移量;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
可选地,所述预设条件包括以下至少一项:
所述最大迁移量小于或等于第一预设阈值;
当迁移所述最大迁移量个所述待迁移数据段时,与所述第一服务器相关的指定参数的变化值不超过第二预设阈值。
可选地,计算机可执行指令在被执行时,还可以使处理器:
若所述第一数量小于或等于所述最大迁移量,则确定所述迁移策略为直接将所述待迁移数据段迁移至所述第二服务器;
若所述第一数量大于所述最大迁移量,则根据所述第一数量及所述最大迁移量确定所述待迁移数据段的迁移次数和/或单次迁移量。
可选地,计算机可执行指令在被执行时,还可以使处理器:
计算所述第一数量与所述最大迁移量的商值和/或余数;
根据所述商值和/或余数确定所述迁移次数。
可选地,计算机可执行指令在被执行时,还可以使处理器:
所述根据所述第一数量及所述最大迁移量确定对所述待迁移数据段的迁移次数之后,创建所述迁移次数个、用于迁移所述待迁移数据段的迁移任务;
确定各所述迁移任务分别对应的单次迁移量,所述单次迁移量小于或等于所述最大迁移量;
根据所述单次迁移量,分别执行所述迁移任务。
本说明书一个或多个实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行上述数据迁移方法,并具体用于执行:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述待迁移数据段的第一数量;及,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括迁移次数和/或单次迁移量;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅为本说明书一个或多个实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书一个或多个实施例可以有各种更改和变化。凡在本说明书一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例的权利要求范围之内。
Claims (14)
1.一种数据迁移方法,包括:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
2.根据权利要求1所述的方法,所述预设条件还包括以下至少一项:
所述最大迁移量小于或等于第一预设阈值;
当迁移所述最大迁移量个所述待迁移数据段时,与所述第一服务器相关的指定参数的变化值不超过第二预设阈值。
3.根据权利要求1所述的方法,还包括:
在将所述第一服务器内的待迁移数据段迁移至所述第二服务器时,确定所述待迁移数据段的第一数量;
所述根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略,包括:
根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略;所述迁移策略还包括迁移次数。
4.根据权利要求3所述的方法,所述根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略,包括:
若所述第一数量小于或等于所述最大迁移量,则确定所述迁移策略为直接将所述待迁移数据段迁移至所述第二服务器;
若所述第一数量大于所述最大迁移量,则根据所述第一数量及所述最大迁移量确定所述待迁移数据段的迁移次数和/或单次迁移量。
5.根据权利要求4所述的方法,所述根据所述第一数量及所述最大迁移量确定对所述待迁移数据段的迁移次数和/或单次迁移量,包括:
计算所述第一数量与所述最大迁移量的商值和/或余数;
根据所述商值和/或余数确定所述迁移次数。
6.根据权利要求4或5所述的方法,所述根据所述第一数量及所述最大迁移量确定对所述待迁移数据段的迁移次数之后,所述根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器,包括:
创建所述迁移次数个、用于迁移所述待迁移数据段的迁移任务;
确定各所述迁移任务分别对应的单次迁移量,所述单次迁移量小于或等于所述最大迁移量;
根据所述单次迁移量,分别执行所述迁移任务。
7.一种数据迁移装置,包括:
第一确定模块,用于在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
第二确定模块,用于根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
迁移模块,用于根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
8.根据权利要求7所述的装置,所述预设条件还包括以下至少一项:
所述最大迁移量小于或等于第一预设阈值;
当迁移所述最大迁移量个所述待迁移数据段时,与所述第一服务器相关的指定参数的变化值不超过第二预设阈值。
9.根据权利要求7所述的装置,
所述第一确定模块,还用于在将所述第一服务器内的待迁移数据段迁移至所述第二服务器时,确定所述待迁移数据段的第一数量;
所述第二确定模块,还用于根据所述第一数量及所述最大迁移量,确定针对所述待迁移数据段的迁移策略;所述迁移策略还包括迁移次数。
10.根据权利要求9所述的装置,所述第二确定模块包括:
第一确定单元,用于若所述第一数量小于或等于所述最大迁移量,则确定所述迁移策略为直接将所述待迁移数据段迁移至所述第二服务器;
第二确定单元,用于若所述第一数量大于所述最大迁移量,则根据所述第一数量及所述最大迁移量确定所述待迁移数据段的迁移次数和/或单次迁移。
11.根据权利要求10所述的装置,所述第二确定单元还用于:
计算所述第一数量与所述最大迁移量的商值和/或余数;
根据所述商值和/或余数确定所述迁移次数。
12.根据权利要求10或11所述的装置,所述迁移模块包括:
创建单元,用于所述根据所述第一数量及所述最大迁移量确定对所述待迁移数据段的迁移次数之后,创建所述迁移次数个、用于迁移所述待迁移数据段的迁移任务;
第三确定单元,用于确定各所述迁移任务分别对应的单次迁移量,所述单次迁移量小于或等于所述最大迁移量;
执行单元,用于根据所述单次迁移量,分别执行所述迁移任务。
13.一种数据迁移设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
14.一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
在将第一服务器内的待迁移数据段迁移至第二服务器时,确定所述第一服务器对应的满足预设条件的最大迁移量;
根据所述最大迁移量,确定针对所述待迁移数据段的迁移策略;其中,所述迁移策略至少包括单次迁移量;所述单次迁移量小于或等于所述最大迁移量;所述预设条件包括:与所述第一服务器的稳定性相关的指定参数的变化值小于或等于预设阈值;
根据所述迁移策略将所述待迁移数据段迁移至所述第二服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111188799.8A CN113961145B (zh) | 2018-09-11 | 数据迁移方法及装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111188799.8A CN113961145B (zh) | 2018-09-11 | 数据迁移方法及装置 | |
CN201811054720.0A CN109343793B (zh) | 2018-09-11 | 2018-09-11 | 数据迁移方法及装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811054720.0A Division CN109343793B (zh) | 2018-09-11 | 2018-09-11 | 数据迁移方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113961145A true CN113961145A (zh) | 2022-01-21 |
CN113961145B CN113961145B (zh) | 2024-07-12 |
Family
ID=
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105446790A (zh) * | 2014-07-15 | 2016-03-30 | 华为技术有限公司 | 一种虚拟机迁移方法及装置 |
CN107229657A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 数据迁移方法及装置 |
CN107391031A (zh) * | 2017-06-27 | 2017-11-24 | 北京邮电大学 | 一种基于混合存储的计算系统中的数据迁移方法及装置 |
CN108228672A (zh) * | 2016-12-22 | 2018-06-29 | 阿里巴巴集团控股有限公司 | 一种元数据迁移方法、装置、系统及设备 |
CN108469982A (zh) * | 2018-03-12 | 2018-08-31 | 华中科技大学 | 一种容器在线迁移方法 |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105446790A (zh) * | 2014-07-15 | 2016-03-30 | 华为技术有限公司 | 一种虚拟机迁移方法及装置 |
CN107229657A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 数据迁移方法及装置 |
CN108228672A (zh) * | 2016-12-22 | 2018-06-29 | 阿里巴巴集团控股有限公司 | 一种元数据迁移方法、装置、系统及设备 |
CN107391031A (zh) * | 2017-06-27 | 2017-11-24 | 北京邮电大学 | 一种基于混合存储的计算系统中的数据迁移方法及装置 |
CN108469982A (zh) * | 2018-03-12 | 2018-08-31 | 华中科技大学 | 一种容器在线迁移方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109343793A (zh) | 2019-02-15 |
CN109343793B (zh) | 2021-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109343793B (zh) | 数据迁移方法及装置 | |
CN109005125B (zh) | 动态限流方法、装置及系统 | |
CN109658238B (zh) | 数据处理方法及装置 | |
CN110287197B (zh) | 一种数据存储方法、迁移方法及装置 | |
CN110768912A (zh) | Api网关限流方法及装置 | |
CN109669709B (zh) | 一种区块链升级的数据迁移方法及数据迁移系统 | |
CN106897103B (zh) | 一种移动端网络游戏版本快速热更新的方法 | |
CN109032803B (zh) | 数据处理方法和装置、客户端 | |
CN106445677A (zh) | 负载均衡方法及设备 | |
CN110018878B (zh) | 一种分布式系统数据加载方法以及装置 | |
CN107578338B (zh) | 一种业务发布方法、装置及设备 | |
CN109145053B (zh) | 数据处理方法和装置、客户端、服务器 | |
CN115617799A (zh) | 一种数据存储的方法、装置、设备及存储介质 | |
CN107391564B (zh) | 数据转换方法、装置以及电子设备 | |
CN115328924A (zh) | 一种创建表空间的方法、装置、存储介质及电子设备 | |
CN113961145B (zh) | 数据迁移方法及装置 | |
CN107402749B (zh) | 实现图片加载库的方法及装置 | |
CN114253456A (zh) | 一种缓存负载均衡方法和装置 | |
CN111338803A (zh) | 一种线程处理方法和装置 | |
US10901972B2 (en) | Table partition configuration method, apparatus and system for database system | |
CN106202262B (zh) | 一种信息处理方法及电子设备 | |
CN115033551A (zh) | 一种数据库迁移方法、装置、电子设备及存储介质 | |
CN109345300B (zh) | 数据统计方法及装置 | |
CN109753351B (zh) | 一种限时任务处理方法、装置、设备及介质 | |
CN109101514A (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 |