CN111694517B - 分布式数据迁移方法、系统和电子设备 - Google Patents
分布式数据迁移方法、系统和电子设备 Download PDFInfo
- Publication number
- CN111694517B CN111694517B CN202010468771.9A CN202010468771A CN111694517B CN 111694517 B CN111694517 B CN 111694517B CN 202010468771 A CN202010468771 A CN 202010468771A CN 111694517 B CN111694517 B CN 111694517B
- Authority
- CN
- China
- Prior art keywords
- data migration
- migration
- target data
- equipment
- utilization rate
- 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
Links
- 230000005012 migration Effects 0.000 title claims abstract description 508
- 238000013508 migration Methods 0.000 title claims abstract description 508
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000001360 synchronised effect Effects 0.000 claims abstract description 62
- 238000011144 upstream manufacturing Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012544 monitoring process Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 abstract description 21
- 230000006870 function Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/119—Details of migration of file systems
-
- 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
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式数据迁移方法、系统和电子设备,用以解决由数据迁移导致设备的线上服务质量不佳的问题。本方案包括:从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务;根据目标迁移任务确定目标数据迁入设备;向目标数据迁入设备发送同步指令,以指示目标数据迁入设备根据同步指令从目标数据迁出设备同步待迁出数据;获取目标数据迁入设备的同步状态,在目标数据迁入设备的同步状态满足预设同步状态标准时,根据目标数据迁入设备修改待迁出数据的地址指向。通过本方案,能避免数据迁移过程中迁入设备或迁入设备过载,使迁入设备在数据迁移过程中能有资源来提供线上服务,避免数据迁移时对线上服务造成负面影响。
Description
技术领域
本发明涉及分布式存储技术领域,尤其涉及一种分布式数据迁移方法、系统和电子设备。
背景技术
分布式非结构化存储是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。
当系统中由于数据设备损坏,容量平衡、设备搬迁等原因,设备上的的数据将会发生迁移变更。目前,在对分布式非结构化数据进行数据迁移时,通常有两种方式进行,一种为对设备数据采取离线方式迁移数据,另一种为设备数据在线方式进行迁移数据,由于离线迁移需要中断对外服务,因此,在线迁移成为分布式非结构化存储的主流数据迁移方式。
现有的分布式非结构化数据在线迁移技术中,未关注涉及迁移的设备的资源使用情况,即极端情况下在线数据迁移可能造成设备的过载,甚至导致迁移的设备相关的网络链路过载,进而影响在线设备系统的对外服务。
如何避免数据迁移时对线上服务造成负面影响,是本申请所要解决的技术问题。
发明内容
本申请实施例的目的是提供一种分布式数据迁移方法、系统和电子设备,用以解决由数据迁移导致设备的线上服务质量不佳的问题。
第一方面,提供了一种分布式数据迁移方法,包括:
从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,所述迁移任务由数据迁出设备根据待迁出数据生成,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;
根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;
向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据;
获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向。
可选的,所述目标迁移任务包括所述目标数据迁出设备的类型信息;
其中,根据所述目标迁移任务确定目标数据迁入设备,包括:
根据所述目标数据迁出设备的类型信息,将与所述目标数据迁出设备的类型信息相符的至少一个存储设备确定为数据迁入设备,所述数据迁入设备与所述目标数据迁出设备的相似度大于预设相似度阈值;
根据各数据迁入设备的资源使用率,从至少一个所述数据迁入设备中确定所述目标数据迁入设备。
可选的,向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据,包括:
向所述目标数据迁入设备发送包含迁移资源使用率标准的同步指令,以指示所述目标数据迁入设备根据所述迁移资源使用率标准从所述目标数据迁出设备同步所述待迁出数据;
其中,所述迁移资源使用率标准包括以下至少一项:
所述目标数据迁出设备被读取数据时的资源使用率阈值、所述目标数据迁入设备写入数据时的资源使用率阈值。
可选的,在向所述目标数据迁入设备发送同步指令之前,还包括:
监听所述目标数据迁入设备的各同级迁入设备的同步状态,所述目标数据迁入设备的同级迁入设备的上游节点与所述目标数据迁入设备的上游节点相同;
根据各同级迁入设备的同步状态生成总资源使用率,所述总资源使用率用于表征各同级迁入设备执行数据迁移使用的资源量与各同级迁入设备的资源总量的比值;
确认所述总资源使用率小于预设总资源使用率阈值。
可选的,获取所述目标数据迁入设备的同步状态,包括:
根据预设时间周期向所述目标数据迁入设备下发问询指令,以指示所述目标数据迁入设备反馈所述同步状态;或,
接收所述目标数据迁入设备在完成同步后发送的同步状态。
第二方面,提供了一种分布式数据迁移系统,包括:
数据迁出设备,根据待迁出数据生成迁移任务,并将所述迁移任务提交至迁移任务队列中;
控制节点,从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;向所述目标数据迁入设备发送同步指令;获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向;
目标数据迁入设备,根据接收到的同步指令从所述目标数据迁出设备同步所述待迁出数据。
第三方面,提供了一种电子设备,包括:
选取模块,从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,所述迁移任务由数据迁出设备根据待迁出数据生成,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;
确定模块,根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;
发送模块,向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据;
获取模块,获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向。
第四方面,提供了一种电子设备,该电子设备包括处理器、存储器及存储在该存储器上并可在该处理器上运行的计算机程序,该计算机程序被该处理器执行时实现如第一方面该的方法的步骤。
第五方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第一方面该的方法的步骤。
在本申请实施例中,从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,所述迁移任务由数据迁出设备根据待迁出数据生成,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据;获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向。通过本方案,对资源使用率低于第一预设资源使用率的数据迁出设备执行数据迁移,将资源使用率低于第二预设资源使用率的存储设备确定为目标数据迁入设备,能避免数据迁移过程中迁入设备或迁入设备过载,使迁入设备在数据迁移过程中能有资源来提供线上服务,避免数据迁移时对线上服务造成负面影响。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明的一个实施例一种分布式数据迁移方法的流程示意图之一;
图2是本发明的一个实施例一种分布式数据迁移方法的流程示意图之二;
图3是本发明的一个实施例一种分布式数据迁移方法的流程示意图之三;
图4是本发明的一个实施例一种分布式数据迁移方法的流程示意图之四;
图5是本发明的一个实施例一种分布式数据迁移方法的流程示意图之五;
图6是本发明的一个实施例一种分布式数据迁移系统的结构示意图;
图7是本发明的一个实施例一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本申请中附图编号仅用于区分方案中的各个步骤,不用于限定各个步骤的执行顺序,具体执行顺序以说明书中描述为准。
为了解决现有技术中存在的问题,本申请提供一种分布式数据迁移方法,如图1所示,包括以下步骤:
S11:从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,所述迁移任务由数据迁出设备根据待迁出数据生成,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;
S12:根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;
S13:向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据;
S14:获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向。
其中,目标迁移任务是由目标数据迁出设备根据待迁出数据生成的,举例而言,目标数据迁出设备可以将待迁出数据按照一定的规则生成为集合,并以集合的形式生成迁移任务,再将迁移任务放入待迁移任务队列中。
为了便于说明,本申请实施例中的执行主体为控制节点,应理解的是,本实施例提供的方案也可以由其他执行主体执行。
在步骤S11中,控制节点具体可以控制待迁移任务队列中弹出待迁移任务,在弹出的待迁移任务的数据迁出设备的资源使用率低于第一预设资源使用率的情况下,将该待迁移任务作为目标迁移任务执行随后的步骤。
随后,在步骤S12中,根据所述目标迁移任务确定目标数据迁入设备,该目标数据迁入设备用来替换与目标迁移任务相对应的目标数据迁出设备。其中,目标数据迁入设备的资源使用率低于第二预设资源使用率,上述第一预设资源使用率和第二预设资源使用率可以是由人工预先设定的阈值也可以是控制节点或其他设备根据历史参数自动生成的阈值,第一预设资源使用率可以大于、等于或小于第二预设资源使用率。本步骤中,将资源使用率低于第二预设资源使用率的迁入设备确定为目标数据迁入设备,能保证该目标数据迁入设备在执行数据迁移的过程中能有充裕的资源用来提供线上服务,避免数据迁移任务对线上服务功能造成不良影响。而且,所述目标数据迁出设备的资源使用率低于第一预设资源使用率。在目标数据迁入设备的资源使用率低于预设资源使用率,且迁出设备的资源使用率低于预设的数据迁出资源使用率的情况下,能保证迁入设备和迁出设备均有充裕的资源来提供线上服务,随后执行数据迁移的过程中能避免数据迁入设备或者数据迁出设备出现过载的情况,保证用户体验不会受到数据迁移的影响。
接着,在S13中,控制节点向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据。其中,目标数据迁入设备遵循同步指令的要求从目标数据迁出设备同步数据。同步指令中例如可以包括同步操作对资源的消耗量,目标数据迁入设备在执行同步的过程中,资源消耗量不超过同步指令所包含的资源消耗量,这样能保证执行同步的过程中,目标数据迁入设备有充足的资源来提供先上服务,避免对先上服务功能造成不良影响。
最后,在S14中,获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向。具体的,可以通过监听的方式获取目标数据迁入设备的同步状态,在同步执行完成时,即目标数据迁入设备已经同步了目标数据迁出设备中的全部待同步数据,此时可以通过修改数据集合的地址指向的方式来使目标数据迁入设备完全替代目标数据迁出设备,从而完成数据迁移。
通过本方案,将资源使用率低于第二预设资源使用率的设备确定为目标数据迁入设备,能避免数据迁移过程中迁入设备过载,使迁入设备在数据迁移过程中能有资源来提供线上服务。
基于上述实施例提供的方案,可选的,所述目标迁移任务包括所述目标数据迁出设备的类型信息;
其中,如图2所示,上述步骤S12,根据所述目标迁移任务确定目标数据迁入设备,包括以下步骤:
S21:根据所述目标数据迁出设备的类型信息,将与所述目标数据迁出设备的类型信息相符的至少一个存储设备确定为数据迁入设备,所述数据迁入设备与所述目标数据迁出设备的相似度大于预设相似度阈值;
S22:根据各数据迁入设备的资源使用率,从至少一个所述数据迁入设备中确定所述目标数据迁入设备。
举例而言,迁移任务的描述例如为:{task_id_n,group_id,src_dev_addr,src_dev_type}。其中,task_id_n为任务id,多个迁移任务的id可以单调递增。group_id为数据集合名称。src_dev_addr为数据集合源地址。src_dev_type为数据源设备的类型描述。
在步骤S21中,根据迁移任务中的数据迁出设备的类型信息来确定数据迁入设备,使确定的数据迁入设备具有与数据迁出设备相同的类型,保证数据迁入设备能够完全替代数据迁出设备的功能,避免由于类型不同而导致的错误。其中,数据迁入设备与目标数据迁出设备的相似度可以根据数据迁入设备的各种指标参数来确定。例如,根据数据迁入设备的以下至少一项是否与目标数据迁出设备相符确定所述数据迁入设备与目标数据迁出设备的相似度:存储格式、存储容量、与服务相关的计算性能等。
随后,在步骤S22中,从确定出的至少一个数据迁入设备中根据资源使用率确定出目标数据迁入设备,其中,可以将资源使用率最低的数据迁入设备确定为目标数据迁入设备,或者,结合数据迁入设备的其他参数指标来确定目标数据迁入设备。
通过本实施例提供的方案,能根据目标迁移任务确定出目标数据迁入设备,且确定的目标数据迁入设备与目标数据迁出设备的相似度大于预设相似度阈值,且该目标数据迁入设备的类型与目标数据迁出设备的类型相符,从而使数据迁移完毕后,目标数据迁入设备能完全接替目标数据迁出设备的业务,避免由于设备不同而导致无法执行某些业务的问题。
基于上述实施例提供的方案,可选的,如图3所示,上述步骤S13,向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据,包括以下步骤:
S31:向所述目标数据迁入设备发送包含迁移资源使用率标准的同步指令,以指示所述目标数据迁入设备根据所述迁移资源使用率标准从所述目标数据迁出设备同步所述待迁出数据;
其中,所述迁移资源使用率标准包括以下至少一项:
所述目标数据迁出设备被读取数据时的资源使用率阈值、所述目标数据迁入设备写入数据时的资源使用率阈值。
控制节点可以预先为迁入设备用于数据迁移的资源使用率设定最大阈值,具体可以包括迁出设备被读取时的最大资源使用率阈值src_dev_resource_max,也可以包括迁入设备写入时的最大资源使用率阈值dst_dev_resource_max。其中,设备用于数据迁移的资源使用率的最大阈值小于设备拥有资源总量最大阈值,由此来保证设备资源有充裕资源用于提供线上服务,避免设备过载。
另外,还可以集中维护集群设备用于迁移的资源使用率情况,单个设备用于迁移的资源使用率通过集合来维护,包含作为源设备被读取的资源使用率集合src_dev_resource_queue,及作为替换设备被写入的资源使用率集合dst_dev_resource_queue,集合中每个元素为每个迁移任务占用设备的资源使用率描述:单调递增的任务标识task_id及此次任务将要占用的最大资源使用率max_cos_resource。集合累加值为当前设备用于迁移的资源使用率src_dev_resource_cos及dst_dev_resource_cos。
上述迁移指令可以包括以下至少一个参数:同步数据集合groupid,数据集合源设备地址src_addr,本次迁移任务从源设备的最大读取资源使用率:src_max_cos_resource,本次迁移任务向新存储设备写入的最大资源使用率:dst_max_cos_resource。
基于上述实施例提供的方案,可选的,如图4所示,在上述步骤S13,向所述目标数据迁入设备发送同步指令之前,还包括:
S41:监听所述目标数据迁入设备的各同级迁入设备的同步状态,所述目标数据迁入设备的同级迁入设备的上游节点与所述目标数据迁入设备的上游节点相同;
S42:根据各同级迁入设备的同步状态生成总资源使用率,所述总资源使用率用于表征各同级迁入设备执行数据迁移使用的资源量与各同级迁入设备的资源总量的比值;
S43:确认所述总资源使用率小于预设总资源使用率阈值。
在本实施例中,可以对迁出设备和迁入设备的级联设备进行抽象,例如迁出设备上层为节点设备,节点设备上层为机架,机架上层为机房等。在实际应用中,可以对其中一个层级或多个层级设置资源使用率阈值,从而通过监听各同级迁入设备的方式对各个层级逐层控制资源使用率,进一步避免过载的情况,有效保证线上服务质量。这样在数据迁移的过程中,不仅迁入设备和迁出设备不会出现过载现象,而且迁入设备的上游节点、迁出设备的上游节点也不会出现过载现象,能保证集群整体资源使用率稳定不过载。
上述目标数据迁入设备的同级迁入设备可以是与目标数据迁入设备同级的且上联同一个上游节点的设备。资源使用率集合可以表征目标数据迁入设备的同级迁入设备的同步状态,如果出现过载或即将过载的情况,可以根据资源使用率集合来控制同步进度,以保证有充足的资源提供线上功能。
举例而言,可以通过以下方式判断待迁移任务的迁出设备是否处于迁移资源过载状态:判断迁出设备用于迁移的资源使用率src_dev_resource_cos加上此次迁移任务最大资源使用率max_cos_resource是否小于迁出设备被读取时的最大资源使用率阈值src_dev_resource_max。
若大于,即迁出设备处于迁移过载状态,可以将迁移任务插入待迁移队列队尾,任务退出,避免迁出设备过载。若小于或等于,即迁出设备未处于迁移读取过载状态,可以执行迁移任务。另外,可以将此次迁移任务占用设备的资源使用率描述(任务标识task_id及此次任务将要占用的最大资源使用率max_cos_resource)加入到设备资源消耗率集合src_dev_resource_queue中,以对本次迁移的资源使用率进行记录。
为了进一步保证线上功能,避免设备过载,本申请实施例提供的方案在避免单个迁出设备和迁入设备过载的情况下,还对同级别的多个设备执行数据迁移所使用的总资源进行监控。具体可以先利用迁入设备的包含关系找出此次迁移任务涉及的级联设备,并通过上述实施例提供的任一种方式确定出各级级联设备是否过载。如果级联设备存在过载的情况,则可以延迟迁移任务来缓解过载情况。如果各级级联设备未过载,则可以正常执行数据同步。
另外,本实施例提供的方案还可以按集合的形式来记录资源使用率,举例而言,在确定目标迁入设备的过程中,保证目标设备未处于迁移资源使用率过载状态,即dst_dev_resource_cos<dst_dev_resource_max。若所有迁入设备均过载,从迁出设备的迁移资源使用率集合src_dev_resource_queue中将此次迁移任务占用设备的资源使用率描述删除,并将迁移任务插入待迁移任务队列队尾,任务退出,以避免发生过载。若存在未过载的迁入设备,则将未过载的迁入设备确定为目标迁入设备,将此次迁移任务占用设备的资源使用率描述(任务标识task_id及此次任务将要占用的最大资源使用率max_cos_resource)加入到替换设备资源消耗率集合drc_dev_resource_queue中。
另外,在数据同步迁移的过程中,还可以对资源的使用率进行统计,具体可用单位时间内的吞吐量(即速率)来表征上述资源使用率。在用单位时间内的吞吐量来表征时,目标设备可通过如下描述来控制迁移时读取或写入的资源使用率。
目标迁入设备实际读取或写入size大小的数据时,若按照指令接收到的最大资源使用率(速率表征:max_cos_resource)运行,可计算出此size大小的I/O操作,应该消耗的最小时间min_cos_time满足min_cos_time=size/max_cos_resource。
如果此次I/O实际读取或写入时间actually_cos_time小于规则要求的min_cos_time,目标迁入设备在min_cos_time-actually_cos_time时间范围内停止I/O操作,以此来保证从设备读取或写入的最大速率不超过max_cos_resource。
最后,在数据同步完成时,控制节点可以从任务相关设备的资源使用率集合中删除迁移任务占用设备的资源使用率描述,修改数据集合的地址指向。由此,数据集合迁移完成。
可选的,为了保证迁移的灵活性,迁出设备的最大读取资源消耗阈值src_dev_resource_max及迁入设备的最大写入资源消耗阈值dst_dev_resource_max可通过配置方式实现。进程可通过子线程定时读取更新阈值。且每个任务的资源使用率max_cos_resource也可通过配置方式执行,且可设置为相等。
本申请实施例提供的方案能维护集群设备用于迁移的资源使用率,并根据设备用于迁移的资源使用率情况不超过设定阈值的原则,对迁移任务进行资源使用率的分配与回收,当有迁移任务发生时,在保证设备不过载的前提下进行迁移任务的执行,可以保证迁移行为不会影响线上业务。
基于上述实施例提供的方案,可选的,上述步骤S14,获取所述目标数据迁入设备的同步状态,如图5所示,包括以下步骤:
S51:根据预设时间周期向所述目标数据迁入设备下发问询指令,以指示所述目标数据迁入设备反馈所述同步状态;或,
S52:接收所述目标数据迁入设备在完成同步后发送的同步状态。
在本实施例提供的方案中,控制节点可以通过不同方式获取目标数据迁入设备的同步状态。例如,在步骤S51中,可以根据预设时间周期向目标数据迁入设备下发问询指令,根据目标数据迁入设备反馈的同步状态来获取同步进度。或者,控制节点也可以在向所述目标数据迁入设备发送的同步指令中指示目标数据迁入设备在完成同步后上报同步状态,以使控制节点获知目标数据迁入设备已经完成了同步。
通过本实施例提供的方案,控制节点能获知目标数据迁出设备的同步状态,以便在数据同步完成后及时修改地址指向,控制目标数据迁入设备接替目标数据迁出设备的业务。另外,如果目标数据迁入设备没有反馈同步状态,则可能在数据同步的过程中遇到了错误,此时控制节点可以对目标数据迁入设备和目标数据迁出设备进行检测,以确定未完成同步的原因,以便修复同步或重新执行同步。
为了解决现有技术中存在的问题,本申请实施例还提供一种分布式数据迁移系统,如图6所示,包括:
数据迁出设备61,根据待迁出数据生成迁移任务,并将所述迁移任务提交至迁移任务队列中;
控制节点62,从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;向所述目标数据迁入设备发送同步指令;获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向;
目标数据迁入设备63,根据接收到的同步指令从所述目标数据迁出设备同步所述待迁出数据。
为了解决现有技术中存在的问题,本申请实施例还提供一种电子设备,如图7所示,包括:
选取模块71,从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,所述迁移任务由数据迁出设备根据待迁出数据生成,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;
确定模块72,根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;
发送模块73,向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据;
获取模块74,获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向。
优选的,本发明实施例还提供一种电子设备,包括处理器,存储器,存储在存储器上并可在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述一种分布式数据迁移方法实施例的各个过程,且能达到相同的技术效果,此处不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述一种分布式数据迁移方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (9)
1.一种分布式数据迁移方法,其特征在于,包括:
从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,所述迁移任务由数据迁出设备根据待迁出数据生成,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;
根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;
向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据;
获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向;
其中,在向所述目标数据迁入设备发送同步指令之前,还包括:
监听所述目标数据迁入设备的各同级迁入设备的同步状态,所述目标数据迁入设备的同级迁入设备的上游节点与所述目标数据迁入设备的上游节点相同;
根据各同级迁入设备的同步状态生成总资源使用率,所述总资源使用率用于表征各同级迁入设备执行数据迁移使用的资源量与各同级迁入设备的资源总量的比值;
确认所述总资源使用率小于预设总资源使用率阈值。
2.如权利要求1所述的方法,其特征在于,所述目标迁移任务包括所述目标数据迁出设备的类型信息;
其中,根据所述目标迁移任务确定目标数据迁入设备,包括:
根据所述目标数据迁出设备的类型信息,将与所述目标数据迁出设备的类型信息相符的至少一个存储设备确定为数据迁入设备,所述数据迁入设备与所述目标数据迁出设备的相似度大于预设相似度阈值;
根据各数据迁入设备的资源使用率,从至少一个所述数据迁入设备中确定所述目标数据迁入设备。
3.如权利要求1所述的方法,其特征在于,向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据,包括:
向所述目标数据迁入设备发送包含迁移资源使用率标准的同步指令,以指示所述目标数据迁入设备根据所述迁移资源使用率标准从所述目标数据迁出设备同步所述待迁出数据;
其中,所述迁移资源使用率标准包括以下至少一项:
所述目标数据迁出设备被读取数据时的资源使用率阈值、所述目标数据迁入设备写入数据时的资源使用率阈值。
4.如权利要求1~3任一项所述的方法,其特征在于,获取所述目标数据迁入设备的同步状态,包括:
根据预设时间周期向所述目标数据迁入设备下发问询指令,以指示所述目标数据迁入设备反馈所述同步状态。
5.如权利要求1~3任一项所述的方法,其特征在于,获取所述目标数据迁入设备的同步状态,包括:
接收所述目标数据迁入设备在完成同步后发送的同步状态。
6.一种分布式数据迁移系统,其特征在于,包括:
数据迁出设备,根据待迁出数据生成迁移任务,并将所述迁移任务提交至迁移任务队列中;
控制节点,从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;向所述目标数据迁入设备发送同步指令;获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向;
其中,所述控制节点还用于:
监听所述目标数据迁入设备的各同级迁入设备的同步状态,所述目标数据迁入设备的同级迁入设备的上游节点与所述目标数据迁入设备的上游节点相同;根据各同级迁入设备的同步状态生成总资源使用率,所述总资源使用率用于表征各同级迁入设备执行数据迁移使用的资源量与各同级迁入设备的资源总量的比值;确认所述总资源使用率小于预设总资源使用率阈值;
目标数据迁入设备,根据接收到的同步指令从所述目标数据迁出设备同步所述待迁出数据。
7.一种电子设备,其特征在于,包括:
选取模块,从包含至少一个迁移任务的迁移任务队列中选取目标迁移任务,所述迁移任务由数据迁出设备根据待迁出数据生成,其中,所述目标迁移任务是由资源使用率低于第一预设资源使用率的目标数据迁出设备生成的迁移任务;
确定模块,根据所述目标迁移任务确定目标数据迁入设备,所述目标数据迁入设备的资源使用率低于第二预设资源使用率;
发送模块,向所述目标数据迁入设备发送同步指令,以指示所述目标数据迁入设备根据所述同步指令从所述目标数据迁出设备同步所述待迁出数据;
获取模块,获取所述目标数据迁入设备的同步状态,所述同步状态用于表征执行数据同步的进度,在所述目标数据迁入设备的同步状态满足预设同步状态标准时,根据所述目标数据迁入设备修改所述待迁出数据的地址指向;
其中,所述电子设备还用于:
监听所述目标数据迁入设备的各同级迁入设备的同步状态,所述目标数据迁入设备的同级迁入设备的上游节点与所述目标数据迁入设备的上游节点相同;根据各同级迁入设备的同步状态生成总资源使用率,所述总资源使用率用于表征各同级迁入设备执行数据迁移使用的资源量与各同级迁入设备的资源总量的比值;确认所述总资源使用率小于预设总资源使用率阈值。
8.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至5中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010468771.9A CN111694517B (zh) | 2020-05-28 | 2020-05-28 | 分布式数据迁移方法、系统和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010468771.9A CN111694517B (zh) | 2020-05-28 | 2020-05-28 | 分布式数据迁移方法、系统和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111694517A CN111694517A (zh) | 2020-09-22 |
CN111694517B true CN111694517B (zh) | 2024-02-13 |
Family
ID=72478436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010468771.9A Active CN111694517B (zh) | 2020-05-28 | 2020-05-28 | 分布式数据迁移方法、系统和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111694517B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112363678B (zh) * | 2021-01-13 | 2021-04-30 | 北京东方通软件有限公司 | 一种基于消息中间件的数据迁移方法及系统 |
CN113849160B (zh) * | 2021-09-24 | 2023-11-14 | 苏州浪潮智能科技有限公司 | 编译任务的动态迁移方法、装置、电子设备及存储介质 |
CN115277710A (zh) * | 2022-05-31 | 2022-11-01 | 马上消费金融股份有限公司 | 资源管理方法、装置、电子设备以及存储介质 |
CN117640629A (zh) * | 2022-08-17 | 2024-03-01 | 维沃移动通信有限公司 | 算力任务迁移方法、装置及设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077082A (zh) * | 2013-01-08 | 2013-05-01 | 中国科学院深圳先进技术研究院 | 一种数据中心负载分配及虚拟机迁移节能方法及系统 |
WO2016141702A1 (zh) * | 2015-03-10 | 2016-09-15 | 中兴通讯股份有限公司 | 分布式系统中元数据的迁移方法及装置 |
CN106844417A (zh) * | 2016-11-21 | 2017-06-13 | 深圳市深信服电子科技有限公司 | 基于文件目录的热迁移方法及装置 |
CN108924202A (zh) * | 2018-06-25 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种分布式集群的数据容灾方法以及相关装置 |
CN109656711A (zh) * | 2018-10-30 | 2019-04-19 | 山东超越数控电子股份有限公司 | 一种基于服务器集群的动态电源管理方法及系统 |
CN110245125A (zh) * | 2019-05-20 | 2019-09-17 | 中国平安人寿保险股份有限公司 | 数据迁移方法、装置、计算机设备和存储介质 |
CN110297813A (zh) * | 2019-05-22 | 2019-10-01 | 平安银行股份有限公司 | 数据迁移方法、装置、计算机设备及存储介质 |
CN110737717A (zh) * | 2018-07-03 | 2020-01-31 | 北京国双科技有限公司 | 一种数据库迁移方法及装置 |
CN111190701A (zh) * | 2020-01-09 | 2020-05-22 | 奇安信科技集团股份有限公司 | 一种虚拟化平台数据迁移完整性检测的方法和装置 |
-
2020
- 2020-05-28 CN CN202010468771.9A patent/CN111694517B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077082A (zh) * | 2013-01-08 | 2013-05-01 | 中国科学院深圳先进技术研究院 | 一种数据中心负载分配及虚拟机迁移节能方法及系统 |
WO2016141702A1 (zh) * | 2015-03-10 | 2016-09-15 | 中兴通讯股份有限公司 | 分布式系统中元数据的迁移方法及装置 |
CN106844417A (zh) * | 2016-11-21 | 2017-06-13 | 深圳市深信服电子科技有限公司 | 基于文件目录的热迁移方法及装置 |
CN108924202A (zh) * | 2018-06-25 | 2018-11-30 | 郑州云海信息技术有限公司 | 一种分布式集群的数据容灾方法以及相关装置 |
CN110737717A (zh) * | 2018-07-03 | 2020-01-31 | 北京国双科技有限公司 | 一种数据库迁移方法及装置 |
CN109656711A (zh) * | 2018-10-30 | 2019-04-19 | 山东超越数控电子股份有限公司 | 一种基于服务器集群的动态电源管理方法及系统 |
CN110245125A (zh) * | 2019-05-20 | 2019-09-17 | 中国平安人寿保险股份有限公司 | 数据迁移方法、装置、计算机设备和存储介质 |
CN110297813A (zh) * | 2019-05-22 | 2019-10-01 | 平安银行股份有限公司 | 数据迁移方法、装置、计算机设备及存储介质 |
CN111190701A (zh) * | 2020-01-09 | 2020-05-22 | 奇安信科技集团股份有限公司 | 一种虚拟化平台数据迁移完整性检测的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111694517A (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111694517B (zh) | 分布式数据迁移方法、系统和电子设备 | |
CN108632365B (zh) | 服务资源调整方法、相关装置和设备 | |
CN106339386B (zh) | 数据库弹性调度方法以及装置 | |
CN110399102B (zh) | 分布式存储系统的数据写入方法、装置、设备及存储介质 | |
CN110515724B (zh) | 资源配置方法、装置、监视器及机器可读存储介质 | |
EP3758325A1 (en) | Traffic limiting method and system | |
CN104092756A (zh) | 一种基于dht机制的云存储系统的资源动态分配方法 | |
CN113032102B (zh) | 资源重调度方法、装置、设备和介质 | |
CN111400041A (zh) | 服务器配置文件的管理方法、装置及计算机可读存储介质 | |
CN115396377B (zh) | 对象存储的服务质量优化方法、装置、设备及存储介质 | |
CN115794337A (zh) | 资源调度方法、装置、云平台、设备及存储介质 | |
JP6191695B2 (ja) | 仮想リソース制御システムおよび仮想リソース制御方法 | |
CN113760461B (zh) | 一种版本升级方法及计算机可读存储介质 | |
CN113364701B (zh) | 基于rtt的结合比例积分微分控制的拥塞控制方法及设备 | |
CN113760549A (zh) | 一种pod部署方法及装置 | |
WO2024088078A1 (zh) | 一种带宽调节方法、系统、设备及存储介质 | |
CN116483546B (zh) | 分布式训练任务调度方法、装置、设备及存储介质 | |
CN111506254B (zh) | 分布式存储系统及其管理方法、装置 | |
CN107766156B (zh) | 任务处理方法及装置 | |
CN104468674B (zh) | 数据迁移方法及装置 | |
CN115878303A (zh) | 一种资源调度方法、装置及电子设备 | |
CN114090201A (zh) | 资源调度方法、装置、设备及存储介质 | |
CN114546631A (zh) | 任务调度方法、控制方法、核心、电子设备、可读介质 | |
CN114064226A (zh) | 容器集群的资源调协方法、调协装置及存储介质 | |
CN109842683A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230315 Address after: Room 501-502, 5/F, Sina Headquarters Scientific Research Building, Block N-1 and N-2, Zhongguancun Software Park, Dongbei Wangxi Road, Haidian District, Beijing, 100193 Applicant after: Sina Technology (China) Co.,Ltd. Address before: 100193 7th floor, scientific research building, Sina headquarters, plot n-1, n-2, Zhongguancun Software Park, Dongbei Wangxi Road, Haidian District, Beijing, 100193 Applicant before: Sina.com Technology (China) Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |