客户端装置的云图像复制

文档序号:1866269 发布日期:2021-11-19 浏览:13次 >En<

阅读说明:本技术 客户端装置的云图像复制 (Cloud image replication for client devices ) 是由 Y·萨阿德 D·兹洛特尼克 于 2019-12-17 设计创作,主要内容包括:用于将装置图像复制到诸如云的存储装置的系统和方法。所述云用对应于装置的基本图像来播种。标识装置的内容与基本图像之间的更改,将更改上传到云并且将更改应用于图像。连续地跟踪所述更改,并且云中的图像可因此用于将装置恢复到任何时间点。云图像还可用在基于云的虚拟机中,所述虚拟机经由基于云的图像向装置的用户提供对装置内容的访问。(Systems and methods for copying device images to a storage device, such as a cloud. The cloud is seeded with a base image corresponding to the device. Changes between the content of the device and the base image are identified, the changes are uploaded to the cloud and applied to the image. The changes are continuously tracked and the images in the cloud can thus be used to restore the device to any point in time. The cloud image may also be used in a cloud-based virtual machine that provides a user of the device access to the device content via the cloud-based image.)

具体实施方式

来呈现本发明的实施方式的更具体描述。应理解,这些附图仅示出了本发明的典型实施方式并且因此不应被视为是限制其范围,通过使用这些附图将更具体和详细地描述并解释本发明的实施方式,在附图中:

图1示出用于将客户端装置图像复制到云或其他存储位置的架构或系统的示例;

图2示出被配置为拦截和跟踪对装置上的数据所做的更改的代理的示例;

图3是用于将客户端图像复制到云或其他存储位置的方法的示例;并且

图4是用于将图像恢复到装置的方法的示例。

具体实施方式

本发明的实施方式通常涉及数据保护以及涉及用于执行数据保护操作的系统、方法和设备。数据保护操作的示例包括但不限于备份操作、恢复操作、复制操作、数据同步操作、图像创建操作、基于云的图像复制操作等或它们的组合。更具体地,本发明的实施方式涉及用于执行数据保护操作的系统、硬件、软件、计算机可读介质和方法。

更具体地,本发明的实施方式涉及用于将客户端装置的图像复制到诸如公共或私有云的目标站点的系统和方法。本发明的实施方式还涉及利用在线连续数据副本将客户端装置的图像复制到云,并且同时允许使用该装置。因此,即使在客户端处的数据正在更改时,本发明的实施方式也能够将图像复制到云。另外,本发明的实施方式简化完整装置图像初始复制到云并且至少对于初始图像减少数据传输要求。

本发明的实施方式使得能够在装置使用时生成装置的完整备份(图像)并且将其存储在本地/云存储上。与具有时间间隔的备份相比,该图像是使用快照或日志机制的连续图像,并且连续图像允许在选定的时间点执行恢复。本发明的实施方式还允许更容易并且无需从外部装置启动的情况下将图像恢复到原始装置或不同装置。

在一个示例中,图像是存储装置(诸如硬盘驱动器)的全部内容的副本(通常是精确副本)。磁盘图像可准确地表示原始存储装置的内容。因此,从图像恢复装置会将装置放置于与生成图像的时间相对应的状态。本发明的实施方式允许生成包括时间点和连续图像的图像。在一个示例中,连续图像允许在每次事务的基础上恢复装置,其具有比周期性图像更精细的粒度。在一个示例中,可使用快照或一种类型的快照。通过将快照应用于起始或基本图像,可实现装置在不同时间点的图像。

在一个示例中,快照包括自前一快照以来装置发生的更改。快照中的所有或部分事务可应用于现有图像。可将一系列增量快照应用于现有图像以生成更新的图像。通过跟踪装置的更改,可在每次事务的基础上创建图像,并且可针对任何选定的时间点配置图像。

图1示出用于保护装置的数据的系统和方法的示例。更具体地,图1示出用于将装置的图像复制到云的系统和方法的示例。

图1示出了与用户100相关联的装置102。装置102可以是计算装置,诸如但不限于台式计算机、膝上型计算机、平板电脑或电话装置等。这些装置中的每一者包括处理器和相关联的电路。装置102包括其上存储内容106的一个或多个存储装置108。装置108的图像可包括装置102上所有内容106的精确副本。

在该示例中,内容106可包括各种类型的数据,诸如操作系统、应用程序、用户数据(例如,桌面上或文档文件夹中的文件、电子邮件)等。“C驱动器”是与装置102相关联的存储装置的示例并且内容106是可存储在C驱动器上的所有数据的示例。因此,内容106可具有不同类型的数据,该数据具有不同目的。在一个示例中,装置102通常从存储装置启动。

图1还示出云服务110。在该示例中,云服务110可在云(例如,数据中心)中实现,该云可根据需要向云服务110分配诸如处理器、存储器、网络装置等的计算资源。可使用物理或虚拟机、微服务、服务器等来实现云服务110。

在该示例中,云服务110可提供或包括对象存储区112,该对象存储可用于存储包括装置102在内的多个装置的图像114。对于具有许多用户装置或与许多用户装置相关联的实体,所有这些装置(或所选装置)的图像均可存储在图像114中。

在该示例中,装置102的内容106的图像作为图像115存储在对象存储区112中的图像114中。图像115还可表示装置102在各个时间点的多个图像。在一个示例中,本发明的实施方式不要求图像115是内容106的精确复制品,只要可从图像115生成内容106的复制品即可。例如,图像115可被存储为一系列文件或对象,所述一系列文件或对象可组合以生成内容106的图像。

这允许以不同的方式和配置存储图像115(和图像114)。例如,可压缩或加密图像115。另外,图像115可由基本图像(下面更详细地讨论)和一个或多个快照或差异组成。需要时,可从基本图像和一个或多个快照中酌情生成所需的时间点图像。在另一示例中,每个快照可对应于装置102的特定图像。

云服务110还可包括图像储存库118或可访问该图像储存库。图像储存库118可存储多个种子图像。图像储存库118允许以来自装置102的较少数据传输来创建装置102的初始或起始图像。在一个示例中,当各种装置是新的时,种子图像对应于各种装置的内容。例如,实体可从一小组已知图像提供其装置。例如,每当分发新装置时,这些图像中的一者可加载到新装置上。

种子图像可包括操作系统、各种应用程序、一组标准数据或工具等。当复制装置102的图像时,图像储存库118可提供形成装置105的基本图像的种子图像。然后从该基本图像生成装置102的图像115。通过对图像115进行播种,仅需要传输内容106与种子图像之间的差异,然后将更改应用到种子图像以达到装置102的初始或基本图像。然后可通过跟踪装置102的后续更改来更新图像115。

对图像114进行播种解决与完整装置图像到云服务110的初始复制相关的问题。为了有效地传输装置的初始副本或图像,图像储存库118可存储如先前针对各种操作系统所述的多个种子图像。仅作为示例,种子图像可包括各种版本的Windows、Linux、Unix的图像。这些图像还可包括应用程序和/或其他数据。在该示例中,当装置102是新的时,图像储存库118中的种子图像中的一者可对应于装置102的图像。然后可用在装置102处发生的更改来更新种子图像以达到装置的当前图像。这可通过标识在装置102处发生的更改来实现。

在一个示例中,代理104可安装在装置102上。代理104可在装置102的制造期间或稍后安装。即使在装置102已使用一段时间之后将代理104安装在装置102上,也可执行本发明的实施方式。

代理104可检测安装在装置102上的基本图像(例如,通过标识OS版本),其对应于存储在图像储存库118中的种子图像中的一者。当建立或生成装置102的初始图像时,内容106然后与用作基本图像的最佳匹配的对应种子图像进行比较。只有相对于图像115发生更改的块将通过网络发送到云存储。然后可将更改的块合并到图像115中。一旦完成初始图像115,后续更新可能只需要标识在装置102处的更改。这些更改可简单地应用于当前图像115。有利地,即使正在使用装置102并且内容106正在更改,也可拍摄装置102的图像。

在一个示例中,代理104可以是安装在装置102上的软件。代理104可安装在操作系统级别处。这允许代理104拦截装置102上的所有写入事务并将这些更改复制到对象存储区112和日志(并最终复制到图像115)。这可在装置102以正常方式操作时完成。

在一个示例中,装置102通过将装置102的图像115存储在远程位置诸如云或本地存储位置(该存储可以是本地存储)来保护。如前所述,存储在云中的基本图像可基于来自图像储存库118的图像。可对应于用于最初提供装置102的图像的该种子图像可用作后续图像的基础。另外,这允许将图像上传到云或在云中创建,而无需在装置处传输大部分数据。

在该示例中,图像115最初对应于来自图像储存库118的种子图像。在为装置生成初始图像时,可由代理104标识在装置102处的更改。在一个示例中,代理104可检查数据106的组块或块(例如,以4MB或其他可配置大小的组块)。更具体地,在一个示例中,因为正在创建图像,该过程正在检查装置上的块。每个组块因此可对应于存储装置108的特定部分。这允许将精确复制品构建为图像115。

可确定这些组块的校验和并且将其与图像115中的对应组块的校验和进行比较。当来自装置102的校验和与来自图像115的对应校验和不匹配时,图像115中的组块用来自装置102的组块替换。这允许使用在装置102处检测到的更改来更新图像115以生成装置102的初始图像115。

因此,图像115可用从图像储存库118中选择的种子图像播种或开始,并且用作基本图像。然后,代理104可标识在装置102处相对于基本图像已更改的块。在客户端102处标识的这些更改被传输并且合并到图像115中。这减少最初创建用于存储在云中的图像的数据传输量,因为基本图像或种子图像不是从装置102传输的。

如果在装置102处已做出更改之后安装了代理104,则仍然可使用客户端存储装置108的全面扫描以类似方式确定相对于来自图像储存库118的基本图像的更改。

在生成或更新图像115时,代理104通过诸如因特网的网络自动将数据发送到云。数据可以周期间隔传输。实际上,代理104可创建标识更改或含有自上次快照以来已写入的更改块的增量的差异或快照。

这些周期性快照或差异可存储在云对象存储区112中。这些周期性快照还允许在不同时间点产生图像。基于快照中的更改或由快照标识的更改,装置图像可以是连续图像。

如果需要恢复装置102,可使用图像115(和/或快照)来将装置102恢复到选定的时间点。替代地,当整个装置丢失(例如,不可用)时,可将图像115恢复为新装置,该新装置可以是与丢失或不可用的装置类似的型号或具有类似的配置。

在一个示例中,通过在恢复分区的菜单中包括“从云中恢复磁盘”的选项来实现恢复过程。这允许用户通过恢复过程来启动装置102(例如,通过在装置启动序列期间按下功能键来中断正常启动序列)并且从云选项中选择恢复。有利地,不需要创建可启动介质、执行特殊启动过程等。当从云选项中选择恢复时,可将图像115拷贝到装置102,然后可在拷贝完成后重新开始和启动装置102。

图像114还允许在云中重建装置102的图像并例如作为虚拟机116启动装置102的图像。使用门户122,这允许用户100经由存储在云中的图像访问他/她的装置并且远程访问内容106,该内容106包括经由门户122在虚拟桌面中的软件和其他应用程序。该示例中的远程访问可以是只读或读/写。如果对云副本进行更改,则代理104在适当时间将这些更改同步回装置102。

因此,图1示出其中代理104存储在装置102上的示例性系统或架构。代理104执行复制操作。通过最初将装置102(或更具体地内容106)与从图像储存库118中选择的种子图像进行比较,然后标识并发送初始增量和周期性差异或快照,在云中创建装置102的图像。然后可使用云图像将装置102恢复到时间点,或基于备份图像115在云中旋转虚拟机116,以在源装置102不可用时提供远程访问。

图2示出在装置上操作的代理的示例。在图2中,分离器204(代理104的示例)有效地定位在操作系统202与装置200上的存储区206之间。当操作系统202将写入发送(1)到存储区206或磁盘时,分离器204拦截(2)写入并且将写入发送到日志208中的快照。然后确认日志写入(3)。分离器204然后将写入发送(4)到存储区206。存储区206确认(5)写入并且分离器204确认(6)写入操作系统202。可从日志208创建对图像115的更新。在一个示例中,日志208标识已更改的块并且这些块或这些块与图像115中的对应块之间的增量可被上传并应用于图像115。

复制装置(诸如装置102)的图像可涉及两个阶段。第一阶段是在云服务110中建立初始图像。如先前所讨论的,这在一个示例中通过对图像115进行播种然后执行对存储装置108的扫描来实现。该扫描可为存储装置108上的每个空间块(例如4MB块)生成校验和。这些校验和可与图像115中对应位置的校验和进行比较。只有校验和不匹配的组块被上传到图像115。这显著减少通过网络从装置到云服务的传输。在安装代理或分离器之后,可由代理或分离器执行扫描。

可能会出现再次执行扫描的情况,诸如在极端故障情况下或有理由认为日志不准确的情况下。

在一个示例中,日志可存储指向更改的块的指针。因此,日志可以是位图。当执行快照时,由指针标识的更改的块被上传到图像115。使用这种方法,日志不创建完整的本地“快照”,而是具有表示更改的块的位图,然后将其周期性传输到云以构建与先前快照的差异。替代地,可将更改的数据拷贝到日志。就这种方法用于装置可能有多个存储装置的情况而言,将更改的数据拷贝到日志可能更有效。

因此,日志允许将差异与图像一起存储或合并到图像中。

图3示出了图像复制方法的示例。在图3中,代理安装302在装置上。可在制造装置时或在稍后的时间点安装代理。例如,可在对装置进行更改之后安装代理。

接下来,执行304图像到云的初始上传。初始上传不需要上传装置上的所有数据或内容。相反,初始上传仅传输不同的块。更具体地,可将装置的内容与匹配种子图像的内容进行比较。只需要上传差异,使得在装置处将种子图像转变为内容的复制品。

在初始同步期间或在云中生成初始图像时(这是通过上传装置的内容与基本或种子图像之间的差异来完成的),代理可扫描整个装置。该过程可在块或块的组的基础上或者在组块的基础上完成。可将在装置处的块或组块的校验和或其他标识符与在云中的备份图像的对应校验和或其他标识符进行比较。当校验和或标识符不匹配时,将对应块或组块或特定更改上传到云并且应用于初始种子图像。当完成该过程时,初始图像就完成了。图像可存储为对象或其他格式。

在创建初始备份图像之后,将对装置的内容的更改复制306到云。这不仅包括对文件的更改,还包括对操作系统、应用程序等的更改,至少因为一个目标是存储装置的图像,这与装置上用户文件的备份不同。这可包括拦截对存储装置的写入并且将更改存储在更改日志中。可定期或按其他时间表上传日志或存储在日志中或由日志标识的更改。在一个示例中,可拍摄装置或日志的快照并且上传到云。这些快照可与存储在云中的图像相关联或合并到存储在云中的图像中。通过拦截写入,装置得到持续保护并且可恢复到任何时间点。因此,图像作为一个图像、一组图像、一个图像和一系列快照等存储308在云中。随着时间推移,可通过删除旧快照或旧图像来整合数据(并且节省存储空间)。

图4示出将图像恢复到装置的示例。在一个示例中,装置被启动402到特殊分区(例如,安全模式或恢复模式)。可向该模式添加菜单项,以允许从云中恢复。当选择该选项时,从云中的图像恢复404图像。这可需要将整个图像下载到装置。一旦写入图像,装置即可正常重启。云中的相同图像也可作为虚拟机启动,以允许对用户进行远程访问。任何更改都可同步回装置。

以下是对用于本发明的各种实施方式的示例性操作环境的多个方面的讨论。该讨论无意以任何方式限制本发明的范围或实施方式的适用性。

一般而言,本发明的实施方式可结合单独地和/或共同地实现和/或致使实现数据管理操作的系统、软件和部件一起来实现。此类数据管理操作可包括但不限于数据读/写/删除操作、数据备份操作、数据恢复操作、数据克隆操作、数据归档操作、复制操作、图像复制操作和灾难恢复操作。因此,虽然这里的讨论在某些方面可针对数据保护环境和操作的讨论,但本发明的范围不限于此。更一般地说,本发明的范围包括所公开的概念可在其中有用的任何操作环境。作为示例而非限制,本发明的实施方式可结合诸如Dell-EMCNetWorker和Avamar平台的数据备份和恢复平台使用。此外,本发明的实施方式可利用诸如Dell EMC ECS等的云存储来实现。

数据保护环境可采用公共或私有云存储环境、本地存储环境以及包括公共和私有元件的混合存储环境的形式,尽管本发明的范围还扩展到任何其他类型的数据保护环境。这些示例性存储环境中的任何一者可部分或完全虚拟化。存储环境可包括数据中心或由该数据中心组成,该数据中心可操作以服务由一个或多个客户端发起的读取和写入操作。

除了存储环境之外,操作环境还可包括一个或多个主机装置(诸如客户端),每个主机装置承载一个或多个应用程序。因此,特定客户端可采用一个或多个应用程序中的每一者的一个或多个实例,或以其他方式与其相关联。一般而言,客户端使用的应用程序不限于任何特定功能或功能类型。例如,一些示例性应用程序和数据包括电子邮件应用程序(诸如MS Exchange)、文件系统以及数据库(诸如Oracle数据库和SQL Server数据库)。客户端上的应用程序可生成需要保护的新的和/或修改的数据。

根据本发明的各种实施方式,本文公开的装置或实体中的任一者可由一个或多个数据保护策略来保护。可通过根据本发明的实施方式的数据保护策略来保护的装置的又一示例包括但不限于容器和VM。

操作环境中的装置(包括客户端、服务器和主机)中的任一者可采用软件、物理机或虚拟机(VM)或这些的任意组合的形式,尽管任何实施方式都不需要特定装置实现或配置。类似地,数据保护系统部件(诸如数据库、存储服务器、存储卷(LUN)、存储磁盘、复制服务、备份服务器、恢复服务器、备份客户端和恢复客户端)可同样地采用软件、物理机器或虚拟机(VM)的形式,尽管任何实施方式都不需要特定的部件实现。在使用VM的情况下,可使用管理程序或其他虚拟机监视器(VMM)来创建和控制VM。

如本文所用,术语“数据”旨在涵盖广泛的范围。因此,所述术语以举例而非限制的方式涵盖诸如可由数据流分段过程产生的数据片段、数据组块、数据块、原子数据、电子邮件、任何类型的对象、文件、联系人、目录、子目录、卷、容器以及上述一项或多项的任何组。

本发明的示例性实施方式适用于能够以模拟、数字或其他形式存储和处理各种类型的对象的任何系统。尽管可以举例的方式使用术语(诸如文档、文件、块或对象),但是本公开的原理不限于表示和存储数据或其他信息的任何特定形式。相反,这些原则同样适用于任何能够表示信息的对象。

如下面更详细讨论的,本文公开的实施方式可包括使用包括各种计算机硬件或软件模块的专用或通用计算机。计算机可包括处理器和承载指令的计算机存储介质,该指令在由处理器执行和/或使其由处理器执行时,执行本文公开的方法中的任何一个或多个。

如上所述,本发明的范围内的实施方式还包括计算机存储介质,其是用于承载或具有存储在其上的计算机可执行指令或数据结构的物理介质。此类计算机存储介质可以是可由通用或专用计算机访问的任何可用物理介质。

作为示例而非限制,此类计算机存储介质可包括硬件存储,诸如固态磁盘/装置(SSD)、RAM、ROM、EEPROM、CD-ROM、闪存、相变存储器(“PCM”)或其他光盘存储、磁盘存储或其他磁存储装置,或任何其他硬件存储装置,其可用于以计算机可执行指令或数据结构形式存储程序代码,该程序代码可由通用或专用计算机系统访问和执行以实现本发明的公开功能。上述的组合也应包括在计算机存储介质的范围内。此类介质也是非暂时性存储介质的示例,并且非暂时性存储介质还涵盖基于云的存储系统和结构,尽管本发明的范围不限于非暂时性存储介质的这些示例。

计算机可执行指令包括例如使通用计算机、专用计算机或专用处理装置执行特定功能或功能组的指令和数据。尽管已以特定于结构特征和/或方法动作的语言描述主题,但应当理解,所附权利要求中定义的主题不一定限于上述特定特征或动作。相反,本文公开的具体特征和行为是作为实现权利要求的示例性形式公开的。

如本文所用,术语“模块”或“部件”可指在计算系统上执行的软件对象或例程。在本文描述的不同部件、模块、引擎和服务可被实现为在计算系统上执行的对象或进程,例如,实现为单独的线程。虽然本文描述的系统和方法可用软件来实现,但用硬件或软件和硬件的组合来实现也是可能的且已设想到。在本公开中,“计算实体”可以是如本文先前定义的任何计算系统,或者在计算系统上运行的任何模块或模块的组合。

在至少一些实例中,提供了硬件处理器,其可操作以实施用于执行方法或过程的可执行指令,诸如本文公开的方法和过程。硬件处理器可包括也可不包括其他硬件的元件,诸如本文公开的计算装置和系统。

在计算环境方面,本发明的实施方式可在客户端-服务器环境中执行,无论是网络环境还是本地环境,或者在任何其他合适的环境中。用于本发明的至少一些实施方式的合适的操作环境包括云计算环境,其中客户端、服务器或其他机器中的一者或多者可驻留在云环境中并且在该云环境中操作。

在不脱离本发明的精神或本质特征的情况下,本发明可体现为其他具体形式。所描述的实施方式在所有方面都应被视为说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是由前述描述指示。落入权利要求的等效含义和范围内的所有变化都应包含在其范围内。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:信息处理系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!