首页> 中国专利> 从原始映像备份中排除文件系统对象

从原始映像备份中排除文件系统对象

摘要

在各种实施方式中描述了与从原始映像备份中排除文件系统对象相关联的技术。在一个示例中,方法可包括:生成虚拟卷,所述虚拟卷包括即将备份的源卷的复制物;以及向所述虚拟卷提供文件系统访问。所述方法还可包括:接收从所述虚拟卷中移除指定文件系统对象的文件系统命令;以及存储修改后的块,所述修改后的块是由移除所述指定文件系统对象的所述文件系统命令产生的。所述方法还可包括执行原始映像备份,以使用来自所述源卷的未修改的块和存储的修改后的块来备份所述源卷,以使得所述原始映像备份排除所述指定文件系统对象。

著录项

  • 公开/公告号CN105593829A

    专利类型发明专利

  • 公开/公告日2016-05-18

    原文格式PDF

  • 申请/专利权人 慧与发展有限责任合伙企业;

    申请/专利号CN201380079891.8

  • 发明设计人 芒达尔·纳尼瓦德卡尔;

    申请日2013-09-27

  • 分类号G06F12/16;G06F9/06;

  • 代理机构北京德琦知识产权代理有限公司;

  • 代理人康泉

  • 地址 美国德克萨斯州

  • 入库时间 2023-12-18 15:12:16

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-22

    授权

    授权

  • 2016-06-15

    实质审查的生效 IPC(主分类):G06F12/16 申请日:20130927

    实质审查的生效

  • 2016-05-18

    公开

    公开

说明书

背景技术

许多公司将数据的保护放在首位。在商务领域,公司所收集和使用的数据通常是 该公司最重要的资产,即使是相对较小的数据丢失或数据中断都可能会造成严重影响。 此外,公司通常需要以遵守各种数据保护规则的方式保护其数据。因此,许多公司已 对数据保护和数据保护策略进行了相当多的投资。

很多公司对其部分或者全部数据执行备份以作为数据保护策略的一部分。数据备 份可按需执行,但更典型地是预定为循环执行(例如,每晚、每周等)。这种数据备份 可用于不同用途。例如,一种用途可能是允许恢复已丢失或受损的数据。另一用途可 能是允许恢复较早时间的数据,从而,例如,还原文件以前的版本和/或还原已知的上 一个好的配置。

附图说明

图1是根据在此描述的实施方式的排除指定文件系统对象的示例性原始映像 备份过程的概念框图;

图2是根据在此描述的实施方式的示例性备份环境的框图;

图3是根据在此描述的实施方式的用于备份源卷的示例性过程的流程图;

图4是根据在此描述的实施方式的示例性计算机系统的框图。

具体实施方式

计算机系统通常在文件系统中存储数据,文件系统以文件和目录的逻辑设置 维持数据。可以以分层或其他合适的方式对包含在文件系统中的文件和目录进行 整理。在一些情况下,文件系统的文件和目录可备份至备份存储系统,从而在可 能引起计算机系统中的数据丢失的故障或其他情况下保护该文件和目录。在随后 的讨论中,文件系统的文件和/或目录可通常被称为“文件系统对象”。

用于备份文件系统和文件系统对象的两种常用方法包括文件系统备份和原始 映像备份。文件系统备份通常可通过以下执行:遍历整个文件系统、处理文件系 统中的每个文件(例如,通过打开、读取和关闭每个文件)、为每个文件收集元 数据以及执行其他动作以在备份中维持文件系统结构。这种尤其用于相对较大的 文件系统的处理可能会造成在备份时间和存储空间方面的巨大开销。

在许多情况下,原始映像备份完成得比对应的文件系统备份更快,并且还可 能需要比类似的文件系统备份更少的存储空间。原始映像备份通常可通过逐块地 将底层数据从文件系统转移(作为原始映像)至备份存储系统来执行,不必在备 份存储系统中维持文件系统结构。原始映像备份过程绕过了文件系统,取而代之 的是访问挂载点(文件系统的入口点)并且从挂载点逐块地将数据备份为原始数 据。在这种背景下,术语“块”指的是磁盘上的特定物理区域。

尽管原始映像备份相较于文件系统备份而言提供了某些优势,但原始映像备 份传统上还未能允许将来自正在备份的文件系统的指定文件系统对象从该原始映 像备份中排除。这种功能可能有益于例如确保某些文件(例如,系统文件、注册 表文件、临时文件或者其他指定文件)不会随着剩余的文件系统对象一起被备份。 这些文件可能例如代表对恢复主机无意义的数据,并且在一些情况下甚至可能导 致恢复主机在恢复后不可用。可能因从正在进行的备份中被排除而得益的其他类 型的文件可能包括,例如,内核转储、页面文件、系统休眠文件、供应商特定文 件或其他文件。

在此描述的是用于以允许将指定文件系统对象从即将执行的原始映像备份中 排除的方式来执行原始映像备份的技术。在此使用的短语“排除文件系统对象”及其 他类似的技术术语通常是指,例如,从描述了各种文件系统对象的物理存储位置 (例如,存在哪个块或哪些块上)的文件系统表中移除文件系统对象的记录,其 有效地使文件系统对象免于被恢复主机识别。然而,应理解的是,不必移除底层 块本身。

根据在此描述的技术,备份应用程序可生成虚拟卷,该虚拟卷是即将备份的 源卷的镜像。可将虚拟卷作为物理卷呈现给本地文件系统,并且可提供文件系统 命令来模拟将指定文件系统对象从虚拟卷中移除。例如,备份过程可发出适当的 文件系统删除命令,其使得某些文件(例如,即将从备份中排除的文件,比如内 核转储、系统休眠文件和/或其他适当的文件系统对象)从虚拟卷中被移除。反过 来,该命令可使得某些块,例如,与指定文件(例如,文件系统表中的文件)相 关联的块在虚拟卷上被修改,并且可存储修改后的块。然后,可使用所存储的修 改后的块与来自源卷的未修改的块的组合来执行原始映像备份,以使得原始映像 备份排除该指定文件系统对象。

这种技术可为与平台和文件系统无关的,并且可用于备份活跃的、使用中的 源卷(例如,无需使源卷离线)。可执行该技术而不产生严重的存储要求冗余, 因为原始映像备份所必需的大部分块可从源卷取得,并且仅需要额外地存储与即 将排除的文件系统对象相关联的修改后的块(例如,文件系统表的修改后的块)。 这些以及其他可能的益处和优势将通过附图以及随后的说明而清楚易懂。

图1是根据在此描述的实施方式的排除指定文件系统对象的示例性原始映像 备份过程100的概念框图。该框图概念性地显示了如何从源卷102中排除某些指 定文件而将源卷102备份为原始映像122。过程100例如可通过比如图2所例示并 且下文中详细描述的源系统210的计算系统执行。然而,应理解的是,其他系统 或系统的组合也可用于或者可替换地用于执行该过程或该过程的各个部分。

在源卷102中,文件系统的各种文件和目录,包括文件系统表,可存储在底 层数据块中,在此示出为块B1、B2、B3、B4、B5、B6等等直至块Bn。在传统的 原始映像备份中,可将所有这些块逐块地原样复制并存储为原始数据(例如,无 需理会每个数据块代表什么)。由于执行备份的备份系统可能仅识别即将复制和 备份的块的范围并且可能不解读或不理解文件系统的逻辑结构,传统上无法在不 从源卷102本身中移除文件系统对象(例如,在执行备份之前)或者不影响源卷 102的情况下从该原始映像备份中排除来自该文件系统的指定文件系统对象。在执 行原始映像备份之前从源卷102中移除文件系统对象可能是不实际的,比如在源 卷102是活跃的和/或处于使用中的情况下。类似地,在一些情况下,安装包括不 期望的文件系统对象的原始映像备份并且在恢复时移除这种对象也是不实际的。

同样地,根据在此描述的原始映像备份技术,例如可基于活跃的使用中的源 卷102生成虚拟卷112。虚拟卷112可初始地代表源卷102的精确镜像或复制物。 为了备份,虚拟卷112可不使用与源卷102分离的存储,而是可再次参照存储在 源卷102中的块,在这种意义上,虚拟卷112可以是“虚拟的”。用虚线代表与虚拟 卷112相关联的块B1、B3、B5、B6等旨在显示此类块并不是与存储为源卷102 的一部分的那些块物理地分离存储。在一些实施方式中,虚拟卷112例如可通过 源主机上的源主机代理而在存储器中生成为互联网小型计算机系统接口(iSCSI) 目标,其可提供源卷102的与平台和文件系统无关的镜像。

可以以向虚拟卷112提供文件系统访问的方式将虚拟卷112呈现给源计算系 统,例如,通过将虚拟卷作为可由本地文件系统访问的物理卷来安装。在一些情 况下,虚拟卷112可被锁定,以确保除了在此描述的备份过程之外的其他实体不 会访问虚拟卷112。一旦已经以这种方式提供了文件系统访问,则备份过程可发出 适当的文件系统命令,以从虚拟卷112移除指定文件系统对象。例如,如果诸如 备份管理员或其他适当用户的用户希望使一个或多个内核转储、页面文件、系统 休眠文件、供应商特定文件或其他此类文件免于被备份在源卷102的原始映像备 份中,则该用户可对备份过程识别此类文件(例如,以即将排除的文件系统对象 列表的形式或者以描述即将排除哪些文件系统对象或哪类文件系统对象的策略的 形式),并且该备份过程可执行适当的文件系统命令(例如,使用文件系统应用 编程界面(API)或其他适当界面)来模拟从虚拟卷112删除指定文件。

所模拟的一个或多个指定文件的删除可能转而引起虚拟卷112上的某些块(例 如,与已成为移除目标的文件系统对象相关联的文件系统表中的块)的修改。在 所例示的示例中,备份过程已发出了指向指定文件-文件A104的文件系统移除命 令。当接收到此类文件系统移除命令时,与虚拟卷112上的文件A104相关联的 块B2106和B4108可被修改以反映文件A的移除。块B2106和B4108的修改版 本分别示出为B2’116和B4’118,其对应于反映虚拟卷112上文件A114的删除 的修改。此类修改后的块B2’116和B4’118可以以与虚拟卷112相关联的方式被 捕获并存储(例如,在存储器资源中,或者在专用存储资源中),如这些块的实 线(而非虚线)表示所示。

如所示的,该示例例示了仅从虚拟卷112中移除单个文件系统对象,但应理 解的是,可类似地指定从虚拟卷112中移除额外的文件系统对象或文件系统对象 组,由此引起类似于以上描述的额外的块的修改。

当已从虚拟卷112中移除所有期望的文件系统对象之后,可以以从原始映像 备份中排除指定(例如,已移除的)文件系统对象的方式来执行原始映像备份。 例如,原始映像备份过程可识别以与虚拟卷112相关联的方式存储的所有的修改 后的块,且可复制那些修改后的块作为原始映像122的一部分,并可从来自源卷 102的原块复制其余未修改的块以用于原始映像122。在所例示的示例中,可在原 始映像122中存储修改后的块B2’116和B4’118而不是B2106和B4108,但可 原样复制源卷102中其余的块。以这种方式,可将源卷102备份并存储为源卷102 的一致性原始映像备份,但排除了某些指定文件。

图2是根据在此描述的实施方式的示例性备份环境200的框图。如所示,示 例性备份环境200包括可通信地连接至存储系统230的源系统210。源系统210可 能位于特定位置中,比如位于数据中心,而存储系统230可能位于不同的物理位 置(或多个位置),比如云端。源系统210和存储系统230各自可实施为任意适 当的单个计算装置(例如,服务器、工作站、台式机等)或实施为适当的计算装 置的组。存储系统230可由一个或多个存储装置实施,以存储可从源系统210转 移以完成备份操作的各种类型的适当数据,比如原始映像备份数据块232。

环境200的示例性拓扑结构可代表各种备份环境。然而,应理解的是,所示 出的环境200的示例性拓扑结构仅用于例示的目的,并且可对配置进行各种修改。 例如,在一些实施方式中,多个装置和/或组件或者与此类装置和/或组件相关联的 功能可以以不同于所示出的方式进行组合、分布或者实施。类似地,虽然示出为 是独立的计算系统,但源系统210和存储系统230(或此系统的一部分)可集成为 单个计算系统,其例如可共同位于数据中心。而且,虽然未示出,但环境200还 可包括可通信地连接至源系统210和存储系统230的独立备份系统,这可利于与 此类系统相关联的备份和/或恢复操作。

源系统210可包括处理器资源212、存储器资源214、源卷216、文件系统218 和备份代理220。应理解的是,在此示出的组件用于例示的目的,并且在一些情况 下,参照特定组件而描述的功能可由一个或多个不同或额外的组件执行。类似地, 应理解的是,部分或者所有该功能可组合为比所示出的更少的组件。

处理器资源212可配置为处理用于由源系统210执行的指令。指令可存储在 非暂时性有形计算机可读存储介质上,比如存储器资源214中或独立存储资源(未 示出)上;或者可存储在任意其他类型的易失性或非易失性存储器上,该存储器 存储指令以使得可编程处理器执行在此描述的技术。可替换地或者额外地,源系 统210可包括专用硬件,比如一个或多个集成电路、专用集成电路(ASIC)、专 用特殊处理器(ASSP)、现场可编程门阵列(FPGA)或者前述专用硬件的示例的 任意组合,以用于执行在此描述的技术。在一些实施方式中,处理器资源212可 包括多个处理器和/或多种类型的处理器,并且存储器资源214可包括多个存储器 和/或多种类型的存储器。

源卷216可包含比如文件和目录的文件系统对象,并且可被存储在源系统210 的适当的存储资源(未示出)中。包含在源卷216中的文件系统对象可由文件系 统218维持和管理,文件系统218可包括用于以逻辑方式整理文件系统对象的数 据结构。例如,文件系统218可包括层次树结构或者其他适当结构,其中文件系 统对象可设置在不同的层级。文件系统218还可提供用于访问源卷216中的文件 系统对象的一个或多个接口(比如文件系统API)。

备份代理220可配置为管理与源系统210相关联的各种备份操作。例如,备 份代理220可配置为使得根据在此描述的技术来备份源卷216。在各种实施方式中, 备份代理220可包括例如硬件装置,该硬件装置包括用于实施在此描述的功能的 电子电路,比如备份控制逻辑和/或存储器。此外或者可替换地,备份代理220可 实施为一系列指令,其可在包括一个或多个机器可读存储介质/媒介的机器可读存 储资源上被编码并且可由比如处理器资源212的处理器资源执行。

响应于原始映像备份请求,备份代理220可确定是否即将从原始映像备份中 排除指定文件系统对象。如果不是,则备份代理220可执行传统的原始映像备份 处理,以逐块地复制源卷216从而生成原始映像,原始映像可被传递给存储系统 230并且存储为原始映像备份数据块232。

如果原始映像备份打算排除指定文件系统对象,则备份代理220可生成启动 模块222和目标模块224,并且目标模块224可用于生成虚拟卷226。在一些实施 方式中,启动模块222可执行iSCSI启动程序的功能,并且目标模块224可利于访 问iSCSI目标卷。在此类实施方式中,启动模块222可连接至目标模块224并使用 适当的iSCSI协议与其通信,而且虚拟卷226可暴露于文件系统以作为iSCSI目标 卷。在其他实施方式中,过滤驱动可用于执行与启动模块222和/或目标模块224 相关联描述过的功能。

虚拟卷226可初始地代表源卷216的虚拟化镜像或复制物。启动模块222和 目标模块224可组合工作,以使得文件系统218可访问虚拟卷226。例如,虚拟卷 226可安装为可由文件系统218访问的物理卷。在一些实施方式中,启动模块222 和目标模块224可用于虚拟卷226的强制控制和保护,以确保未授权的实体无法 访问该虚拟卷226。

在已对虚拟卷226提供文件系统访问权后,备份代理220可发出适当的文件 系统命令,以从虚拟卷226移除指定文件系统对象。例如,备份代理220可使得 启动模块222发送适当的命令给目标模块224,以请求从虚拟卷226移除指定文件 系统对象。

从虚拟卷226移除一个或多个指定文件转而可引起虚拟卷226上的某些块(例 如,文件系统表的与已经成为移除目标的文件系统对象相关联的块)的修改。目 标模块224可捕获并且存储与虚拟卷226相关联的修改后的块。修改后的块例如 可存储在存储器资源214中或者存储在独立存储资源(未示出)中。在一些实施 方式中,在此描述的原始映像备份技术可并行地执行,例如,针对多个源卷同时 执行。在此类实施方式中,可分别维持并存储来自并行的备份程序的修改后的块, 并且修改后的块与正在备份的相应的卷具有适当的关联性。

当已从虚拟卷226中移除所有的指定文件系统对象之后,备份代理220可以 以从原始映像备份中排除指定(例如,已移除的)文件系统对象的形式来执行原 始映像备份程序。例如,备份代理220可识别所有与虚拟卷226相关联地存储的 修改后的块,并且复制那些修改后的块以作为原始映像的一部分,而且可从源卷 216复制其余的未修改的块以用于原始映像。

图3是根据在此描述的实施方式的用于备份源卷的示例性过程300的流程图。 过程300例如可通过比如图2所示的源系统210的计算系统来执行。为了清楚起 见,以下说明中使用了图2所示的源系统210作为示例来描述该过程。然而,应 理解的是,其他系统或者系统的组合可用于执行该过程或该过程的各个部分。

过程300起始于块310,此时生成了包括即将备份的源卷的复制物的虚拟卷。 例如,源系统210可生成虚拟卷,该虚拟卷初始地代表源卷的精确镜像或复制物。 在一些实施方式中,可在与源系统相关联的存储器中生成该虚拟卷。

在块320中,向虚拟卷提供文件系统访问。例如,虚拟卷可呈现为可由逻辑 文件系统访问的物理卷。文件系统访问可允许备份过程发出指向与虚拟卷相关联 的文件系统对象的适当的文件系统命令。在一些情况下,对虚拟卷的此类文件系 统访问可被锁定以防止未授权的实体访问该虚拟卷。在一些实施方式中,虚拟卷 可生成(310)并提供(320)为iSCSI目标,并且锁定该虚拟卷可包括实施适当的 iSCSI协议以对虚拟卷进行强制保护和/或控制。

在块330中,接收从虚拟卷中移除指定文件系统对象的文件系统命令。例如, 具有适当许可的备份过程可发出文件系统命令(例如,删除命令或其它类似命令) 以从虚拟卷中移除指定文件系统对象。此类文件系统命令可用于模拟删除一个或 多个内核转储、页面文件、系统休眠文件、供应商特定文件或其他适当的文件系 统对象。可通过暴露的文件系统API或者其他适当界面的方式发出文件系统命令。

在块340中,存储由移除指定文件系统对象的命令生成的修改后的块。该修 改后的块可为来自源卷的对应块的修改版本,并且该修改版本反映了指定文件系 统对象的移除。在虚拟卷被生成并提供为iSCSI目标的实施方式中,修改后的块可 由iSCSI目标捕获并存储。

在块350中,使用来自源卷的未修改的块和所存储的修改后的块来执行原始 映像备份。例如,当备份过程已指定了即将从虚拟卷中移除的所有文件系统对象 之后,可以以使得指定(例如,移除的)文件系统对象从原始映像备份中被排除 的方式来执行该原始映像备份。在一些实施方式中,原始映像备份过程可识别所 有与虚拟卷相关联地存储的修改后的块,并且复制那些修改后的块以作为原始映 像的一部分,而且可从源卷复制其余的未修改的块。由此,未修改的块(来自源 卷)与修改后的块(如与虚拟卷相关联地捕获的)的组合可用于生成源卷的排除 了某些指定文件的一致性原始映像备份。

图4是根据在此描述的实施方式的示例性计算系统400的框图。系统400包 括原始映像备份机器可读指令402,其可配置为实施图2中描绘的计算系统的各种 模块中的某些模块,或者配置为执行图1和/或图3中描绘的部分或者所有过程。 可加载该原始映像备份机器可读指令402以用于在处理器404上或者在多个处理 器上执行,处理器可统称为处理器资源。在一些实施方式中,当由处理器资源执 行时,指令402可使得处理器资源:生成包括即将备份的源卷的复制物的虚拟卷; 向虚拟卷提供文件系统访问;接收从虚拟卷中移除指定文件系统对象的文件系统 命令;存储从虚拟卷移除指定文件系统对象的文件系统命令所产生的修改后的块; 并且执行使用来自源卷的未修改的块和所存储的修改后的块来备份源卷的原始映 像备份,以使得原始映像备份排除指定文件系统对象。

在此使用的处理器资源可包括微处理器、微控制器、处理器模块或子系统、 可编程集成电路、可编程门阵列或者其他控制或计算装置。处理器404可连接至 网络接口406(以允许系统400通过数据网络执行通信)和/或连接至存储介质(或 存储媒介)408。

存储介质408可实施为一个或多个计算机可读或机器可读存储介质。存储介 质可包括不同形式的存储器,包括比如动态或静态随机存取存储器(DRAM或 SRAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器 (EEPROM)以及闪速存储器的半导体存储器装置;比如硬盘、软盘和可移动磁 盘的磁盘;包括磁带的其他磁性媒介;比如光盘(CD)或数码影碟(DVD)的光 学媒介;或者其他适当类型的存储装置。

应注意,以上讨论的指令可提供在一个计算机可读或机器可读存储介质上, 或者可替换地可提供在(例如,具有多个节点的分布式系统中的)多个计算机可 读或机器可读存储介质上。此类计算机可读或机器可读存储介质被视为是产品(或 者制品)的一部分。产品或制品可指任意适当制造的组件或多个组件。存储介质 或媒介可位于运行该计算机可读指令的机器中或者位于远程位置处,例如可从该 远程位置通过网络下载该机器可读指令。

尽管已在上文中详细描述了少量实施方式,但其他修改也是可能的。例如, 附图中描绘的逻辑流程可能不需要所示出的特定顺序或先后顺序来实现期望的结 果。此外,可提供其他步骤或者可省略所描述的流程中的一些步骤。类似地,可 对所描述的系统增加其他组件或者从其移除其他组件。相应地,其他实施方式落 入随附权利要求书的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号