CN116578447B - 虚拟机数据恢复方法、装置、计算机设备及存储介质 - Google Patents

虚拟机数据恢复方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN116578447B
CN116578447B CN202310852132.6A CN202310852132A CN116578447B CN 116578447 B CN116578447 B CN 116578447B CN 202310852132 A CN202310852132 A CN 202310852132A CN 116578447 B CN116578447 B CN 116578447B
Authority
CN
China
Prior art keywords
disk
data
virtual
disks
virtual machine
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
CN202310852132.6A
Other languages
English (en)
Other versions
CN116578447A (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.)
Wuhan Barda Technology Co ltd
Original Assignee
Wuhan Barda Technology 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 Wuhan Barda Technology Co ltd filed Critical Wuhan Barda Technology Co ltd
Priority to CN202310852132.6A priority Critical patent/CN116578447B/zh
Publication of CN116578447A publication Critical patent/CN116578447A/zh
Application granted granted Critical
Publication of CN116578447B publication Critical patent/CN116578447B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本申请公开了一种虚拟机数据恢复方法、装置、计算机设备及存储介质,包括:接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型;当数据恢复类型为增量恢复时,从多个缓存空间中获取多个第一虚拟磁盘的增量数据;将增量数据转化为raw格式的数据磁盘,得到当前增量备份磁盘;将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个目标增量备份磁盘;基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖。本申请可以减少数据恢复时耗费的时间和计算资源,保障虚拟机中数据恢复的完整性。

Description

虚拟机数据恢复方法、装置、计算机设备及存储介质
技术领域
本申请涉及计算机技术领域,具体涉及一种虚拟机数据恢复方法、装置、计算机设备及存储介质。
背景技术
虚拟机是虚拟化技术实现的焦点,虚拟机在运行的过程中会因多种原因发生故障,为了避免用户数据的丢失,需要对虚拟机进行数据恢复。现有虚拟机数据恢复方法通常为:对源虚拟机中的全量数据或增量数据进行备份,然后将备份后的全量数据或增量数据同步至目标虚拟机。现有方法由于是直接对数据进行备份和恢复,备份和恢复过程中需要耗费大量时间和计算资源,容易导致虚拟机性能下降。
发明内容
本申请实施例提供一种虚拟机数据恢复方法、装置、计算机设备及存储介质,可以减少数据恢复时耗费的时间和计算资源,保障虚拟机中数据恢复的完整性,并且可以对重要的目标增量备份磁盘进行优先恢复。
一方面,本申请提供一种虚拟机数据恢复方法,包括:
接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘;
当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据;
将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘;
获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘;
获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;
基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机。
在本申请一些实施方案中,基于数据恢复请求确定源虚拟机的数据恢复类型之后,包括:
当数据恢复类型为全量恢复时,基于kvm底层备份命令将多个第一虚拟磁盘中的全量数据分别转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的全量备份磁盘;
基于全量备份磁盘对目标虚拟机进行磁盘覆盖,并创建多个第一虚拟磁盘分别对应的多个缓存空间。
在本申请一些实施方案中,创建多个第一虚拟磁盘分别对应的多个缓存空间之后,包括:
获取每个第一虚拟磁盘的增量数据,增量数据中包括多个增量数据块;
获取每个增量数据块的数据量、数据块类型及数据块关键词,将数据量、数据块类型及数据块关键词输入预先训练的第一预测模型,通过第一预测模型输出每个增量数据块的第一表征参数和第二表征参数,第一表征参数用于表征每个增量数据块的重要程度,第二表征参数用于表征每个增量数据块的私密程度;
基于第一表征参数和第二表征参数,将多个增量数据块存储至每个第一虚拟磁盘对应的缓存空间。
在本申请一些实施方案中,基于第一表征参数和第二表征参数,将多个增量数据块存储至每个第一虚拟磁盘对应的缓存空间,包括:
获取每个第一虚拟磁盘对应的缓存空间包含的多个缓存区间的区间等级、区间容纳数据类型及区间容纳数据量;
基于第一表征参数和第二表征参数,确定每个增量数据块的目标表征参数;
将目标表征参数、数据块类型、区间等级、区间容纳数据类型及区间容纳数据量输入预先训练的第二预测模型,通过第二预测模型从多个缓存区间中确定每个数据块对应的缓存区间;
将每个数据块存储至每个数据块对应的缓存区间。
在本申请一些实施方案中,空间信息包括空间已容纳数据量和空间剩余容纳数据量,区间信息包括区间等级、区间已容纳数据量及区间剩余容纳数据量,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序,包括:
将区间等级、区间已容纳数据量及区间剩余容纳数据量输入预先训练的第三预测模型,通过第三预测模型输出每个缓存空间的第一空间参数;
将第一空间参数、空间已容纳数据量及空间剩余容纳数据量输入预先训练的第四预测模型,通过第四预测模型输出每个缓存空间的第二空间参数;
基于第二空间参数,确定多个目标增量备份磁盘的覆盖顺序。
在本申请一些实施方案中,基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,包括:
获取目标虚拟磁盘包含的多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量及磁盘属性信息;
获取每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量及磁盘属性信息;
基于多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息,从多个第二虚拟磁盘中确定多个第一虚拟磁盘分别对应的多个目标虚拟磁盘;
基于覆盖顺序和多个目标增量备份磁盘,对多个目标虚拟磁盘进行覆盖。
在本申请一些实施方案中,基于多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息,从多个第二虚拟磁盘中确定多个第一虚拟磁盘分别对应的多个目标虚拟磁盘,包括:
将多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息输入预先训练的第五预测模型,通过第五预测模型输出每个第二虚拟磁盘在每个第一虚拟磁盘下的磁盘得分;
基于磁盘得分,从多个第二虚拟磁盘中确定多个第一虚拟磁盘分别对应的多个目标虚拟磁盘。
另一方面,本申请提供一种虚拟机数据恢复装置,包括:
请求接收单元,用于接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘;
第一获取单元,用于当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据;
第一转化单元,用于将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘;
磁盘合并单元,用于获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘;
顺序确定单元,用于获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;
数据恢复单元,用于基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机。
另一方面,本申请还提供一种计算机设备,计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中一个或多个应用程序被存储于存储器中,并配置为由处理器执行以实现第一方面中任一项的虚拟机数据恢复方法。
第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器进行加载,以执行第一方面任一项的虚拟机数据恢复方法中的步骤。
本申请将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,通过转化磁盘格式的方式压缩数据,可以减少数据恢复时耗费的时间和计算资源;将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘合并为目标增量备份磁盘,再基于目标增量备份磁盘进行数据恢复,可以保障虚拟机中数据恢复的完整性;基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序,再基于覆盖顺序对目标虚拟机进行磁盘覆盖,可以对重要的目标增量备份磁盘进行优先恢复。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的虚拟机数据恢复系统的场景示意图;
图2是本申请实施例中提供的虚拟机数据恢复方法的一个实施例流程示意图;
图3是本申请实施例中提供的虚拟机数据恢复装置的一个实施例结构示意图;
图4是本申请实施例中提供的计算机设备的一个实施例结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本申请,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本申请。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本申请的描述变得晦涩。因此,本申请并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
需要说明的是,本申请实施例方法由于是在计算机设备中执行,各计算机设备的处理对象均以数据或信息的形式存在,例如时间,实质为时间信息,可以理解的是,后续实施例中若提及尺寸、数量、位置等,均为对应的数据存在,以便计算机设备进行处理,具体此处不作赘述。
本申请实施例提供一种虚拟机数据恢复方法、装置、计算机设备及存储介质,以下分别进行详细说明。
请参阅图1,图1为本申请实施例所提供的虚拟机数据恢复系统的场景示意图,该虚拟机数据恢复系统可以包括计算机设备100,计算机设备100中集成有虚拟机数据恢复装置,如图1中的计算机设备。
本申请实施例中计算机设备100主要用于接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘;当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据;将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘;获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘;获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机,可以减少数据恢复时耗费的时间和计算资源,保障虚拟机中数据恢复的完整性,并且可以对重要的目标增量备份磁盘进行优先恢复。
本申请实施例中,该计算机设备100可以是独立的服务器,也可以是服务器组成的服务器网络或服务器集群,例如,本申请实施例中所描述的计算机设备100,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云服务器。其中,云服务器由基于云计算(Cloud Computing)的大量计算机或网络服务器构成。
可以理解的是,本申请实施例中所使用的计算机设备100可以是既包括接收和发射硬件的设备,即具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备。具体的计算机设备100具体可以是台式终端或移动终端,计算机设备100具体还可以是手机、平板电脑、笔记本电脑等中的一种。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案一种应用场景,并不构成对本申请方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的计算机设备,例如图1中仅示出1个计算机设备,可以理解的,该虚拟机数据恢复系统还可以包括一个或多个其他服务,具体此处不作限定。
另外,如图1所示,该虚拟机数据恢复系统还可以包括存储器200,用于存储数据,如空间信息,例如空间已容纳数据量、空间剩余容纳数据量等,如区间信息,例如区间等级、区间已容纳数据量、区间剩余容纳数据量等。
需要说明的是,图1所示的虚拟机数据恢复系统的场景示意图仅仅是一个示例,本申请实施例描述的虚拟机数据恢复系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着虚拟机数据恢复系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
首先,本申请实施例中提供一种虚拟机数据恢复方法,该虚拟机数据恢复方法的执行主体为虚拟机数据恢复装置,该虚拟机数据恢复装置应用于计算机设备,该虚拟机数据恢复方法包括:接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘;当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据;将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘;获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘;获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机。
如图2所示,为本申请实施例中虚拟机数据恢复方法的一个实施例流程示意图,该虚拟机数据恢复方法包括:
S100、接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘。
数据恢复请求为用户向计算机设备发出的将源虚拟机的数据在目标虚拟机中恢复的数据恢复指令,该数据恢复请求包括但不限于触摸指令、鼠标指令、遥控指令、语音指令等,例如,用户想要将虚拟机A中的数据在虚拟机B中恢复时,可以直接在触摸屏上点击虚拟机A的图标,或者用户通过鼠标在触摸屏上点击虚拟机A的图标,又或者用户发出“将虚拟机A中的数据在虚拟机B中恢复”的语音指令。用户向计算机设备发出针对源虚拟机的数据恢复请求后,计算机设备接收该数据恢复请求,并基于该数据恢复请求确定源虚拟机的数据恢复类型。
数据恢复类型包括全量恢复和增量恢复,全量恢复是指对源虚拟机的数据进行全量备份,并将全量备份数据在目标虚拟机中恢复,增量恢复是指对源虚拟机自上次备份以来新增或修改的数据进行增量备份,并将增量备份数据在目标虚拟机中恢复。数据恢复请求包括源虚拟机对应的第一虚拟机标识和目标虚拟机对应的第二虚拟机标识,计算机设备基于数据恢复请求确定源虚拟机的数据恢复类型时,首先从数据恢复请求中获取第一虚拟机标识和第二虚拟机标识,然后基于第一虚拟机标识和第二虚拟机标识,确定源虚拟机和目标虚拟机,并判断源虚拟机和目标虚拟机之间是否为首次数据恢复,若是,则确定源虚拟机的数据恢复类型为全量恢复;反之,确定源虚拟机的数据恢复类型为增量恢复。
需要说明的是,源虚拟机包括多个第一虚拟磁盘,将源虚拟机的数据在目标虚拟机中恢复是指将原虚拟机的多个第一虚拟磁盘中的数据在目标虚拟机中恢复。
S200、当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据。
多个缓存空间为预先构建的用于存储多个第一虚拟磁盘的增量数据的存储空间,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据,换句话说,在每个第一虚拟磁盘对应的缓存空间中可以找到该第一虚拟磁盘自上次备份以来新增或修改的数据。
S300、将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘。
现有虚拟机数据恢复过程中是直接对数据进行备份和恢复,备份和恢复需要耗费大量时间和计算资源,导致虚拟机的性能下降,例如,备份和恢复过程中会占用大量系统资源,导致系统变慢或停止响应。本实施例获取多个第一虚拟磁盘的增量数据后,采用kvm底层磁盘备份命令将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘。通过转化磁盘格式的方式压缩数据,可以减少数据恢复过程中的数据传输量,减少数据恢复时耗费的时间和计算资源。
S400、获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘。
全量备份磁盘为对源虚拟机中的数据进行全量备份恢复时得到的全量备份磁盘,历史增量备份磁盘为在过去一段时间内对源虚拟机中的数据进行增量备份恢复得到的增量备份磁盘,目标增量备份磁盘为将每个第一虚拟磁盘的全量备份磁盘、历史增量备份磁盘和当前增量备份磁盘进行磁盘合并,得到的合并后的磁盘。例如,第一虚拟磁盘A包括全量备份磁盘A、历史增量备份磁盘B、历史增量备份磁盘C及当前增量备份磁盘D,将全量备份磁盘A、历史增量备份磁盘B、历史增量备份磁盘C及当前增量备份磁盘D进行磁盘合并,即可得到第一虚拟磁盘A的目标增量备份磁盘。
本实施例得到每个第一虚拟磁盘的当前增量备份磁盘后,获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘。由于目标增量备份磁盘中包括每个第一虚拟磁盘的全量备份数据及每次增量备份时的增量数据,基于目标增量备份磁盘进行数据恢复,可以保障虚拟机中数据恢复的完整性。
S500、获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序。
每个缓存空间包含多个缓存区间,每个缓存区间用于存储每个缓存空间对应的第一虚拟磁盘中不同属性的数据。例如,缓存空间A包含缓存区间A、缓存区间B、缓存区间C及缓存区间D,各个缓存区间分别用于存储不同重要等级的数据。
本实施例对源虚拟机中的数据进行恢复时,是基于多个目标增量备份磁盘对目标虚拟机进行磁盘覆盖,覆盖顺序为对目标虚拟机进行磁盘覆盖时,多个目标增量备份磁盘的覆盖顺序。例如,目标增量备份磁盘包括目标增量备份磁盘A、目标增量备份磁盘B及目标增量备份磁盘C,覆盖顺序为目标增量备份磁盘B、目标增量备份磁盘A、目标增量备份磁盘C。
空间信息包括但不限于空间已容纳数据量、空间剩余容纳数据量等,空间已容纳数据量为缓存空间已容纳的数据量,空间剩余容纳数据量为缓存空间还可容纳的数据量。区间信息包括但不限于区间等级、区间已容纳数据量、区间剩余容纳数据量等,区间等级为缓存区间对应的等级,区间已容纳数据量为缓存区间已容纳的数据量,区间剩余容纳数据量为缓存区间还可容纳的数据量。
本实施例得到多个目标增量备份磁盘后,获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,然后基于空间信息和区间信息确定多个缓存空间的重要程度,再基于多个缓存空间的重要程度确定多个目标增量备份磁盘的重要程度,最后基于多个目标增量备份磁盘的重要程度确定多个目标增量备份磁盘的覆盖顺序。例如,缓存空间A、缓存空间B、缓存空间C、缓存空间D分别对应目标增量备份磁盘A、目标增量备份磁盘B、目标增量备份磁盘C、目标增量备份磁盘D,假设缓存空间的重要程度为缓存空间C>缓存空间D>缓存空间A>缓存空间B,则多个目标增量备份磁盘的重要程度为目标增量备份磁盘C>目标增量备份磁盘D>目标增量备份磁盘A>目标增量备份磁盘B,则覆盖顺序依次为目标增量备份磁盘C→目标增量备份磁盘D→目标增量备份磁盘A→目标增量备份磁盘B。
S600、基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机。
本实施例确定多个目标增量备份磁盘的覆盖顺序后,基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,可以将源虚拟机中的数据完整的恢复至目标虚拟机。例如,覆盖顺序为目标增量备份磁盘C→目标增量备份磁盘D→目标增量备份磁盘A→目标增量备份磁盘B,目标虚拟机中包括与多个第一虚拟磁盘分别对应的第二虚拟磁盘A、第二虚拟磁盘B、第二虚拟磁盘C、第二虚拟磁盘D,依次采用目标增量备份磁盘C、目标增量备份磁盘D、目标增量备份磁盘A、目标增量备份磁盘B分别对第二虚拟磁盘C、第二虚拟磁盘D、第二虚拟磁盘A、第二虚拟磁盘B进行覆盖,即可实现将源虚拟机中的数据恢复至目标虚拟机。
在一具体实现方式中,步骤S100中基于数据恢复请求确定源虚拟机的数据恢复类型之后,还包括:
S110、当数据恢复类型为全量恢复时,基于kvm底层备份命令将多个第一虚拟磁盘中的全量数据分别转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的全量备份磁盘;
S120、基于全量备份磁盘对目标虚拟机进行磁盘覆盖,并创建多个第一虚拟磁盘分别对应的多个缓存空间。
具体地,当确定源虚拟机的数据恢复类型为全量恢复时,基于kvm底层备份命令将多个第一虚拟磁盘中的全量数据分别转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的全量备份磁盘,然后基于全量备份磁盘对目标虚拟机进行磁盘覆盖,并利用kvm底层命令创建多个第一虚拟磁盘分别对应的多个缓存空间。
在一具体实现方式中,步骤S120中创建多个第一虚拟磁盘分别对应的多个缓存空间之后,还包括:
S130、获取每个第一虚拟磁盘的增量数据,增量数据中包括多个增量数据块;
S140、获取每个增量数据块的数据量、数据块类型及数据块关键词,将数据量、数据块类型及数据块关键词输入预先训练的第一预测模型,通过第一预测模型输出每个增量数据块的第一表征参数和第二表征参数,第一表征参数用于表征每个增量数据块的重要程度,第二表征参数用于表征每个增量数据块的私密程度;
S150、基于第一表征参数和第二表征参数,将多个增量数据块存储至每个第一虚拟磁盘对应的缓存空间。
每个第一虚拟磁盘的增量数据均包括多个增量数据块,数据量为每个增量数据块包含的数据量,数据块类型为每个增量数据块包含的数据的数据类型,数据块关键词为每个增量数据块包含的数据的关键词。第一预测模型为基于增量数据块的数据量、数据块类型及数据块关键词预测增量数据块的第一表征参数和第二表征参数的网络模型,第一表征参数用于表征每个增量数据块的重要程度,第二表征参数用于表征每个增量数据块的私密程度。
其中,第一预测模型基于预设的第一训练样本集对预设第一网络模型进行训练得到,预设第一网络模型可以采用深度学习模型或机器学习模型,例如,卷积神经网络(Convolutional Neural Networks, CNN)、反卷积神经网络(De-ConvolutionalNetworks, DN)等。
进一步地,第一训练样本集包括多个训练数据块的数据量、数据块类型及数据块关键词及每个训练数据块的第一真实参数和第二真实参数。在对预设第一网络模型进行训练时,首先将第一训练样本集中的多个训练数据块的数据量、数据块类型及数据块关键词输入预设第一网络模型,通过第一网络模型输出每个训练数据块的第一预测参数和第二预测参数,接着根据第一预测参数、第二预测参数、第一真实参数、第二真实参数及第一网络模型的损失函数,确定第一损失值,当第一损失值不满足预设第一条件时,根据预设的第一参数学习率对第一网络模型的模型参数进行修正,并继续执行将第一训练样本集中的多个训练数据块的数据量、数据块类型及数据块关键词输入第一网络模型的步骤,直至第一损失值满足预设第一条件,从而得到第一预测模型。其中,第一损失值满足预设第一条件可以为第一损失值小于预设第一阈值,或者前后两次得到的第一损失值的差值小于预设第二阈值。
在一具体实现方式中,步骤S150包括:
S151、获取每个第一虚拟磁盘对应的缓存空间包含的多个缓存区间的区间等级、区间容纳数据类型及区间容纳数据量;
S152、基于第一表征参数和第二表征参数,确定每个增量数据块的目标表征参数;
S153、将目标表征参数、数据块类型、区间等级、区间容纳数据类型及区间容纳数据量输入预先训练的第二预测模型,通过第二预测模型从多个缓存区间中确定每个数据块对应的缓存区间;
S154、将每个数据块存储至每个数据块对应的缓存区间。
区间等级为缓存区间所属的等级,本实施例缓存空间中包含的多个缓存区间分别具有对应的区间等级,例如,缓存空间A中包括缓存区间1、缓存区间2、缓存区间3及缓存区间4,缓存区间1的区间等级为1级,缓存区间2的区间等级为2级,缓存区间3的区间等级为3级,缓存区间4的区间等级为4级。区间容纳数据类型为每个缓存区间可以容纳数据的类型,区间容纳数据量为每个缓存区间可以容纳的数据量。
目标表征参数基于第一表征参数和第二表征参数确定,基于第一表征参数和第二表征参数确定目标表征参数时,可以对第一表征参数和第二表征参数进行求和,或者对第一表征参数和第二表征参数进行加权求和,或者对第一表征参数和第二表征参数求和之后再平均,本申请对此不作限定。
第二预测模型用于基于目标表征参数、数据块类型、区间等级、区间容纳数据类型及区间容纳数据量预测每个数据块对应的缓存区间,第二预测模型基于预设的第二训练样本集对预设第二网络模型进行训练得到,预设第二网络模型可以采用深度学习模型或机器学习模型,例如,卷积神经网络(Convolutional Neural Networks, CNN)、反卷积神经网络(De-Convolutional Networks, DN)等。
在一具体实现方式中,第二训练样本集包括多个训练块的目标表征参数和数据块类型,多个训练缓存区间的区间等级、区间容纳数据类型、区间容纳数据量及每个训练块对应的真实缓存区间。在对预设第二网络模型进行训练时,首先将多个训练块的目标表征参数、数据块类型及多个训练缓存区间的区间等级、区间容纳数据类型、区间容纳数据量输入预设第二网络模型,通过第二网络模型输出每个训练块对应的预测缓存区间,接着根据预测缓存区间、真实缓存区间及第二网络模型的损失函数,确定第二损失值,当第二损失值不满足预设第二条件时,根据预设的第二参数学习率对第二网络模型的模型参数进行修正,并继续执行将多个训练块的目标表征参数、数据块类型及多个训练缓存区间的区间等级、区间容纳数据类型、区间容纳数据量输入第二网络模型的步骤,直至第二损失值满足预设第二条件,从而得到第二预测模型。其中,第二损失值满足预设第二条件可以为第二损失值小于预设第三阈值,或者前后两次得到的第二损失值的差值小于预设第四阈值。
在一具体实现方式中,步骤S500中基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序的步骤包括:
S510、将区间等级、区间已容纳数据量及区间剩余容纳数据量输入预先训练的第三预测模型,通过第三预测模型输出每个缓存空间的第一空间参数;
S520、将第一空间参数、空间已容纳数据量及空间剩余容纳数据量输入预先训练的第四预测模型,通过第四预测模型输出每个缓存空间的第二空间参数;
S530、基于第二空间参数,确定多个目标增量备份磁盘的覆盖顺序。
第三预测模型用于基于区间等级、区间已容纳数据量及区间剩余容纳数据量预测每个缓存空间的第一空间参数,第四预测模型用于基于第一空间参数、空间已容纳数据量及空间剩余容纳数据量预测每个缓存空间的第二空间参数。第三预测模型基于预设的第三训练样本集对预设第三网络模型进行训练得到,第四预测模型基于预设的第四训练样本集对预设第四网络模型进行训练得到,预设第三网络模型和预设第四网络模型可以采用深度学习模型或机器学习模型,例如,卷积神经网络(Convolutional Neural Networks, CNN)、反卷积神经网络(De-Convolutional Networks, DN)等。
在一具体实现方式中,第三训练样本集包括多个训练缓存空间的区间等级、区间已容纳数据量、区间剩余容纳数据量及每个训练缓存空间的第三真实参数。在对预设第三网络模型进行训练时,首先将多个训练缓存空间的区间等级、区间已容纳数据量及区间剩余容纳数据量输入预设第三网络模型,通过第三网络模型输出每个训练块对应的第三预测参数,接着根据第三预测参数、第三真实参数及第三网络模型的损失函数,确定第三损失值,当第三损失值不满足预设第三条件时,根据预设的第三参数学习率对第三网络模型的模型参数进行修正,并继续执行将多个训练缓存空间的区间等级、区间已容纳数据量及区间剩余容纳数据量输入第三网络模型的步骤,直至第三损失值满足预设第三条件,从而得到第三预测模型。其中,第三损失值满足预设第三条件可以为第三损失值小于预设第五阈值,或者前后两次得到的第三损失值的差值小于预设第六阈值。
进一步地,第四训练样本集包括多个训练缓存空间的第一空间参数、空间已容纳数据量、空间剩余容纳数据量及每个训练缓存空间的第四真实参数。在对预设第四网络模型进行训练时,首先将多个训练缓存空间的第一空间参数、空间已容纳数据量及空间剩余容纳数据量输入预设第四网络模型,通过第四网络模型输出每个训练缓存空间的第四预测参数,接着根据第四预测参数、第四真实参数及第四网络模型的损失函数,确定第四损失值,当第四损失值不满足预设第四条件时,根据预设的第四参数学习率对第四网络模型的模型参数进行修正,并继续执行将多个训练缓存空间的第一空间参数、空间已容纳数据量及空间剩余容纳数据量输入预设第四网络模型的步骤,直至第四损失值满足预设第四条件,从而得到第四预测模型。其中,第四损失值满足预设第四条件可以为第四损失值小于预设第七阈值,或者前后两次得到的第四损失值的差值小于预设第八阈值。
本实施例以缓存空间的空间已容纳数据量和空间剩余容纳数据量,以及缓存空间中缓存区间的区间等级、区间已容纳数据量、区间剩余容纳数据量作为确定缓存空间重要程度的判别标准,通过第三预测模型和第四预测模型确定每个缓存空间的第二空间参数后,基于第二空间参数即可确定缓存空间的重要程度。例如,缓存空间A、缓存空间B、缓存空间C、缓存空间D对应的第二空间参数分别为0.5、0.3、0.9、0.65,则确定缓存空间的重要程度为缓存空间C>缓存空间D>缓存空间A>缓存空间B。
在一具体实现方式中,步骤S600中基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖的步骤具体包括:
S610、获取目标虚拟磁盘包含的多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量及磁盘属性信息;
S620、获取每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量及磁盘属性信息;
S630、基于多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息,从多个第二虚拟磁盘中确定多个第一虚拟磁盘分别对应的多个目标虚拟磁盘;
S640、基于覆盖顺序和多个目标增量备份磁盘,对多个目标虚拟磁盘进行覆盖。
目标虚拟磁盘中包括多个第二虚拟磁盘,每个第二虚拟磁盘具有状态信息、磁盘数据类型、磁盘容纳量及磁盘属性信息,状态信息用于表征每个第二虚拟磁盘的使用状态,磁盘数据类型为第二虚拟磁盘可以容纳的数据类型,磁盘容纳量为第二虚拟磁盘可以容纳的数据量,磁盘属性信息为与第二虚拟磁盘的属性有关的信息。
源虚拟磁盘中的多个第一虚拟磁盘也具有对应的磁盘数据类型、磁盘数据量及磁盘属性信息,多个目标虚拟磁盘为基于多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息,从多个第二虚拟磁盘中确定的与每个第一虚拟磁盘最匹配的第二虚拟磁盘。
在一具体实现方式中,步骤S630包括:
S631、将多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息输入预先训练的第五预测模型,通过第五预测模型输出每个第二虚拟磁盘在每个第一虚拟磁盘下的磁盘得分;
S632、基于磁盘得分,从多个第二虚拟磁盘中确定多个第一虚拟磁盘分别对应的多个目标虚拟磁盘。
磁盘得分用于表征每个第二虚拟磁盘与每个第一虚拟磁盘的匹配程度,第五预测模型用于基于多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息预测每个第二虚拟磁盘在每个第一虚拟磁盘下的磁盘得分。第五预测模型基于预设的第五训练样本集对预设第五网络模型进行训练得到,预设第五网络模型可以采用深度学习模型或机器学习模型,例如,卷积神经网络(Convolutional Neural Networks, CNN)、反卷积神经网络(De-Convolutional Networks, DN)等。
在一具体实现方式中,第五训练样本集包括多个第一训练磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息,多个第二训练磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一训练磁盘在每个第二训练磁盘下的真实得分。在对预设第五网络模型进行训练时,首先将多个第一训练磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及多个第二训练磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息输入预设第五网络模型,通过第五网络模型输出每个第一训练磁盘在每个第二训练磁盘下的预测得分,接着根据预测得分、真实得分及第五网络模型的损失函数,确定第五损失值,当第五损失值不满足预设第五条件时,根据预设的第五参数学习率对第五网络模型的模型参数进行修正,并继续执行将多个第一训练磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及多个第二训练磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息输入预设第五网络模型的步骤,直至第五损失值满足预设第五条件,从而得到第五预测模型。其中,第五损失值满足预设第五条件可以为第五损失值小于预设第九阈值,或者前后两次得到的第五损失值的差值小于预设第十阈值。
为了更好实现本申请实施例中虚拟机数据恢复方法,在虚拟机数据恢复方法基础之上,本申请实施例中还提供一种虚拟机数据恢复装置,如图3所示,虚拟机数据恢复装置700包括:
请求接收单元701,用于接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘;
第一获取单元702,用于当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据;
第一转化单元703,用于将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘;
磁盘合并单元704,用于获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘;
顺序确定单元705,用于获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;
数据恢复单元706,用于基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机。
本申请实施例中,将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,通过转化磁盘格式的方式压缩数据,可以减少数据恢复时耗费的时间和计算资源;将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘合并为目标增量备份磁盘,再基于目标增量备份磁盘进行数据恢复,可以保障虚拟机中数据恢复的完整性;基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序,再基于覆盖顺序对目标虚拟机进行磁盘覆盖,可以对重要的目标增量备份磁盘进行优先恢复。
在本申请一些实施例中,虚拟机数据恢复装置700还包括:
第二转化单元,用于当数据恢复类型为全量恢复时,基于kvm底层备份命令将多个第一虚拟磁盘中的全量数据分别转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的全量备份磁盘;
空间创建单元,用于基于全量备份磁盘对目标虚拟机进行磁盘覆盖,并创建多个第一虚拟磁盘分别对应的多个缓存空间。
在本申请一些实施例中,虚拟机数据恢复装置700还包括:
第二获取单元,用于获取每个第一虚拟磁盘的增量数据,增量数据中包括多个增量数据块;
参数确定单元,用于获取每个增量数据块的数据量、数据块类型及数据块关键词,将数据量、数据块类型及数据块关键词输入预先训练的第一预测模型,通过第一预测模型输出每个增量数据块的第一表征参数和第二表征参数,第一表征参数用于表征每个增量数据块的重要程度,第二表征参数用于表征每个增量数据块的私密程度;
数据存储单元,用于基于第一表征参数和第二表征参数,将多个增量数据块存储至每个第一虚拟磁盘对应的缓存空间。
在本申请一些实施例中,数据存储单元具体还用于:
获取每个第一虚拟磁盘对应的缓存空间包含的多个缓存区间的区间等级、区间容纳数据类型及区间容纳数据量;
基于第一表征参数和第二表征参数,确定每个增量数据块的目标表征参数;
将目标表征参数、数据块类型、区间等级、区间容纳数据类型及区间容纳数据量输入预先训练的第二预测模型,通过第二预测模型从多个缓存区间中确定每个数据块对应的缓存区间;
将每个数据块存储至每个数据块对应的缓存区间。
在本申请一些实施例中,空间信息包括空间已容纳数据量和空间剩余容纳数据量,区间信息包括区间等级、区间已容纳数据量及区间剩余容纳数据量,顺序确定单元705具体用于:
将区间等级、区间已容纳数据量及区间剩余容纳数据量输入预先训练的第三预测模型,通过第三预测模型输出每个缓存空间的第一空间参数;
将第一空间参数、空间已容纳数据量及空间剩余容纳数据量输入预先训练的第四预测模型,通过第四预测模型输出每个缓存空间的第二空间参数;
基于第二空间参数,确定多个目标增量备份磁盘的覆盖顺序。
在本申请一些实施例中,数据恢复单元706具体用于:
获取目标虚拟磁盘包含的多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量及磁盘属性信息;
获取每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量及磁盘属性信息;
基于多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息,从多个第二虚拟磁盘中确定多个第一虚拟磁盘分别对应的多个目标虚拟磁盘;
基于覆盖顺序和多个目标增量备份磁盘,对多个目标虚拟磁盘进行覆盖。
在本申请一些实施例中,数据恢复单元706具体还用于:
将多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息输入预先训练的第五预测模型,通过第五预测模型输出每个第二虚拟磁盘在每个第一虚拟磁盘下的磁盘得分;
基于磁盘得分,从多个第二虚拟磁盘中确定多个第一虚拟磁盘分别对应的多个目标虚拟磁盘。
本申请实施例还提供一种计算机设备,其集成了本申请实施例所提供的任一种虚拟机数据恢复装置,计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中一个或多个应用程序被存储于存储器中,并配置为由处理器执行上述虚拟机数据恢复方法实施例中任一实施例中的虚拟机数据恢复方法中的步骤。
本申请实施例还提供一种计算机设备,其集成了本申请实施例所提供的任一种虚拟机数据恢复装置。如图4所示,其示出了本申请实施例所涉及的计算机设备的结构示意图,具体来讲:
该计算机设备可以包括一个或者一个以上处理核心的处理器801、一个或一个以上计算机可读存储介质的存储器802、电源803和输入单元804等部件。本领域技术人员可以理解,图4中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器801是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器802内的软件程序和/或模块,以及调用存储在存储器802内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器801可包括一个或多个处理核心;优选的,处理器801可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器801中。
存储器802可用于存储软件程序以及模块,处理器801通过运行存储在存储器802的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器802可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器802还可以包括存储器控制器,以提供处理器801对存储器802的访问。
计算机设备还包括给各个部件供电的电源803,优选的,电源803可以通过电源管理系统与处理器801逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源803还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该计算机设备还可包括输入单元804,该输入单元804可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器801会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器802中,并由处理器801来运行存储在存储器802中的应用程序,从而实现各种功能,如下:
接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘;
当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据;
将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘;
获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘;
获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;
基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。其上存储有计算机程序,计算机程序被处理器进行加载,以执行本申请实施例所提供的任一种虚拟机数据恢复方法中的步骤。例如,计算机程序被处理器进行加载可以执行如下步骤:
接收针对源虚拟机的数据恢复请求,基于数据恢复请求确定源虚拟机的数据恢复类型,源虚拟机包括多个第一虚拟磁盘;
当数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个第一虚拟磁盘的增量数据,多个缓存空间与多个第一虚拟磁盘分别对应,每个缓存空间用于存储每个缓存空间对应的第一虚拟磁盘的增量数据;
将每个第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个第一虚拟磁盘的当前增量备份磁盘;
获取每个第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将全量备份磁盘、历史增量备份磁盘及当前增量备份磁盘进行合并,得到多个第一虚拟磁盘分别对应的多个目标增量备份磁盘;
获取每个缓存空间的空间信息及每个缓存空间包含的多个缓存区间的区间信息,基于空间信息和区间信息确定多个目标增量备份磁盘的覆盖顺序;
基于多个目标增量备份磁盘和覆盖顺序对目标虚拟机进行磁盘覆盖,以将源虚拟机中的数据恢复至目标虚拟机。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
具体实施时,以上各个单元或结构可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元或结构的具体实施可参见前面的方法实施例,在此不再赘述。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种虚拟机数据恢复方法、装置、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种虚拟机数据恢复方法,其特征在于,包括:
接收针对源虚拟机的数据恢复请求,基于所述数据恢复请求确定所述源虚拟机的数据恢复类型,所述源虚拟机包括多个第一虚拟磁盘;
当所述数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个所述第一虚拟磁盘的增量数据,多个所述缓存空间与多个所述第一虚拟磁盘分别对应,每个所述缓存空间用于存储每个所述缓存空间对应的第一虚拟磁盘的增量数据;
将每个所述第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个所述第一虚拟磁盘的当前增量备份磁盘;
获取每个所述第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将所述全量备份磁盘、所述历史增量备份磁盘及所述当前增量备份磁盘进行合并,得到多个所述第一虚拟磁盘分别对应的多个目标增量备份磁盘;
获取每个所述缓存空间的空间信息及每个所述缓存空间包含的多个缓存区间的区间信息,基于所述空间信息和所述区间信息确定多个所述目标增量备份磁盘的覆盖顺序;
基于多个所述目标增量备份磁盘和所述覆盖顺序对目标虚拟机进行磁盘覆盖,以将所述源虚拟机中的数据恢复至所述目标虚拟机。
2.根据权利要求1所述的虚拟机数据恢复方法,其特征在于,所述基于所述数据恢复请求确定所述源虚拟机的数据恢复类型之后,包括:
当所述数据恢复类型为全量恢复时,基于kvm底层备份命令将多个所述第一虚拟磁盘中的全量数据分别转化为raw格式的数据磁盘,得到每个所述第一虚拟磁盘的全量备份磁盘;
基于所述全量备份磁盘对所述目标虚拟机进行磁盘覆盖,并创建多个所述第一虚拟磁盘分别对应的多个缓存空间。
3.根据权利要求2所述的虚拟机数据恢复方法,其特征在于,所述创建多个所述第一虚拟磁盘分别对应的多个缓存空间之后,包括:
获取每个所述第一虚拟磁盘的增量数据,所述增量数据中包括多个增量数据块;
获取每个所述增量数据块的数据量、数据块类型及数据块关键词,将所述数据量、所述数据块类型及所述数据块关键词输入预先训练的第一预测模型,通过所述第一预测模型输出每个所述增量数据块的第一表征参数和第二表征参数,所述第一表征参数用于表征每个所述增量数据块的重要程度,所述第二表征参数用于表征每个所述增量数据块的私密程度;
基于所述第一表征参数和所述第二表征参数,将多个所述增量数据块存储至每个所述第一虚拟磁盘对应的缓存空间。
4.根据权利要求3所述的虚拟机数据恢复方法,其特征在于,所述基于所述第一表征参数和所述第二表征参数,将多个所述增量数据块存储至每个所述第一虚拟磁盘对应的缓存空间,包括:
获取每个所述第一虚拟磁盘对应的缓存空间包含的多个缓存区间的区间等级、区间容纳数据类型及区间容纳数据量;
基于所述第一表征参数和所述第二表征参数,确定每个所述增量数据块的目标表征参数;
将所述目标表征参数、所述数据块类型、所述区间等级、所述区间容纳数据类型及所述区间容纳数据量输入预先训练的第二预测模型,通过所述第二预测模型从多个所述缓存区间中确定每个所述数据块对应的缓存区间;
将每个所述数据块存储至每个所述数据块对应的缓存区间。
5.根据权利要求1所述的虚拟机数据恢复方法,其特征在于,所述空间信息包括空间已容纳数据量和空间剩余容纳数据量,所述区间信息包括区间等级、区间已容纳数据量及区间剩余容纳数据量,所述基于所述空间信息和所述区间信息确定多个所述目标增量备份磁盘的覆盖顺序,包括:
将所述区间等级、所述区间已容纳数据量及所述区间剩余容纳数据量输入预先训练的第三预测模型,通过所述第三预测模型输出每个所述缓存空间的第一空间参数;
将所述第一空间参数、所述空间已容纳数据量及所述空间剩余容纳数据量输入预先训练的第四预测模型,通过所述第四预测模型输出每个所述缓存空间的第二空间参数;
基于所述第二空间参数,确定多个所述目标增量备份磁盘的覆盖顺序。
6.根据权利要求1所述的虚拟机数据恢复方法,其特征在于,所述基于多个所述目标增量备份磁盘和所述覆盖顺序对目标虚拟机进行磁盘覆盖,包括:
获取目标虚拟磁盘包含的多个第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量及磁盘属性信息;
获取每个所述第一虚拟磁盘的磁盘数据类型、磁盘容纳量及磁盘属性信息;
基于多个所述第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个所述第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息,从多个所述第二虚拟磁盘中确定多个所述第一虚拟磁盘分别对应的多个目标虚拟磁盘;
基于所述覆盖顺序和多个所述目标增量备份磁盘,对多个所述目标虚拟磁盘进行覆盖。
7.根据权利要求6所述的虚拟机数据恢复方法,其特征在于,所述基于多个所述第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个所述第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息,从多个所述第二虚拟磁盘中确定多个所述第一虚拟磁盘分别对应的多个目标虚拟磁盘,包括:
将多个所述第二虚拟磁盘的状态信息、磁盘数据类型、磁盘容纳量、磁盘属性信息及每个所述第一虚拟磁盘的磁盘数据类型、磁盘容纳量、磁盘属性信息输入预先训练的第五预测模型,通过所述第五预测模型输出每个所述第二虚拟磁盘在每个所述第一虚拟磁盘下的磁盘得分;
基于所述磁盘得分,从多个所述第二虚拟磁盘中确定多个所述第一虚拟磁盘分别对应的多个目标虚拟磁盘。
8.一种虚拟机数据恢复装置,其特征在于,包括:
请求接收单元,用于接收针对源虚拟机的数据恢复请求,基于所述数据恢复请求确定所述源虚拟机的数据恢复类型,所述源虚拟机包括多个第一虚拟磁盘;
第一获取单元,用于当所述数据恢复类型为增量恢复时,从预先构建的多个缓存空间中获取多个所述第一虚拟磁盘的增量数据,多个所述缓存空间与多个所述第一虚拟磁盘分别对应,每个所述缓存空间用于存储每个所述缓存空间对应的第一虚拟磁盘的增量数据;
第一转化单元,用于将每个所述第一虚拟磁盘的增量数据转化为raw格式的数据磁盘,得到每个所述第一虚拟磁盘的当前增量备份磁盘;
磁盘合并单元,用于获取每个所述第一虚拟磁盘的全量备份磁盘和历史增量备份磁盘,将所述全量备份磁盘、所述历史增量备份磁盘及所述当前增量备份磁盘进行合并,得到多个所述第一虚拟磁盘分别对应的多个目标增量备份磁盘;
顺序确定单元,用于获取每个所述缓存空间的空间信息及每个所述缓存空间包含的多个缓存区间的区间信息,基于所述空间信息和所述区间信息确定多个所述目标增量备份磁盘的覆盖顺序;
数据恢复单元,用于基于多个所述目标增量备份磁盘和所述覆盖顺序对目标虚拟机进行磁盘覆盖,以将所述源虚拟机中的数据恢复至所述目标虚拟机。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求1至7中任一项所述的虚拟机数据恢复方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的虚拟机数据恢复方法中的步骤。
CN202310852132.6A 2023-07-12 2023-07-12 虚拟机数据恢复方法、装置、计算机设备及存储介质 Active CN116578447B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310852132.6A CN116578447B (zh) 2023-07-12 2023-07-12 虚拟机数据恢复方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310852132.6A CN116578447B (zh) 2023-07-12 2023-07-12 虚拟机数据恢复方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN116578447A CN116578447A (zh) 2023-08-11
CN116578447B true CN116578447B (zh) 2023-10-10

Family

ID=87538206

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310852132.6A Active CN116578447B (zh) 2023-07-12 2023-07-12 虚拟机数据恢复方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN116578447B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117033085B (zh) * 2023-10-09 2024-01-19 武汉吧哒科技股份有限公司 kvm虚拟机备份方法、装置、计算机设备及存储介质

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106802840A (zh) * 2017-01-19 2017-06-06 郑州云海信息技术有限公司 一种虚拟机备份、恢复方法及装置
US9684567B2 (en) * 2014-09-04 2017-06-20 International Business Machines Corporation Hypervisor agnostic interchangeable backup recovery and file level recovery from virtual disks
US10114706B1 (en) * 2015-09-22 2018-10-30 EMC IP Holding Company LLC Backup and recovery of raw disks [RDM] in virtual environment using snapshot technology
CN109582443A (zh) * 2018-12-06 2019-04-05 国网江西省电力有限公司信息通信分公司 基于分布式存储技术的虚拟机备份系统
CN112416527A (zh) * 2020-11-30 2021-02-26 深信服科技股份有限公司 一种数据恢复方法、装置、设备及存储介质
CN112527452A (zh) * 2020-12-03 2021-03-19 北京浪潮数据技术有限公司 跨OpenStack的虚拟机迁移方法、装置及介质
CN112882859A (zh) * 2021-02-07 2021-06-01 上海英方软件股份有限公司 一种虚拟机合成备份方法及系统
CN113626261A (zh) * 2021-10-13 2021-11-09 苏州浪潮智能科技有限公司 一种数据备份方法、装置、设备及计算机可读存储介质
CN113626256A (zh) * 2021-07-16 2021-11-09 济南浪潮数据技术有限公司 一种虚拟机磁盘数据备份方法、装置、终端及存储介质
CN113515410B (zh) * 2021-04-23 2022-04-22 上海英方软件股份有限公司 一种虚拟机保护系统及实现方法
CN114443369A (zh) * 2022-01-27 2022-05-06 华云数据控股集团有限公司 异构集群虚拟机备份恢复方法、系统及云平台
CN111949445B (zh) * 2020-07-29 2022-07-19 苏州浪潮智能科技有限公司 一种增量备份数据存储方法、装置、设备、产品
CN114564284B (zh) * 2022-04-29 2022-08-02 武汉四通信息服务有限公司 虚拟机的数据备份方法、计算机设备及存储介质
CN114706661B (zh) * 2022-05-31 2022-09-20 武汉四通信息服务有限公司 虚拟机的容灾备份方法、系统、计算机设备及存储介质
CN115098299A (zh) * 2022-06-28 2022-09-23 江苏安超云软件有限公司 一种虚拟机的备份方法、容灾方法、装置及设备

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9684567B2 (en) * 2014-09-04 2017-06-20 International Business Machines Corporation Hypervisor agnostic interchangeable backup recovery and file level recovery from virtual disks
US10114706B1 (en) * 2015-09-22 2018-10-30 EMC IP Holding Company LLC Backup and recovery of raw disks [RDM] in virtual environment using snapshot technology
CN106802840A (zh) * 2017-01-19 2017-06-06 郑州云海信息技术有限公司 一种虚拟机备份、恢复方法及装置
CN109582443A (zh) * 2018-12-06 2019-04-05 国网江西省电力有限公司信息通信分公司 基于分布式存储技术的虚拟机备份系统
CN111949445B (zh) * 2020-07-29 2022-07-19 苏州浪潮智能科技有限公司 一种增量备份数据存储方法、装置、设备、产品
CN112416527A (zh) * 2020-11-30 2021-02-26 深信服科技股份有限公司 一种数据恢复方法、装置、设备及存储介质
CN112527452A (zh) * 2020-12-03 2021-03-19 北京浪潮数据技术有限公司 跨OpenStack的虚拟机迁移方法、装置及介质
CN112882859A (zh) * 2021-02-07 2021-06-01 上海英方软件股份有限公司 一种虚拟机合成备份方法及系统
CN113515410B (zh) * 2021-04-23 2022-04-22 上海英方软件股份有限公司 一种虚拟机保护系统及实现方法
CN113626256A (zh) * 2021-07-16 2021-11-09 济南浪潮数据技术有限公司 一种虚拟机磁盘数据备份方法、装置、终端及存储介质
CN113626261A (zh) * 2021-10-13 2021-11-09 苏州浪潮智能科技有限公司 一种数据备份方法、装置、设备及计算机可读存储介质
CN114443369A (zh) * 2022-01-27 2022-05-06 华云数据控股集团有限公司 异构集群虚拟机备份恢复方法、系统及云平台
CN114564284B (zh) * 2022-04-29 2022-08-02 武汉四通信息服务有限公司 虚拟机的数据备份方法、计算机设备及存储介质
CN114706661B (zh) * 2022-05-31 2022-09-20 武汉四通信息服务有限公司 虚拟机的容灾备份方法、系统、计算机设备及存储介质
CN115098299A (zh) * 2022-06-28 2022-09-23 江苏安超云软件有限公司 一种虚拟机的备份方法、容灾方法、装置及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
云中虚拟机异常检测与恢复的研究;贺寰烨;中国优秀硕士学位论文全文数据库;全文 *

Also Published As

Publication number Publication date
CN116578447A (zh) 2023-08-11

Similar Documents

Publication Publication Date Title
US8560639B2 (en) Dynamic placement of replica data
CN107122379B (zh) 收集与本地存储的数据文件相关联的事务数据
EP4080419A1 (en) Model training method and apparatus
CN116578447B (zh) 虚拟机数据恢复方法、装置、计算机设备及存储介质
US8208893B1 (en) Performance metrics processing for anticipating unavailability
CN111125519B (zh) 用户行为预测方法、装置、电子设备以及存储介质
CN112306623A (zh) 深度学习任务的处理方法、装置及计算机可读存储介质
CN107301090B (zh) 在存储服务器中为应用设置数据处理路径的方法及装置
CN104731848A (zh) 管理对客户机设备上的数据的访问的方法和客户机设备
CN108763511B (zh) 页面中图层排版方法、装置、电子设备及存储介质
CN111935025A (zh) 一种tcp传输性能的控制方法、装置、设备和介质
CN117033082A (zh) 虚拟机备份恢复方法、装置、计算机设备及存储介质
CN112044061B (zh) 游戏画面处理方法、装置、电子设备以及存储介质
WO2023109663A1 (zh) 基于最大熵逆强化学习的无服务器计算资源配置方法
CN115599605A (zh) 一种边缘节点的数据备份方法、系统及相关组件
CN114490432A (zh) 内存处理方法、装置、电子设备和计算机可读存储介质
CN115221060A (zh) 基于关联字段的用例生成方法、装置、设备及存储介质
CN111564165B (zh) 数据存储方法、装置、设备及存储介质
CN115174890A (zh) 流量回放测试方法、装置、计算机设备及存储介质
CN113687952A (zh) 一种信息处理方法、装置、设备及存储介质
CN116775381B (zh) 虚拟机数据恢复方法、装置、计算机设备及存储介质
CN112306373B (zh) 一种集群扩容方法、系统及电子设备和存储介质
CN115102924B (zh) 集群地址切换方法、装置、计算机设备及存储介质
CN117033084B (zh) 虚拟机备份方法、装置、电子设备及存储介质
CN115242685B (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