WO2019119332A1 - 一种面向异构存储的Spark任务动态迁移方法和系统 - Google Patents

一种面向异构存储的Spark任务动态迁移方法和系统 Download PDF

Info

Publication number
WO2019119332A1
WO2019119332A1 PCT/CN2017/117598 CN2017117598W WO2019119332A1 WO 2019119332 A1 WO2019119332 A1 WO 2019119332A1 CN 2017117598 W CN2017117598 W CN 2017117598W WO 2019119332 A1 WO2019119332 A1 WO 2019119332A1
Authority
WO
WIPO (PCT)
Prior art keywords
task
node
migrated
target
variable
Prior art date
Application number
PCT/CN2017/117598
Other languages
English (en)
French (fr)
Inventor
毛睿
陆敏华
陆克中
朱金彬
隋秀峰
Original Assignee
深圳大学
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 深圳大学 filed Critical 深圳大学
Priority to PCT/CN2017/117598 priority Critical patent/WO2019119332A1/zh
Publication of WO2019119332A1 publication Critical patent/WO2019119332A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt

Definitions

  • the invention belongs to the field of computer technology, and in particular relates to a method and system for dynamically migrating a Spark task for heterogeneous storage.
  • Spark is an efficient big data computing framework widely used in the industry. Deploying Spark to a high-performance computing cluster can effectively improve Spark's big data processing efficiency.
  • the High Performance Computing Cluster (HPC Cluster) is based on a combination of Solid State Drives (SSD) and Hard Disk Drive (HDD) by configuring different storage devices for different compute nodes. Distributed file systems and compute clusters. High-performance computing clusters combine the high-speed read, write, and high-throughput features of SSDs with the high-capacity, low-cost features of HDDs to achieve efficient storage and computing power while preserving storage and computing costs. In order to achieve fault tolerance of the system, the cluster usually adopts a strategy of storing multiple copies of data.
  • the management system of the cluster usually matches the use of SSD and HDD reasonably.
  • the typical usage strategy is to store a copy of the data in the SSD node. Other copies are stored on the HDD node.
  • Figure 6 it shows the topology of an existing high performance computing cluster based on SSD and HDD hybrid storage.
  • the current Spark task allocation strategy is based on the location of the operation data, assigning the task to the computing node storing the task operation data, and deploying the task and data to the same computing node, thereby avoiding remote reading of data and realizing data. Local processing.
  • the data of the task operation may be stored in both the SSD node and the HDD node. Due to the busy computing resources of the SSD node storing the task operation data, the task may not be assigned to the ideal SSD node and can only be assigned to An HDD node that stores operational data or other nodes that do not have memory operation data; at the same time, during the execution of the task, the ideal SSD node may already have idle computing resources, but the existing task migration method is not ideal. The idle resource of the SSD node performs a task migration operation. Therefore, the existing Spark task migration method, which requires remote or local disk read operations of data to be executed at the HDD node, causes huge network and I/O delays, which seriously affects the execution efficiency of the Spark application.
  • the technical problem to be solved by the present invention is to provide a Spark task dynamic migration method and system for heterogeneous storage, which aims to solve the problem of optimizing the execution efficiency of the existing Spark application.
  • the present invention provides a Spark task migration method for heterogeneous storage, and the method includes:
  • the preset condition is that the data needs to be accessed remotely, the task completion progress is less than a preset threshold, and the operation data is stored in the configured non-local node.
  • the target task If the target task is detected, determining, from the node that has stored the operation data of the target task, that the idle resource meets the requirement of the corresponding task, and the node belonging to the SSD node variable is the target node to be migrated, and determining the location
  • the task corresponding to the target node to be migrated in the target task is regarded as a task to be migrated;
  • the task to be migrated is migrated to the corresponding target node to be migrated.
  • the preset condition is that the data needs to be accessed remotely, the task completion progress is less than a preset threshold, and the operation data is stored in the configured
  • the specific non-local nodes include:
  • the operation data of the extraction task is stored in the non-local node, and the task whose task completion progress is less than the preset threshold is saved to the migratable task variable;
  • Extracting the migratable task variable, the operation data of the task is stored in the non-local node, and the non-local node has configured the task, and the extracted task is saved as a scheduled migration task to the planned migration task variable;
  • the node storing the operational data of the task of the planned migration is saved as a target node of the planned migration to the planned migration target node variable.
  • Extracting, from the target node of the planned migration, a node whose idle resource meets the corresponding task requirement and belongs to the SSD node variable is used as a target node to be migrated, and is saved to the target node variable to be migrated;
  • the task corresponding to the target node to be migrated is extracted as the task to be migrated and saved to the task variable to be migrated.
  • the migrating the task to be migrated to the corresponding target node to be migrated specifically includes:
  • the node that is performing the task suspends the task and sends the task to the corresponding target node.
  • the method further includes: dynamically monitoring the idle resource information of each node.
  • the present invention further provides a Spark task migration system for heterogeneous storage, the system comprising:
  • the storage characteristic statistics module is configured to save the nodes included in the cluster to the SSD node variable and the mechanical hard disk node variable according to the storage feature of the storage device;
  • the resource filtering module is configured to monitor whether a target task that meets a preset condition exists in a task being executed in the cluster, where the preset condition is that the data needs to be accessed remotely, the task completion progress is less than a preset threshold, and the operation data is stored in the Configured in a non-local node;
  • the resource filtering module is further configured to: if a target task is detected, determine, from a node that has stored operation data of the target task, that the idle resource satisfies a requirement of the corresponding task, and the node that belongs to the SSD node variable a target node to be migrated, and determining a task corresponding to the target node to be migrated in the target task as a task to be migrated;
  • a scheduling module configured to migrate the task to be migrated to the corresponding target node to be migrated.
  • resource filtering module is specifically configured to:
  • the operation data of the extraction task is stored in the non-local node, and the task whose task completion progress is less than the preset threshold is saved to the migratable task variable;
  • Extracting the migratable task variable, the operation data of the task is stored in the non-local node, and the non-local node has configured the task, and the extracted task is saved as a scheduled migration task to the planned migration task variable;
  • the node storing the operational data of the task of the planned migration is saved as a target node of the planned migration to the planned migration target node variable.
  • resource filtering module is specifically configured to:
  • Extracting, from the target node of the planned migration, a node whose idle resource meets the corresponding task requirement and belongs to the SSD node variable is used as a target node to be migrated, and is saved to the target node variable to be migrated;
  • the task corresponding to the target node to be migrated is extracted as the task to be migrated and saved to the task variable to be migrated.
  • scheduling module is specifically configured to:
  • the node that is performing the task suspends the task and sends the task to the corresponding target node.
  • the resource filtering module is further configured to dynamically monitor idle resource information of each node.
  • the invention has the following advantages:
  • the Spark task dynamic migration method for heterogeneous storage dynamically migrates the task to the SSD node when the SSD storing the operational data has idle computing resources during the execution of the task.
  • the use of solid-state hard disk node high-speed read and write features can still accelerate the execution of tasks and improve the execution efficiency of Spark applications.
  • FIG. 1 is a flowchart of a method for migrating a Spark task for heterogeneous storage according to a first embodiment of the present invention
  • step S102 is a detailed flowchart of step S102 in a method for migrating a Spark task for heterogeneous storage according to the first embodiment of the present invention
  • FIG. 3 is a detailed flowchart of step S103 in the Spark task migration method for heterogeneous storage according to the first embodiment of the present invention
  • FIG. 4 is a schematic diagram of a Spark task migration system for heterogeneous storage according to a second embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a Spark task migration framework according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a topology structure of a high performance computing cluster based on SSD and HDD hybrid storage according to an embodiment of the present invention.
  • the present invention provides a method for migrating a Spark task for heterogeneous storage, and the method includes:
  • Step S101 Save the nodes included in the cluster to the SSD node variable and the mechanical hard disk node variable according to the storage characteristics of the storage device.
  • the storage feature identifiers of the storage devices configured by the nodes in the cluster are first obtained, and the nodes included in the cluster are respectively saved to the SSD node variable DNssd and the mechanical hard disk node variable according to whether the storage feature identifier is SSD or HDD.
  • DNhdd. DNssd ⁇ ..., dni, ...
  • DNhdd ⁇ ..., dnj, ... ⁇ , DNssd contains the node whose storage device ID is SSD in the cluster, and DNhdd contains the node whose storage device ID is HDD in the cluster.
  • Step S102 Monitor whether there is a target task that meets a preset condition in the task being executed in the cluster, where the preset condition refers to that the data needs to be accessed remotely, the task completion progress is less than a preset threshold, and the operation data is stored in the configured non-configuration.
  • step S102 includes the following steps S201-S204:
  • Step S201 Monitor whether the task completion progress and the operation data of the task being executed in the cluster are stored in the local node (that is, whether the task needs to remotely read data).
  • s1 0.75, indicating that task t1 has completed 75%.
  • Step S202 The operation data of the extraction task is stored in the non-local node, and the task whose task completion progress is less than the preset threshold is saved to the migratable task variable.
  • the preset threshold is set according to actual needs
  • the task information is saved to the migratable task.
  • TASKremote it can be confirmed by step S202 that these tasks are necessary for the task migration operation.
  • the task completion progress is less than the preset threshold, indicating that the task has a limited progress, and may be considered for migration. If the task completion progress is greater than the preset threshold, indicating that the task has been executed quickly, there is no need to migrate the task at this time.
  • Step S203 Extracting, in the migratable task variable, the operation data of the task is stored in the non-local node, and the non-local node has configured the task, and the extracted task is saved as a scheduled migration task to the planned migration task variable.
  • the operation data of which tasks are judged and extracted from the migratable task variable TASKremote although not stored in the local node, but stored in other configured nodes, saves the task information to the migration task variable TASKtrue.
  • Step S204 Save the node storing the operation data of the scheduled migration task as the target node of the planned migration to the planned migration target node variable.
  • the planned migration target node variable is DNtrue.
  • Step S103 If the target task is detected, determining, from the node that has stored the operation data of the target task, that the idle resource satisfies the requirement of the corresponding task, and the node that belongs to the SSD node variable is the target node to be migrated. And determining, as the task to be migrated, the task corresponding to the target node to be migrated in the target task. Specifically, as shown in FIG. 3, step S103 includes the following steps S301-S302:
  • Step S301 Extracting, from the target node that is planned to be migrated, the node whose idle resource meets the corresponding task requirement and belongs to the SSD node variable is the target node to be migrated, and saves it to the target node variable to be migrated.
  • the node in the DNtrue that satisfies the corresponding task requirement (determined by the variable DNavail) and is configured with the SSD (determined by using the SSD node variable DNssd) is determined and extracted as the target to be migrated.
  • the node is saved to the target node variable DNneed to be migrated.
  • Step S302 Extract the task corresponding to the target node to be migrated in the task to be migrated as the task to be migrated, and save the task to be migrated.
  • the task corresponding to the node in the DNneed is extracted from the task in TASKtrue, and these tasks are regarded as tasks to be migrated, and are saved to the task variable TASKnedd to be migrated.
  • Step S104 The task to be migrated is migrated to the corresponding target node to be migrated.
  • the step S104 specifically includes: cyclically extracting a task in the task variable to be migrated, and a target node corresponding to the task in the target node variable to be migrated; sending a task migration instruction to the node that is performing the task, and The target node information corresponding to the task; the node that is executing the task suspends the task, and sends the task to the corresponding target node.
  • step S104 the scheduling module acquires the task variable TASKnedd to be migrated and the target node variable DNneed to be migrated by the resource filtering module module. Loop extracting the task in TASKnedd and its corresponding target node saved in DNneed, defining variables ttrans and dntgt, respectively for saving the aforementioned task and corresponding target node; sending a migration instruction to task ttrans to the node that is executing task ttrans At the same time, specify the target node dntgt that should be migrated; after receiving the task ttrans migration instruction, the node that is performing task ttrans suspends the task ttrans and saves the task running environment, and then compresses and packages the virtual machine that performs the task. Finally, the virtual machine package is sent to the target node dntgt. After receiving the virtual machine package, the target node dntgt decompresses it and continues to perform the task
  • the method further includes step S105: dynamically monitoring idle resource information of each node.
  • the Spark task dynamic migration method for heterogeneous storage provided by the first embodiment of the present invention dynamically migrates the running task to the SSD node storing the operation data, and maximizes the task.
  • Migrating to a compute node configured with SSDs you can take advantage of SSD high-speed read and write features, speed up task execution, improve cluster service quality, and improve Spark application execution efficiency.
  • the present invention provides a Spark task migration system for heterogeneous storage, and the system includes:
  • the storage characteristic statistics module 101 is configured to save the nodes included in the cluster to the solid state disk node variable and the mechanical hard disk node variable according to the storage feature of the storage device.
  • the storage feature identifiers of the storage devices configured by the nodes in the cluster are first obtained, and the nodes included in the cluster are respectively saved to the SSD node variable DNssd and the mechanical hard disk node variable according to whether the storage feature identifier is SSD or HDD.
  • DNhdd. DNssd ⁇ ..., dni, ...
  • DNhdd ⁇ ..., dnj, ... ⁇ , DNssd contains the node whose storage device ID is SSD in the cluster, and DNhdd contains the node whose storage device ID is HDD in the cluster.
  • the resource filtering module 102 is configured to monitor whether a target task that meets a preset condition exists in a task being executed in the cluster, where the preset condition is that the data needs to be accessed remotely, the task completion progress is less than a preset threshold, and the operation data is stored in the Configured in a non-local node. Specifically, at this time, the resource filtering module 102 specifically performs the implementation steps as follows: S201-S204:
  • Step S201 Monitor whether the task completion progress and the operation data of the task being executed in the cluster are stored in the local node (that is, whether the task needs to remotely read data).
  • Step S202 The operation data of the extraction task is stored in the non-local node, and the task whose task completion progress is less than the preset threshold is saved to the migratable task variable.
  • the preset threshold is set according to actual needs
  • the task information is saved to the migratable task.
  • TASKremote it can be confirmed by step S202 that these tasks are necessary for the task migration operation.
  • the task completion progress is less than the preset threshold, indicating that the task has a limited progress, and may be considered for migration. If the task completion progress is greater than the preset threshold, indicating that the task has been executed quickly, there is no need to migrate the task at this time.
  • Step S203 Extracting, in the migratable task variable, the operation data of the task is stored in the non-local node, and the non-local node has configured the task, and the extracted task is saved as a scheduled migration task to the planned migration task variable.
  • the operation data of which tasks are judged and extracted from the migratable task variable TASKremote although not stored in the local node, but stored in other configured nodes, saves the task information to the migration task variable TASKtrue.
  • Step S204 Save the node storing the operation data of the scheduled migration task as the target node of the planned migration to the planned migration target node variable.
  • the planned migration target node variable is DNtrue.
  • the resource filtering module 102 is further configured to: if the target task is detected, determine, from the node that has stored the operation data of the target task, that the idle resource meets the requirement of the corresponding task, and the node that belongs to the SSD node variable A target node to be migrated, and a task corresponding to the target node to be migrated in the target task is determined as a task to be migrated.
  • the resource filtering module 102 specifically performs the implementation steps as follows: S301-S302:
  • Step S301 Extracting, from the target node that is planned to be migrated, the node whose idle resource meets the corresponding task requirement and belongs to the SSD node variable is the target node to be migrated, and saves it to the target node variable to be migrated.
  • the node in the DNtrue that satisfies the corresponding task requirement (determined by the variable DNavail) and is configured with the SSD (determined by using the SSD node variable DNssd) is determined and extracted as the target to be migrated.
  • the node is saved to the target node variable DNneed to be migrated.
  • Step S302 Extract the task corresponding to the target node to be migrated in the task to be migrated as the task to be migrated, and save the task to be migrated.
  • the task corresponding to the node in the DNneed is extracted from the task in TASKtrue, and these tasks are regarded as tasks to be migrated, and are saved to the task variable TASKnedd to be migrated.
  • the scheduling module 103 is configured to migrate the task to be migrated to the corresponding target node to be migrated.
  • the scheduling module 103 is specifically configured to: cyclically extract a task in the task variable to be migrated, and a target node corresponding to the task in the target node variable to be migrated; send a task migration instruction to a node that is performing the task, and The target node information corresponding to the task; the node that is performing the task suspends the task, and sends the task to the corresponding target node.
  • the scheduling module 103 is specifically implemented as follows: the scheduling module acquires the task variable TASKnedd to be migrated and the target node variable DNneed to be migrated by the resource filtering module module. Loop extracting the task in TASKnedd and its corresponding target node saved in DNneed, defining variables ttrans and dntgt, respectively for saving the aforementioned task and corresponding target node; sending a migration instruction to task ttrans to the node that is executing task ttrans At the same time, specify the target node dntgt that should be migrated; after receiving the task ttrans migration instruction, the node that is performing task ttrans suspends the task ttrans and saves the task running environment, and then compresses and packages the virtual machine that performs the task. Finally, the virtual machine package is sent to the target node dntgt. After receiving the virtual machine package, the target node dntgt decompresses it and continues to perform the
  • the resource filtering module 102 is further configured to dynamically monitor idle resource information of each node.
  • the Spark task dynamic migration system for heterogeneous storage dynamically migrates the running task to the SSD node storing the operation data through each module.
  • the tasks are migrated to the compute nodes configured with SSDs, so that the SSD high-speed read and write features can be fully utilized, the task execution speed can be accelerated, the service quality of the cluster can be improved, and the execution efficiency of the Spark application can be improved.

Landscapes

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

Abstract

一种面向异构存储的Spark任务动态迁移方法和系统。该方法,在任务的执行过程中,当存储有其操作数据的固态硬盘节点存在空闲的计算资源时,将该任务动态地迁移至该固态硬盘节点上,利用固态硬盘节点高速读写的特性,仍可加速任务的执行,提升Spark应用程序的执行效率。

Description

一种面向异构存储的Spark任务动态迁移方法和系统
本发明属于计算机技术领域,尤其涉及一种面向异构存储的Spark任务动态迁移方法和系统。
Spark是目前产业界广泛使用的高效的大数据计算框架,将Spark部署到高性能计算集群中可有效地提升Spark的大数据处理效率。高性能计算集群(High Performance Computing Cluster,HPC Cluster)是通过对不同的计算节点配置不同的存储设备,搭建了基于固态硬盘(Solid State Drives,SSD)和机械硬盘(Hard Disk Drive,HDD)混合的分布式文件系统和计算集群。高性能计算集群综合利用SSD的高速读、写和高吞吐率的特性以及HDD的大容量、廉价的特性,在保证存储和计算成本的前提下,实现了集群存储和计算能力的有效提升。为了实现系统的容错功能,集群通常采用一块数据存储多个副本的策略,即集群的管理系统通常会合理地搭配SSD和HDD的使用,其中典型的使用策略是将数据的一个副本存储在SSD节点,其它副本存储在HDD节点。如图6所示,其展示了现有的基于SSD和HDD混合存储的高性能计算集群的拓扑结构。
当前Spark的任务分配策略是基于操作数据的位置,将任务分配到存储有该任务操作数据的计算节点,将任务和数据部署到同一计算节点,从而避免了数据的远程读取,实现了数据的本地处理。任务操作的数据可能同时存储在SSD节点和HDD节点,由于存储有该任务操作数据的SSD节点计算资源忙碌等原因,往往会导致该任务无法被分配到理想的SSD节点上,只能被分配到存储有操作数据的HDD节点或没有存储器操作数据的其他节点;同时,在任务的执行过程中,其理想的SSD节点可能已经存在空闲的计算资源,但是现有的任务迁移方法并没有针对理想的SSD节点的空闲资源执行任务迁移操作。因此,现有的Spark任务迁移方法,由于需要进行数据的远程或本地磁盘读取操作一直在HDD节点执行,会带来巨大的网络和I/O延迟,从而严重影响Spark应用程序的执行效率。
发明内容
本发明所要解决的技术问题为提供一种面向异构存储的Spark任务动态迁移方法和系统,旨在解决优化现有的Spark应用程序的执行效率低的问题。
为解决上述技术问题,本发明是这样实现的,本发明提供了一种面向异构存储的Spark任务迁移方法,所述方法包括:
按照存储设备的存储特征将集群中所包含的节点分别保存至固态硬盘节点变量和机械硬盘节点变量;
监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中;
若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务;
将所述待迁移的任务迁移至对应的所述待迁移的目标节点。
进一步地,所述监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中具体包括:
监测集群中正在执行的任务完成进度和任务的操作数据是否存储在本地节点;
提取任务的操作数据存储在非本地节点、且任务完成进度小于预设阈值的任务保存至可迁移任务变量;
提取所述可迁移任务变量中,任务的操作数据存储在非本地节点、且所述非本地节点已配置的任务,将提取的所述任务作为计划迁移的任务保存至计划迁移任务变量;
将存储有所述计划迁移的任务的操作数据的节点作为计划迁移的目标节点保存至计划迁移目标节点变量。
进一步地,所述若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务具体包括:
提取所述计划迁移的目标节点中,空闲资源满足对应任务需求、且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并保存至待迁移目标节点变量;
提取所述计划迁移的任务中与所述待迁移的目标节点对应的任务作为待迁移的任务,并保存至待迁移任务变量。
进一步地,所述将所述待迁移的任务迁移至对应的所述待迁移的目标节点具体包括:
循环提取所述待迁移任务变量中的任务、及所述待迁移目标节点变量中与所述任务对应的目标节点;
向正在执行所述任务的节点发送任务迁移指令及所述任务对应的目标节点信息;
所述正在执行所述任务的节点挂起所述任务,并将所述任务发送至所述对应的目标节点。
进一步地,在所述若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务之前,所述方法还包括:动态监测各节点的空闲资源信息。
为了解决上述技术问题,本发明还提供了一种面向异构存储的Spark任务迁移系统,所述系统包括:
存储特性统计模块,用于按照存储设备的存储特征将集群中所包含的节点分别保存至固态硬盘节点变量和机械硬盘节点变量;
资源过滤模块,用于监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中;
所述资源过滤模块,还用于若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务;
调度模块,用于将所述待迁移的任务迁移至对应的所述待迁移的目标节点。
进一步地,所述资源过滤模块具体用于:
监测集群中正在执行的任务完成进度和任务的操作数据是否存储在本地节点;
提取任务的操作数据存储在非本地节点、且任务完成进度小于预设阈值的任务保存至可迁移任务变量;
提取所述可迁移任务变量中,任务的操作数据存储在非本地节点、且所述非本地节点已配置的任务,将提取的所述任务作为计划迁移的任务保存至计划迁移任务变量;
将存储有所述计划迁移的任务的操作数据的节点作为计划迁移的目标节点保存至计划迁移目标节点变量。
进一步地,所述资源过滤模块具体还用于:
提取所述计划迁移的目标节点中,空闲资源满足对应任务需求、且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并保存至待迁移目标节点变量;
提取所述计划迁移的任务中与所述待迁移的目标节点对应的任务作为待迁移的任务,并保存至待迁移任务变量。
进一步地,所述调度模块具体用于:
循环提取所述待迁移任务变量中的任务、及所述待迁移目标节点变量中与所述任务对应的目标节点;
向正在执行所述任务的节点发送任务迁移指令及所述任务对应的目标节点信息;
所述正在执行所述任务的节点挂起所述任务,并将所述任务发送至所述对应的目标节点。
进一步地,所述资源过滤模块还用于动态监测各节点的空闲资源信息。
本发明与现有技术相比,有益效果在于:
本发明提供的面向异构存储的Spark任务动态迁移方法,在任务的执行过程中,当存储有其操作数据的固态硬盘节点存在空闲的计算资源时,将该任务动态地迁移至该固态硬盘节点上,利用固态硬盘节点高速读写的特性,仍可加速任务的执行,提升Spark应用程序的执行效率。
附图说明
图1是本发明第一个实施例提供的一种面向异构存储的Spark任务迁移方法流程图;
图2是本发明第一个实施例提供的一种面向异构存储的Spark任务迁移方法中步骤S102的细化流程图;
图3是本发明第一个实施例提供的一种面向异构存储的Spark任务迁移方法中步骤S103的细化流程图;
图4是本发明第二个实施例提供的一种面向异构存储的Spark任务迁移系统示意图;
图5是本发明实施例提供的一种Spark任务迁移框架示意图;
图6是本发明实施例提供的现有的基于SSD和HDD混合存储的高性能计算集群的拓扑结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
作为本发明的第一个实施例,如图1和图5所示,本发明提供的一种面向异构存储的Spark任务迁移方法,该方法包括:
步骤S101:按照存储设备的存储特征将集群中所包含的节点分别保存至固态硬盘节点变量和机械硬盘节点变量。在本实施例中,首先获取集群中各节点所配置的存储设备的存储特征标识,按存储特征标识是SSD还是HDD将集群中所包含的节点分别保存至固态硬盘节点变量DNssd和机械硬盘节点变量DNhdd。其中,DNssd = {…, dni, … },DNhdd = {…, dnj, …},DNssd包含了集群中存储设备标识为SSD的节点, DNhdd包含了集群中存储设备标识为HDD的节点。
步骤S102:监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中。具体地,如图2所示,步骤S102包括如下步骤S201-S204:
步骤S201:监测集群中正在执行的任务完成进度和任务的操作数据是否存储在本地节点(即任务是否需要远程读取数据)。在本实施例中,步骤S201具体实现过程如下:获取当前正在的任务的运行状态信息,包括任务的完成进度和该任务是否需要进行远程数据的访问。任务进度的获取:向Driver端获取任务的完成进度,定义变量TASKs={t1, t2, t3, …, tm},用于保存和管理当前执行的任务。定义变量STATUSt={s1, s2, s3, …, sm},用于记录当前执行的任务完成进度。例如,s1= 0.75,表示任务t1已经完成75%。任务读取数据的特征获取:向Worker端获取任务是否需要进行远程数据的访问,定义变量IFLOCALt={l1, l2, l3, …, lm},用于记录当前运行的任务的数据访问特征。例如l1=1,表示任务t1需要远程访问数据,l2=0则表示任务t2操作的数据存储在本地。
步骤S202:提取任务的操作数据存储在非本地节点、且任务完成进度小于预设阈值的任务保存至可迁移任务变量。本实施例中,首先判断并提取哪些任务需要进行远程读取数据、且任务完成进度小于预设阈值(该预设阈值根据实际需要进行设定)的任务,将这些任务信息保存至可迁移任务变量TASKremote中,从而通过步骤S202可确认这些任务是有必要做任务迁移操作的。
需要说明的是,任务完成进度小于预设阈值,说明该任务完成进度有限,可以考虑对其进行迁移。如果任务完成进度大于预设阈值,说明该任务已经快执行完成,则此时没有必要再对该任务进行迁移。
步骤S203:提取所述可迁移任务变量中,任务的操作数据存储在非本地节点、且所述非本地节点已配置的任务,将提取的所述任务作为计划迁移的任务保存至计划迁移任务变量。本实施例中,从可迁移任务变量TASKremote中判断并提取哪些任务的操作数据虽然不是存储在本地节点,但存储在其它已配置的节点中,将这些任务信息保存至迁移任务变量TASKtrue。
步骤S204:将存储有所述计划迁移的任务的操作数据的节点作为计划迁移的目标节点保存至计划迁移目标节点变量。本实施例中,计划迁移目标节点变量为DNtrue。
步骤S103:若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务。具体地,如图3所示,步骤S103包括如下步骤S301-S302:
步骤S301:提取所述计划迁移的目标节点中,空闲资源满足对应任务需求、且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并保存至待迁移目标节点变量。在本实施例中,判断并提取DNtrue中空闲资源满足对应任务需求(利用变量DNavail进行判断)、且配置有SSD(利用固态硬盘节点变量DNssd进行判断)的节点,将这些节点作为待迁移的目标节点保存至待迁移目标节点变量DNneed。
步骤S302:提取所述计划迁移的任务中与所述待迁移的目标节点对应的任务作为待迁移的任务,并保存至待迁移任务变量。在本实施例中,提取TASKtrue中,与DNneed中的节点所对应的任务,将这些任务作为待迁移的任务,并保存至待迁移任务变量TASKnedd。
步骤S104:将所述待迁移的任务迁移至对应的所述待迁移的目标节点。步骤S104具体包括:循环提取所述待迁移任务变量中的任务、及所述待迁移目标节点变量中与所述任务对应的目标节点;向正在执行所述任务的节点发送任务迁移指令及所述任务对应的目标节点信息;所述正在执行所述任务的节点挂起所述任务,并将所述任务发送至所述对应的目标节点。
在本实施例中,步骤S104的具体实现过程为:调度模块获取资源过滤模块模块的待迁移任务变量TASKnedd和待迁移目标节点变量DNneed。循环提取TASKnedd中的任务及其对应的DNneed中保存的目标节点,定义变量ttrans和dntgt,分别用于保存前述的任务及对应的目标节点;向正在执行任务ttrans的节点发送对任务ttrans的迁移指令,同时指定其应迁移的目标节点dntgt;正在执行任务ttrans的节点在接收到任务ttrans的迁移指令后,挂起该任务ttrans并保存任务运行环境,然后将执行该任务的虚拟机进行压缩打包,最后将虚拟机包发送至目标节点dntgt。目标节点dntgt接收到虚拟机包后,将其解压,继续执行该任务。
在步骤S103之前,本方法还包括步骤S105:动态监测各节点的空闲资源信息。在本实施例中,资源过滤模块读取集群中的计算资源信息,定义变量DNavail={{c1, m1}, {c2, m2}, …, {cn, mn}},用于保存和管理当前所有节点中的空闲资源,其中,ci=(c1, c2,…, cn),mi=(m1, m2,…, mn),ci表示第i个节点的空闲CPU数,mi表示第i个节点的空闲内存大小。
综上所述,本发明第一个实施例所提供的一种面向异构存储的Spark任务动态迁移方法,将正在运行的任务动态地迁移至存储有操作数据的SSD节点,最大限度地将任务迁移到配置有SSD的计算节点上,从而可以充分利用SSD高速读写的特性,加快任务的执行速度,提升集群的服务质量,提升Spark应用程序的执行效率。
作为本发明的第二个实施例,如图4所示,本发明提供的一种面向异构存储的Spark任务迁移系统,该系统包括:
存储特性统计模块101:用于按照存储设备的存储特征将集群中所包含的节点分别保存至固态硬盘节点变量和机械硬盘节点变量。在本实施例中,首先获取集群中各节点所配置的存储设备的存储特征标识,按存储特征标识是SSD还是HDD将集群中所包含的节点分别保存至固态硬盘节点变量DNssd和机械硬盘节点变量DNhdd。其中,DNssd = {…, dni, … },DNhdd = {…, dnj, …},DNssd包含了集群中存储设备标识为SSD的节点, DNhdd包含了集群中存储设备标识为HDD的节点。
资源过滤模块102:用于监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中。具体地,此时资源过滤模块102具体执行实现步骤如下S201-S204:
步骤S201:监测集群中正在执行的任务完成进度和任务的操作数据是否存储在本地节点(即任务是否需要远程读取数据)。
步骤S202:提取任务的操作数据存储在非本地节点、且任务完成进度小于预设阈值的任务保存至可迁移任务变量。本实施例中,首先判断并提取哪些任务需要进行远程读取数据、且任务完成进度小于预设阈值(该预设阈值根据实际需要进行设定)的任务,将这些任务信息保存至可迁移任务变量TASKremote中,从而通过步骤S202可确认这些任务是有必要做任务迁移操作的。
需要说明的是,任务完成进度小于预设阈值,说明该任务完成进度有限,可以考虑对其进行迁移。如果任务完成进度大于预设阈值,说明该任务已经快执行完成,则此时没有必要再对该任务进行迁移。
步骤S203:提取所述可迁移任务变量中,任务的操作数据存储在非本地节点、且所述非本地节点已配置的任务,将提取的所述任务作为计划迁移的任务保存至计划迁移任务变量。本实施例中,从可迁移任务变量TASKremote中判断并提取哪些任务的操作数据虽然不是存储在本地节点,但存储在其它已配置的节点中,将这些任务信息保存至迁移任务变量TASKtrue。
步骤S204:将存储有所述计划迁移的任务的操作数据的节点作为计划迁移的目标节点保存至计划迁移目标节点变量。本实施例中,计划迁移目标节点变量为DNtrue。
资源过滤模块102:还用于若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务。具体地,此时资源过滤模块102具体执行实现步骤如下S301-S302:
步骤S301:提取所述计划迁移的目标节点中,空闲资源满足对应任务需求、且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并保存至待迁移目标节点变量。在本实施例中,判断并提取DNtrue中空闲资源满足对应任务需求(利用变量DNavail进行判断)、且配置有SSD(利用固态硬盘节点变量DNssd进行判断)的节点,将这些节点作为待迁移的目标节点保存至待迁移目标节点变量DNneed。
步骤S302:提取所述计划迁移的任务中与所述待迁移的目标节点对应的任务作为待迁移的任务,并保存至待迁移任务变量。在本实施例中,提取TASKtrue中,与DNneed中的节点所对应的任务,将这些任务作为待迁移的任务,并保存至待迁移任务变量TASKnedd。
调度模块103:用于将所述待迁移的任务迁移至对应的所述待迁移的目标节点。调度模块103具体用于:循环提取所述待迁移任务变量中的任务、及所述待迁移目标节点变量中与所述任务对应的目标节点;向正在执行所述任务的节点发送任务迁移指令及所述任务对应的目标节点信息;所述正在执行所述任务的节点挂起所述任务,并将所述任务发送至所述对应的目标节点。
在本实施例中,调度模块103具体实现过程如下:调度模块获取资源过滤模块模块的待迁移任务变量TASKnedd和待迁移目标节点变量DNneed。循环提取TASKnedd中的任务及其对应的DNneed中保存的目标节点,定义变量ttrans和dntgt,分别用于保存前述的任务及对应的目标节点;向正在执行任务ttrans的节点发送对任务ttrans的迁移指令,同时指定其应迁移的目标节点dntgt;正在执行任务ttrans的节点在接收到任务ttrans的迁移指令后,挂起该任务ttrans并保存任务运行环境,然后将执行该任务的虚拟机进行压缩打包,最后将虚拟机包发送至目标节点dntgt。目标节点dntgt接收到虚拟机包后,将其解压,继续执行该任务。
资源过滤模块102,还用于动态监测各节点的空闲资源信息。在本实施例中,资源过滤模块读取集群中的计算资源信息,定义变量DNavail={{c1, m1}, {c2, m2}, …, {cn, mn}},用于保存和管理当前所有节点中的空闲资源,其中,ci=(c1, c2,…, cn),mi=(m1, m2,…, mn),ci表示第i个节点的空闲CPU数,mi表示第i个节点的空闲内存大小。
综上所述,本发明第二个实施例所提供的一种面向异构存储的Spark任务动态迁移系统,通过各模块,将正在运行的任务动态地迁移至存储有操作数据的SSD节点,最大限度地将任务迁移到配置有SSD的计算节点上,从而可以充分利用SSD高速读写的特性,加快任务的执行速度,提升集群的服务质量,提升Spark应用程序的执行效率。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
以上所述仅为本发明的较佳实施例而已,并不用以限制发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

  1. 一种面向异构存储的Spark任务迁移方法,其特征在于,所述方法包括:
    按照存储设备的存储特征将集群中所包含的节点分别保存至固态硬盘节点变量和机械硬盘节点变量;
    监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中;
    若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务;
    将所述待迁移的任务迁移至对应的所述待迁移的目标节点。
  2. 如权利要求1所述的方法,其特征在于,所述监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中具体包括:
    监测集群中正在执行的任务完成进度和任务的操作数据是否存储在本地节点;
    提取任务的操作数据存储在非本地节点、且任务完成进度小于预设阈值的任务保存至可迁移任务变量;
    提取所述可迁移任务变量中,任务的操作数据存储在非本地节点、且所述非本地节点已配置的任务,将提取的所述任务作为计划迁移的任务保存至计划迁移任务变量;
    将存储有所述计划迁移的任务的操作数据的节点作为计划迁移的目标节点保存至计划迁移目标节点变量。
  3. 如权利要求2所述的方法,其特征在于,所述若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务具体包括:
    提取所述计划迁移的目标节点中,空闲资源满足对应任务需求、且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并保存至待迁移目标节点变量;
    提取所述计划迁移的任务中与所述待迁移的目标节点对应的任务作为待迁移的任务,并保存至待迁移任务变量。
  4. 如权利要求3所述的方法,其特征在于,所述将所述待迁移的任务迁移至对应的所述待迁移的目标节点具体包括:
    循环提取所述待迁移任务变量中的任务、及所述待迁移目标节点变量中与所述任务对应的目标节点;
    向正在执行所述任务的节点发送任务迁移指令及所述任务对应的目标节点信息;
    所述正在执行所述任务的节点挂起所述任务,并将所述任务发送至所述对应的目标节点。
  5. 如权利要求1所述的方法,其特征在于,在所述若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务之前,所述方法还包括:
    动态监测各节点的空闲资源信息。
  6. 一种面向异构存储的Spark任务迁移系统,其特征在于,所述系统包括:
    存储特性统计模块,用于按照存储设备的存储特征将集群中所包含的节点分别保存至固态硬盘节点变量和机械硬盘节点变量;
    资源过滤模块,用于监测集群中正在执行的任务中是否存在满足预设条件的目标任务,所述预设条件是指需要远程访问数据、任务完成进度小于预设阈值、且操作数据存储在已配置的非本地节点中;
    所述资源过滤模块,还用于若监测到目标任务,则从已存储所述目标任务的操作数据的节点中,确定空闲资源满足对应任务的需求,且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并确定所述目标任务中与所述待迁移的目标节点对应的任务作为待迁移的任务;
    调度模块,用于将所述待迁移的任务迁移至对应的所述待迁移的目标节点。
  7. 如权利要求6所述的系统,其特征在于,所述资源过滤模块具体用于:
    监测集群中正在执行的任务完成进度和任务的操作数据是否存储在本地节点;
    提取任务的操作数据存储在非本地节点、且任务完成进度小于预设阈值的任务保存至可迁移任务变量;
    提取所述可迁移任务变量中,任务的操作数据存储在非本地节点、且所述非本地节点已配置的任务,将提取的所述任务作为计划迁移的任务保存至计划迁移任务变量;
    将存储有所述计划迁移的任务的操作数据的节点作为计划迁移的目标节点保存至计划迁移目标节点变量。
  8. 如权利要求7所述的系统,其特征在于,所述资源过滤模块具体还用于:
    提取所述计划迁移的目标节点中,空闲资源满足对应任务需求、且属于所述固态硬盘节点变量的节点作为待迁移的目标节点,并保存至待迁移目标节点变量;
    提取所述计划迁移的任务中与所述待迁移的目标节点对应的任务作为待迁移的任务,并保存至待迁移任务变量。
  9. 如权利要求8所述的系统,其特征在于,所述调度模块具体用于:
    循环提取所述待迁移任务变量中的任务、及所述待迁移目标节点变量中与所述任务对应的目标节点;
    向正在执行所述任务的节点发送任务迁移指令及所述任务对应的目标节点信息;
    所述正在执行所述任务的节点挂起所述任务,并将所述任务发送至所述对应的目标节点。
  10. 如权利要求6所述的系统,其特征在于,所述资源过滤模块还用于动态监测各节点的空闲资源信息。
PCT/CN2017/117598 2017-12-21 2017-12-21 一种面向异构存储的Spark任务动态迁移方法和系统 WO2019119332A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/117598 WO2019119332A1 (zh) 2017-12-21 2017-12-21 一种面向异构存储的Spark任务动态迁移方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/117598 WO2019119332A1 (zh) 2017-12-21 2017-12-21 一种面向异构存储的Spark任务动态迁移方法和系统

Publications (1)

Publication Number Publication Date
WO2019119332A1 true WO2019119332A1 (zh) 2019-06-27

Family

ID=66994354

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/117598 WO2019119332A1 (zh) 2017-12-21 2017-12-21 一种面向异构存储的Spark任务动态迁移方法和系统

Country Status (1)

Country Link
WO (1) WO2019119332A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030217088A1 (en) * 2002-05-15 2003-11-20 Hitachi, Ltd. Multiple computer system and method for assigning logical computers on the same system
CN102831088A (zh) * 2012-07-27 2012-12-19 国家超级计算深圳中心(深圳云计算中心) 基于混合存储器的数据迁移方法和装置
CN105892947A (zh) * 2016-03-31 2016-08-24 华中科技大学 一种节能存储系统的ssd与hdd混合缓存管理方法及系统
CN107391031A (zh) * 2017-06-27 2017-11-24 北京邮电大学 一种基于混合存储的计算系统中的数据迁移方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030217088A1 (en) * 2002-05-15 2003-11-20 Hitachi, Ltd. Multiple computer system and method for assigning logical computers on the same system
CN102831088A (zh) * 2012-07-27 2012-12-19 国家超级计算深圳中心(深圳云计算中心) 基于混合存储器的数据迁移方法和装置
CN105892947A (zh) * 2016-03-31 2016-08-24 华中科技大学 一种节能存储系统的ssd与hdd混合缓存管理方法及系统
CN107391031A (zh) * 2017-06-27 2017-11-24 北京邮电大学 一种基于混合存储的计算系统中的数据迁移方法及装置

Similar Documents

Publication Publication Date Title
US9547605B2 (en) Method for data backup, device and system
US10241722B1 (en) Proactive scheduling of background operations for solid state drives
CN103475732A (zh) 一种基于虚拟地址池的分布式文件系统数据卷部署方法
US11360705B2 (en) Method and device for queuing and executing operation commands on a hard disk
TW201737111A (zh) 分散式儲存系統硬碟掛住故障檢測、處理方法及裝置
CN110677305A (zh) 一种云计算环境下的自动伸缩方法和系统
US11494215B2 (en) Techniques to decrease a live migration time for a virtual machine
US20150293719A1 (en) Storage Space Processing Method and Apparatus, and Non-Volatile Computer Readable Storage Medium
CN104219318A (zh) 一种分布式文件存储系统及方法
CN111984370B (zh) 一种多磁盘虚拟机在线迁移到不同存储池的方法及装置
JP2014048787A (ja) 情報処理装置、コピー制御プログラム、およびコピー制御方法
CN102929769A (zh) 一种基于代理服务的虚拟机内部数据采集方法
CN109976898B (zh) 分层任务系统的SPI与Eeprom异步通讯方法
CN105760391B (zh) 数据动态重分布的方法、数据节点、名字节点及系统
CN104753992A (zh) 一种数据存储、虚拟平台故障恢复的方法、设备和系统
CN107967172B (zh) 一种面向异构存储的Spark任务动态迁移方法和系统
US10831525B2 (en) Intelligent assignment of virtual machines to compute only or hyper converged nodes
US20180196611A1 (en) Highly scalable computational active ssd storage device
CN114297002A (zh) 一种基于对象存储的海量数据备份方法及系统
US20230325082A1 (en) Method for setting up and expanding storage capacity of cloud without disruption of cloud services and electronic device employing method
WO2019119332A1 (zh) 一种面向异构存储的Spark任务动态迁移方法和系统
WO2017050177A1 (zh) 一种数据同步方法和装置
Zhang et al. What's the Story in {EBS} Glory: Evolutions and Lessons in Building Cloud Block Store
Liang et al. A new pre-copy strategy for live migration of virtual machines
WO2020042388A1 (zh) 一种提升固态硬盘顺序读性能的方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17935330

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 22.09.2020)

122 Ep: pct application non-entry in european phase

Ref document number: 17935330

Country of ref document: EP

Kind code of ref document: A1