一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于备份数据的方法和系统与流程

2022-02-19 09:57:37 来源:中国专利 TAG:


1.本公开内容涉及用于对数据备份进行优化的系统和方法。特别地,本文描述的方法和系统对与来自备份存储设备的虚拟机镜像相关联的镜像数据的传送、存储和恢复进行优化。


背景技术:

2.数据丢失和数据恢复对于企业和组织而言可能成本非常高。另一方面,将数据备份至云可能也是昂贵的,这取决于所使用的方法、数据的类型和可用于执行备份的资源。
3.在传统的备份系统中,生成数据卷的快照并且将该快照传递至备份站点以进行存储。在基于云的备份系统中,快照以非结构化方式存储在对象存储装置中。将数据备份至对象存储装置的备份系统在一些实例中是优选的,这是因为对象存储装置比其他存储架构更便宜。然而,从对象存储装置中恢复数据通常是缓慢的。
4.灾难恢复系统被设计成使在灾难的情况下的数据丢失和数据恢复时间最小化。一些灾难恢复系统使用连续数据复制以对在复制站点处的数据卷中的磁盘镜像进行复制。使用连续数据复制方法的灾难恢复系统在数据传送期间消耗了比备份系统更高的量的带宽,但是他们也减少了恢复时间。


技术实现要素:

5.本发明的目的是提供一种用于备份与虚拟机镜像相关联的镜像数据的方法。
6.前述目的和其他目的通过独立权利要求的特征来实现。根据从属权利要求、说明书和附图,另外的实现形式是明显的。
7.根据第一方面,提供了一种用于备份数据卷中的与虚拟机镜像相关联的镜像数据的方法。该方法包括:针对用于将镜像数据传送至备份数据存储设备的一种或更多种数据移动方法中的每一种数据移动方法以及针对用于在备份数据存储设备处存储镜像数据的一种或更多种数据格式中的每一种数据格式,对下述进行评估:用于从备份数据存储设备恢复镜像数据的恢复时间和恢复成本;用于传送镜像数据的带宽成本;用于存储镜像数据的数据存储成本;以及镜像数据的数据丢失的成本;基于所述评估来选择数据移动方法和数据格式;以及基于所述选择来将镜像数据从数据卷传送至备份数据存储设备。
8.根据第一方面的方法使得用户能够对镜像数据到备份数据存储设备的传送和存储进行优化。该优化基于多种因素进行,所述多种因素包括恢复时间、成本和可用带宽。
9.根据第二方面,提供了一种计算系统。该计算系统包括:数据卷,该数据卷用于托管虚拟机镜像;以及处理器,该处理器通信地耦接至数据卷并且被布置成:访问数据卷中的与虚拟机镜像相关联的镜像数据;针对用于将镜像数据传送至备份数据存储设备的一种或更多种数据移动方法中的每一种数据移动方法以及针对用于在备份数据存储设备处存储镜像数据的一种或更多种数据格式中的每一种数据格式,对下述进行评估:用于从备份数据存储设备恢复镜像数据的恢复时间和恢复成本;用于传送镜像数据的带宽成本;用于存
储镜像数据的数据存储成本;以及镜像数据的数据丢失的成本;基于所述评估来选择数据移动方法和数据格式;以及基于所述选择来将镜像数据从数据卷传送至备份数据存储设备。
10.在第一实现形式中,该方法包括将镜像数据存储在备份数据存储设备处的块存储装置中。
11.在第二实现形式中,该方法包括将镜像数据存储在备份数据存储设备处的对象存储装置中。
12.在第三实现形式中,该方法还包括:对用于在备份数据存储设备处的存储装置之间传送镜像数据的成本进行评估;以及基于该评估来选择数据移动方法和数据格式。
13.根据第三实现形式的方法还基于在备份站点处的存储装置之间传送数据的成本对数据移动方法和数据格式的选择进行优化。该实现方式可以用于基于备份站点处的工作负荷来动态地改变数据移动方法和存储装置。
14.在第四实现形式中,一种或更多种数据移动方法中的一种数据移动方法包括将镜像数据复制到在备份数据存储设备处的复制的数据卷。
15.在第五实现形式中,将镜像数据复制到复制的数据卷中包括:拦截对数据卷的与虚拟机镜像相关联的数据写入操作;将该写入操作传递至复制的数据卷;以及将该写入操作复制到复制的数据卷中。
16.在第六实现形式中,该方法包括:生成镜像数据的第一快照;以及基于该第一快照将镜像数据存储在备份数据存储设备处。
17.在第七实现形式中,该方法还包括:在第一快照之后生成镜像的第二快照;识别存储在备份数据存储设备处的与第一快照相关联的镜像数据;确定镜像数据的第一快照与第二快照之间的差异;以及基于该确定来将镜像数据存储在备份数据存储设备处。
18.根据第七实现形式的方法提供了生成数据卷的备份数据的有效方法。
19.在第八实现形式中,该方法包括:访问存储在备份数据存储设备的对象存储装置处的镜像数据;以及将该镜像数据传送至块存储装置。
20.与直接从对象存储装置恢复数据相比,根据第八实现形式的该方法使得所备份的数据能够被更有效地恢复。
21.在第九实现形式中,该方法包括:生成复制的数据卷的快照;以及将该快照传送至备份数据存储设备处的对象存储装置。
22.根据第九实现形式的方法提供了对已经传送至复制的数据卷的数据进行存储的便宜的方式。
23.本发明的这些方面和其他方面根据下面描述的实施方式将变得明显。
附图说明
24.为了更完整地理解本公开内容及其优点,现在参照以下结合附图进行的描述,在附图中:
25.图1是根据示例的用于备份镜像数据的设备的示意图。
26.图2是根据示例的用于备份镜像数据的方法的框图。
27.图3是根据示例的用于备份镜像数据的包括存储器和程序代码的系统的示意图。
具体实施方式
28.下面足够详细地描述了示例实施方式,以使得本领域普通技术人员能够实施和实现本文描述的系统和过程。重要的是要理解,实施方式可以以许多替选形式提供并且不应被解释为限于本文阐述的示例。
29.因此,虽然可以以各种方式修改实施方式并且采用各种替选形式,但是其具体实施方式在附图中示出并且在下面作为示例详细描述。无意限制于所公开的特定形式。相反,落入所附权利要求书范围内的所有修改、等同内容和替选形式应当被包括在内。贯穿附图和适当的详细描述,示例实施方式的元件始终由相同的附图标记表示。
30.本文中用于描述实施方式的术语并不旨在限制范围。“一个”、“一种”和“该”是单数,这是因为它们具有单个指示对象,然而在本文献中使用单数形式不应排除多于一个指示对象的存在。换句话说,除非上下文另外明确指示,否则以单数形式提及的元件可以编号一个或更多个。还将理解的是,术语“包含”、“包含有”、“包括”和/或“包括有”在本文中使用时指定所陈述的特征、项、步骤、操作、元件和/或部件的存在,但是不排除一个或更多个其他特征、项、步骤、操作、元件、部件和/或其组的存在或添加。
31.除非另有限定,否则本文中使用的所有术语(包括技术术语和科学术语)如本领域惯常的那样被解释。还将理解的是,除非本文如此明确地限定,否则常用的术语也应被解释为相关领域中的惯常含义而不是理想化或过于正式的含义。
32.图1是设备100的框图。设备100包括主机计算系统110。在一个示例中,主机计算系统110为数据中心中的服务器。可以存在与主机计算系统110类似的多个这样的计算系统。主机计算系统110耦接至本地块存储装置115。在本地块存储装置115中,数据被组织为块。所述块模拟传统的磁盘存储装置或磁带存储装置。每个块具有标识符,该标识符使得所述块能够被主机计算系统110寻址和检索。
33.在图1所示的示例中,主机计算系统110包括管理程序120。管理程序120可以以软件、固件或硬件来实现。管理程序120在主机系统110上创建并执行一个或更多个虚拟机。每个虚拟机在本文中可以被称为实例、虚拟机实例、客体、客体实例或客机。管理程序120向每个实例提供虚拟操作平台并且管理虚拟化操作系统的执行。多个实例共享主机计算系统110的相同基础硬件资源诸如本地块存储装置115。
34.管理程序120可以向用户提供一个或更多个管理功能,所述一个或更多个管理功能使得用户能够控制在主机计算系统110上执行的虚拟机的操作。在图1中,主机110控制由管理程序120管理的单个虚拟机实例130。将包含虚拟机实例130的内容和结构的计算机文件存储在主机计算系统110的本地块存储装置115上作为虚拟机卷135。
35.在图1所示的示例中,主机计算系统110与备份数据存储设备140进行通信。在示例中,备份数据存储设备140远离主机系统110。例如,备份数据存储设备140可以由第三方云服务提供者进行管理。
36.备份数据存储设备140包括块存储装置150。在块存储装置150中,数据被组织成与存储在本地块存储装置115中的数据类似的块。
37.备份数据存储设备140还包括对象存储装置160。与块存储装置150相比,对象存储装置160将数据作为对象进行管理。每个对象包括数据、可变量的元数据和唯一标识符。将数据存储为对象使得对低水平数据存储操作的管理能够在更高水平上被抽象出。然而,执
行操作有性能影响。例如,修改与对象相关联的数据需要:从对象存储装置160中检索该对象;修改所述数据;以及将整个对象写回至对象存储装置160。这使得对象存储对于存储非常频繁地变化的数据较少有用。另一方面,如果该数据未频繁地变化或者根本不变化,例如,如可以是存储备份数据时的情况,则对象存储对于存储数据是有用的。
38.在本文描述的示例中,使用两种数据移动方法之一将数据从主机系统110的虚拟机数据卷135移动至备份数据存储设备140。第一方法——也被称为连续数据复制——将虚拟机130的写操作复制到虚拟机数据卷135。虚拟机130执行分离器170。分离器170拦截对虚拟机数据卷135的关于对备份存储设备140上运行的应用的每次写入i/o复本的输入/输出(input/output,i/o)操作。由应用将该写入i/o复制到块存储装置150处的虚拟机卷135的副本。
39.因为i/o更新将持续地通过网络进行通信,因此连续复制消耗了大量的带宽。然而,主机系统110故障的情况下的恢复时间是快速的。此外,连续复制可以允许恢复至任何时间点,并且恢复点可以接近于与机器数据卷135同步。换句话说,恢复点目标(recovery point objective,rpo)是低的,并且与从对象存储装置160恢复的小时相比,恢复点目标可以以秒来测量。根据本文描述的示例,备份存储装置140可以被布置成在块存储装置150处周期性地创建副本卷的快照155,以允许进行时间点恢复。
40.第二数据移动方法是基于到对象存储装置160的备份。在主机系统110上运行的应用180生成虚拟机卷135的快照。将快照185存储在本地块存储装置115中。应用180确定所述快照与先前快照之间的变化的列表。如果是第一次生成快照,则所述快照包括整个虚拟机卷135。
41.可以使用分块算法将数据划分为大块,以减少使用去重的数据通信的量。去重包括确定在对象存储装置160中已经存在哪些大块。通过应用180将新的块传递至对象存储装置160,并且将所述数据与指示所述大块所位于的位置的元数据一起存储。
42.从对象存储装置160中的备份来如下恢复镜像数据:首先,从对象存储装置160中选择用于恢复的镜像,并且在块存储装置150中创建新的磁盘卷。在磁盘卷上重建来自对象存储装置160的该镜像。可以使用经分块的镜像数据的元数据来识别哪些数据块对应于该镜像。最后,将磁盘卷附接至新的虚拟机实例。在这种情况下,在备份存储设备140中执行对虚拟机130的恢复。
43.在本文描述的示例中,描述了从虚拟机130的连续数据复制切换至块存储装置150并且备份至对象存储装置160的方法。首先,应用180在本地块存储装置115中生成虚拟机卷135的快照。继续到备份块存储装置150的连续数据复制并且生成另外的快照。一旦卷135的本地快照的所有数据已经到达块存储装置150,则连续复制停止。开始用于将在副本站点处生成的所有快照复制到对象存储装置160中的过程。将虚拟机卷135的最旧快照传送至对象存储装置160中的备份层。然后,通过连续快照促使应用180确定变化列表并且将数据传输至对象存储装置160。一旦所述数据已经被上传至对象存储设备160,从该点开始,就可以使用先前描述的方法将虚拟机130备份至对象存储装置160。创建卷135在生产站点上的第二快照并且传送第二快照与第一快照之间的差异。
44.类似地,描述了从备份至对象存储装置160切换至到块存储装置150的连续数据复制的方法。最初,主机系统110正在将镜像数据传递至对象存储装置160。激活主机系统110
中的分离器170并且跟踪对本地块存储装置115的i/o操作。生成最终快照并且执行到对象存储装置160的备份。将最新的快照从对象存储装置恢复至备份块存储装置150处的副本卷。开始到块存储装置150中的副本卷的连续数据复制并且使由于开始跟踪而发生的变化同步。
45.当数据以复制格式在复制的数据卷上时,所述数据也可以周期性地转换为备份格式。替代保留副本卷150的多个快照,使用与卷150的先前快照的差异来创建快照155并且立即将快照155传送至对象存储装置160。
46.根据本文描述的示例,使用这些方法,针对在主机系统110上运行的每个虚拟机实例,存在用于存储和数据传送的四个选项:
47.1.连续地传送数据并且将所述数据保留在块存储装置150中。该方法使用块存储装置快照155来保留历史时间点记录。这种方法基于复制允许进行快速恢复、使用高的网络带宽、具有低的rpo、以及依赖于昂贵的存储装置,即,具有用于在故障情况下从中恢复的较少的时间点快照的块存储装置。
48.2.连续地传送数据并且将所述数据保留在块存储装置150中,但是仅将最后几个时间点或者仅将最近的时间点保留在块存储装置150中。将旧的数据复本保留在对象存储装置160中。该方法:使用复制和备份并且允许进行快速恢复;使用高的网络带宽;具有低的rpo;但是使用昂贵的存储装置——具有用于在故障情况下从中恢复的许多时间点的块存储装置和对象存储装置两者。
49.3.使用应用180传送数据并且将所述数据以备份格式保留在对象存储装置160中。该方法具有较慢的恢复,但是具有便宜的存储装置、用于执行备份的低带宽、以及用于在故障的情况下从中选择的许多时间点。
50.4.使用应用180传送数据并且将所述数据以备份格式形式保留在对象存储装置160中,但是同样将最近的镜像转换为块存储装置150中的块格式,以允许进行快速恢复。该方法:使用备份和复制,其允许进行快速恢复;使用较少的带宽和高的rpo;但是在灾难情况下会遭受更多的数据丢失,并且使用块存储装置和对象存储装置两者的存储是昂贵的。存在用于在故障情况下从中选择的很多时间点。
51.使用上面描述的方法,可以在这些选项之间转变。例如,可以将数据作为快照进行传送,并且所述数据仅存储在对象存储装置160中(选项3),但是然后,将所述数据传送至块存储装置150,并且从那时起,可以使用数据复制将数据备份至块存储装置150(选项1或2)。
52.基于虚拟机实例的过去行为,针对每个虚拟机实例对这些选项中的每个选项的成本进行估计。对每个选项的用于将数据移动至备份数据存储设备140所需的总带宽进行估计。基于实例的工作负荷和大小对备份数据存储设备140处的存储的成本进行估计。还可以对用于从备份数据存储设备140恢复镜像数据的恢复时间和恢复成本进行估计。可以对数据丢失成本(rpo价格)进行估计。数据丢失成本可以取决于由用户提供的参数。例如,在一些情况下,财务方面的恢复成本可能更高或更低,这取决于对于用户来说数据的业务关键程度。这些估计使得能够评估整个成本函数并且能够跨虚拟机实例执行成本优化。用户可以设置针对恢复成本的目标,并且本文描述的方法基于该目标对数据的传送和存储进行优化。
53.在一些情况下,数据工作负荷改变,并且使用本文描述的方法,数据移动方法和存
储装置被动态地改变。成本和方法选择也可以取决于需要将镜像保留多久。例如,如果需要将镜像保留几个月或几年,则可以优选将较旧的镜像以备份格式保留在对象存储装置160中,即使需要快速恢复也是如此,这是因为快速恢复可能仅需要较新的镜像。
54.图2示出了根据示例的方法200的框图。结合本文描述的其他方法和系统来实施方法200。特别地,方法200可以在图1所示的设备100上实施。
55.在框210处,针对用于将镜像数据传送至备份数据存储设备的一种或更多种数据移动方法中的每一种数据移动方法以及针对用于在备份数据存储设备处存储镜像数据的一种或更多种数据格式中的每一种数据格式,对下述进行评估:用于从备份数据存储设备恢复镜像数据的恢复时间和恢复成本;用于传送镜像数据的带宽成本;用于存储镜像数据的数据存储成本;以及镜像数据的数据丢失的成本。如本文所讨论的,数据移动方法可以包括连续数据复制方法或快照方法,并且数据格式可以包括块数据格式或者对象存储格式或者块数据格式和对象存储格式两者。在框220处,基于所述评估来选择数据移动方法和数据格式。在框230处,基于所述选择来将镜像数据从数据卷传送至备份数据存储设备。
56.单独地,到块存储装置的连续数据复制和到对象存储装置的备份的方法都具有缺点。备份系统消耗更少的带宽并且可以使用更便宜的存储装置,而连续数据复制需要更快的存储装置和更多的带宽但是在发生灾难时恢复时间更快。大多数用户希望一直使用连续数据复制,然而由于成本要求和带宽要求,这是不切实际的。
57.本文描述的方法和系统使得用户能够以最优方式在传送数据的方法与存储数据的方法之间动态地且无缝地切换,该最优方式考虑了多种因素,所述多种因素包括:用于从备份数据存储设备恢复镜像数据的恢复时间和恢复成本;用于传送镜像数据的带宽成本;用于存储镜像数据的数据存储成本;以及镜像数据的数据丢失的成本。
58.本公开内容中的示例可以提供作为方法、系统或机器可读指令,诸如软件、硬件、固件等的任意组合。可以将这样的机器可读指令包括在计算机可读存储介质(包括但不限于磁盘存储装置、cd

rom(compact disc read

only memory,cd

rom)、光学存储装置等)上,在该计算机可读存储介质中或在该计算机可读存储介质上具有计算机可读程序代码。
59.参照根据本公开内容的示例的方法、装置和系统的流程图和/或框图描述了本公开内容。虽然上面描述的流程图示出了特定的执行顺序,但是执行顺序可以与所描绘的执行顺序不同。关于一个流程图描述的框可以与另一流程图的那些框组合。在一些示例中,流程图中的一些框可能不是必需的以及/或者可以添加附加的框。应当理解,流程图和/或框图中的每个流程和/或框以及流程图和/或框图中的流程和/或图的组合可以由机器可读指令来实现。
60.机器可读指令可以例如由通用计算机、专用计算机、或其他可编程数据处理装置中的一个或更多个嵌入式处理器执行,以实现说明书和图中描述的功能。特别地,处理器设备或处理设备可以执行机器可读指令。因此,可以通过下述处理器来实施设备中的模块:执行存储在存储器中的机器可读指令的处理器;或者根据嵌入在逻辑电路系统中的指令进行操作的处理器。术语“处理器”将被广义地解释成包括cpu(central processing unit,cpu)、处理单元、逻辑单元或可编程门组等。方法和模块都可以由单个处理器执行或者在若干处理器之间划分。
61.这样的机器可读指令还可以存储在计算机可读存储装置中,该计算机可读存储装
置可以引导计算机或其他可编程数据处理装置在特定模式下操作。
62.例如,指令可以在利用所述指令编码的非暂态计算机可读存储介质上提供,所述指令可由处理器执行。图3示出了与存储器320相关联的处理器310的示例。存储器320包括可由处理器310执行的程序代码330。程序代码330提供指令以:访问数据卷中的与虚拟机镜像相关联的镜像数据;针对用于将镜像数据传送至备份数据存储设备的一种或更多种数据移动方法中的每一种数据移动方法以及针对用于在备份数据存储设备处存储镜像数据的一种或更多种数据格式中的每一种数据格式,对下述进行评估:用于从备份数据存储设备恢复镜像数据的恢复时间和恢复成本;用于传送镜像数据的带宽成本;用于存储镜像数据的数据存储成本;以及镜像数据的数据丢失的成本;基于该评估来选择数据移动方法和数据格式;以及基于该选择来将镜像数据从数据卷传送至备份数据存储设备。
63.这样的机器可读指令还可以被加载至计算机或其他可编程数据处理装置上,使得该计算机或其他可编程数据处理装置执行一系列操作,以产生计算机实施的处理,因此,在计算机或其他可编程装置上执行的指令提供了用于实现由流程图中的流程以及/或者框图中的框指定的功能的操作。
64.此外,本文的教导可以以计算机软件产品的形式来实施,该计算机软件产品存储在存储介质中并且包括多个指令,所述多个指令用于使计算机装置实施在本公开内容的示例中列举的方法。
65.虽然已经参照某些示例描述了方法、设备和相关方面,但是在不脱离本公开内容的情况下,可以进行各种修改、改变、省略和替换。特别地,来自一个示例的特征或块可以与另一示例的特征/块组合或者由另一示例的特征/块替换。
66.应当理解,本文提供的实施方式方法的一个或更多个步骤可以由相应的单元或模块执行。各个单元或模块可以为硬件、软件或其组合。例如,单元或模块中的一个或更多个可以为集成电路,诸如现场可编程门阵列(field programmable gate array,fpga)或专用集成电路(application

specific integrated circuit,asic)。
67.虽然已经详细地描述了本公开内容及其优点,但是应当理解,在不脱离由所附权利要求书限定的本公开内容的精神和范围的情况下,可以在本文中进行各种改变、替换和变更。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献