CN113535467A - 完全预分配卷的具有区块签名的精简列表的备份对象 - Google Patents
完全预分配卷的具有区块签名的精简列表的备份对象 Download PDFInfo
- Publication number
- CN113535467A CN113535467A CN202110420131.5A CN202110420131A CN113535467A CN 113535467 A CN113535467 A CN 113535467A CN 202110420131 A CN202110420131 A CN 202110420131A CN 113535467 A CN113535467 A CN 113535467A
- Authority
- CN
- China
- Prior art keywords
- full
- list
- block
- volume
- signature
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1453—Management of the data involved in backup or backup restore using de-duplication of the data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1748—De-duplication implemented within the file system, e.g. based on file segments
- G06F16/1756—De-duplication implemented within the file system, e.g. based on file segments based on delta files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/83—Indexing scheme relating to error detection, to error correction, and to monitoring the solution involving signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及完全预分配卷的具有区块签名的精简列表的备份对象。示例可以包括完全预分配卷的具有区块签名的精简列表的备份对象。示例可以包括生成完全预分配卷的地址空间的区块签名的一个或多个完全列表,将完全列表的每个区块签名与表示完全预分配卷的未使用区域的区块的未使用区域区块签名进行比较,基于比较生成指示完全预分配卷的已使用区域的元数据,并且从一个或多个完全列表生成省略了被确定为匹配未使用区域区块签名的所有区块签名的一个或多个精简列表。
Description
背景技术
诸如主机服务器等的客户计算设备可以在主存储阵列中存储数据,并且可以相对于主存储阵列中存储的数据执行工作负荷。在一些示例中,出于诸如冗余和数据保护的目的,主存储阵列中存储的数据可以被备份在与客户计算设备和主存储阵列二者都分隔的备份设备中。在一些示例中,备份设备可以按照消除重复的形式存储数据,以使得数据相比在主存储阵列上被更紧凑地存储。
附图说明
下面的详细描述参考了附图,其中:
图1是生成区块签名的(多个)精简列表的示例计算环境的框图;
图2是包括将(多个)完全列表的每个区块签名与未使用区域区块签名进行比较的示例方法的流程图;
图3是示出图1的示例计算环境的其他功能的框图;
图4是包括生成差异区块签名的示例方法的流程图;
图5是包括生成(多个)综合精简备份对象的示例方法的流程图;
图6是包括从(多个)精简列表备份对象执行恢复的示例方法的流程图;
图7是使得(多个)精简列表备份对象到去重系统的存储的示例计算环境的框图;以及
图8是包括生成区块签名的(多个)精简列表的示例方法的流程图。
具体实施方式
如上所述,计算设备(例如,主机、服务器、存储阵列等)可以通过将数据存储在能够对数据执行去重处理的计算系统中来对数据进行备份,以便以比非去重方式更紧凑的去重方式存储数据。
在本文描述的示例中,去重过程可以由去重系统对来自另一计算系统(例如,来自另一存储阵列(或另一类型的主存储设备))的数据集执行。例如,存储设备的给定卷(例如,虚拟卷)的内容可以在连续时间点被备份。在这种示例中,给定卷到去重系统的第一次备份可以是“完整”备份(与增量备份相反),“完整”备份包括该卷在第一时间点的完整内容的表示(例如,基于该卷在第一时间点的快照)。此类“完整”备份也可以被称为“完全”备份,但是术语“完整”备份被用在本文中以避免混淆(即,下面描述“完全”列表)。
给定卷的表示该卷在相应的稍后时间点的内容的每个后续备份(例如,基于该卷在该稍后时间点的快照)可以是包括该卷在相应的稍后时间点和在先时间点之间的改变的表示的“增量”备份(与完整或完全备份相反)。在这种示例中,相比原来对于该卷的完整备份,针对增量备份可以向去重系统提供少得多的数据。在一些示例中,去重系统可以利用完整备份和稍后的增量备份来生成“综合完整”备份,该“综合完整”备份表示该卷在增量备份表示的时间点处的整个内容。这种“综合完整”备份也可以被称为“综合完全”备份,但是术语“综合完整”备份被用在本文中以避免与本文的其他概念混淆。
在一些示例中,卷可以是计算系统(例如,存储阵列)的“虚拟卷”,其包括可以被灵活地映射到一个或多个物理存储设备(例如,硬盘驱动器(HDD)、固态驱动器(SSD)等或它们的组合)的物理地址的虚拟地址空间,用于数据在该虚拟卷“上”的存储。在这种示例中,存储到虚拟卷的一部分地址空间的数据实际上可以被存储在该虚拟卷的该部分地址空间映射到的一个或多个物理存储设备的物理存储位置中。
在一些示例中,虚拟卷可以是“完全预分配的”,这意味着(多个)物理存储设备上的物理存储空间已经被分配给完全预分配虚拟卷的整个地址空间。在这种示例中,完全预分配卷的虚拟地址空间中的每个地址被映射到物理存储设备的物理存储空间,以实际存储写入完全预分配虚拟卷的虚拟地址空间中的对应地址的任何数据。
相反,虚拟卷可以是“精简预分配的”,这意味着(多个)物理存储设备上的物理存储空间不一定已经被分配给完全预分配虚拟卷的整个地址空间。在这种示例中,(多个)物理存储设备上的可用物理存储空间可以根据需要被分配给精简预分配虚拟卷的虚拟地址空间。在这种示例中,(多个)物理存储设备上的物理存储空间可以不被分配给精简预分配虚拟卷的大部分地址空间。没有被分配以物理存储空间的虚拟地址空间部分可以被称为虚拟卷的“未分配”部分,而已经被分配以物理存储空间的虚拟地址空间部分在本文中可以被称为虚拟卷的“已分配”部分。
在一些示例中,对完全预分配虚拟卷进行备份可以包括对存在于完全预分配虚拟卷的每个位置中的数据进行备份,即使完全预分配虚拟卷的大部分空间实际上没有被任何应用用来存储有意义的数据(例如,自从完全预分配虚拟卷创建起没有被任何应用写入)。如下面进一步描述的,这会导致对完全预分配虚拟卷执行完整备份和生成完全预分配虚拟卷的综合完整备份的低效。如本文所述,本文描述的示例可以解决这些问题。
现在结合图1描述一些示例,图1是生成区块签名的(多个)精简列表的示例计算环境105的框图。在图1所示的示例中,计算环境105包括计算设备100和去重备份系统170(在本文中,可以称为“去重系统”170)。在一些示例中,计算设备100可以由存储阵列或任何其他合适类型的计算设备(例如,服务器等)实现,去重系统170可以由任何适当类型的计算设备(例如,存储阵列、存储设备、服务器等)实现。在本文中被描述为由本文的任何计算环境(例如,计算环境105)的任何计算设备(例如,计算设备100、去重系统170等)执行的任何功能可以由存储在至少一个机器可读存储介质上并且可以由该计算设备的一个或多个处理资源执行的指令执行。
计算环境105可以包括(至少部分地)实现备份代理的备份代理指令121,该备份代理将计算设备100存储的数据备份到去重系统170。在图1的示例中,计算设备110包括至少一个处理资源110和至少一个机器可读存储介质120,该至少一个机器可读存储介质至少包括(例如,编码有)可由计算设备100的至少一个处理资源110执行以实现本文结合指令121描述的功能的备份代理指令121(包括指令122、124、126、和128)。尽管在图1的示例中备份代理指令121由计算设备100(例如,存储要备份的数据的主存储阵列)执行,但是在其他示例中,备份代理指令121可以由去重系统170或者与计算设备100和去重系统170二者分隔但是与它们二者通信的其他计算设备(例如,服务器)执行。在图1的示例中,计算设备100、去重系统170、以及计算环境105的任何其他的(多个)计算设备可以经由一个或多个计算机网络通信。在本文描述的示例中,计算机网络可以包括例如,存储区域网(SAN)、局域网(LAN)、虚拟LAN(VLAN)、无线局域网(WLAN)、虚拟专用网(VPN)、互联网等或它们的组合。
计算设备100还包括可以由一个或多个物理存储设备实现以存储数据的存储装置101。物理存储设备可以是任何适当类型的存储设备(例如,HDD、SSD等)或它们的任意组合。在一些示例中,计算设备100可以在存储装置101上创建完全预分配虚拟卷140(在本文中,可以称为“完全预分配卷140”)。如上所述,作为完全预分配卷,(多个)物理存储设备(例如,存储装置101)上的物理存储空间被分配给完全预分配卷140的整个地址空间。但是,并不是完全预分配卷140的所有地址都存储对于向卷140写入和/或从卷140读出的(多个)应用(例如,(多个)主机应用)有意义的数据。在本文描述的示例中,完全预分配卷的存储有意义的数据(例如,由主机应用写入的数据、卷元数据等)的部分可以被认为是完全预分配卷的“已使用”部分,而完全预分配卷的没有被用来存储这种有意义的数据的部分可以被认为是完全预分配卷的“未使用”部分。
在一些示例中,完全预分配卷的此类未使用部分可以存储所定义的数据模式(例如,全0)或任何其他预定义的数据模式(例如,1和0)。在这种示例中,所定义的数据模式可以是在其被创建时即被写入整个完全预分配卷(或其大部分)的数据模式。例如,计算设备100可以在所定义的数据模式(例如,全0)被创建时并且在任何主机应用向该卷写入有意义的数据之前,将所定义的数据模式写入该卷中,或者主机应用可以在应用专用的所定义的数据模式(例如,1和/或0的模式)被创建时并且在其将任何有意义的数据写入该卷之前,将该应用专用的所定义的数据模式写入该卷的大多数或所有部分。在这里描述的示例中,所定义的数据模式可以被用来创建本文所述的区块签名的精简列表。
下面结合图1的示例描述去重的示例过程。去重系统170可以存储一个或多个数据集的去重后的表示。例如,要存储在去重系统170中的数据可以被划分为在本文中称为“区块”的多个固定或可变长度部分,并且去重系统170可以识别其内容与(多个)其他区块的内容相同的“重复”区块,存储没有被识别为已存储区块的重复的每个区块的一个(完全或压缩)副本,并且对于每个重复区块,存储该区块的所存储副本的索引(例如,指针)而不再存储该重复区块。通过这种方式,去重过程通常可以避免在去重系统170中存储相同区块的重复。在这种示例中,去重系统可以存储数据集的去重后的表示,该去重后的表示包括所选择的数据区块和足够的元数据,以从所选择的数据区块和该元数据重建该数据集的完全版本。
例如,存储到去重系统170的数据集的元数据可以包括该数据集的区块签名的列表。现在将结合将完全预分配卷140的内容备份到去重系统170描述示例。在这种示例中,完全预分配卷140可以被划分为多个区块142(出于说明目的,在图1中示出了一小部分区块),其中,区块142一起构成了完全预分配卷142的整个地址空间的数据。计算设备100可以确定每个区块142的相应区块签名154(出于说明目的,在图1中示出了一小部分区块签名)。在本文描述的示例中,“区块签名”可以是表示区块内容的数据,其可以通过向区块应用签名函数得出。在一些示例中,签名函数可以是哈希函数,区块签名可以是通过在区块上应用哈希函数生成的该区块的哈希(或哈希值)。任何适当的哈希函数可以被用来生成区块签名。在其他示例中,任何其他合适类型的签名函数可以替代哈希函数被使用,以生成适当的区块签名(例如,生成适当类型的指纹的函数)。在这里描述的示例中,可以使用从给定区块得出给定区块签名的签名函数,以使得给定区块签名表示给定区块的内容并且有很大可能可以区别于从其他类似大小的区块的类似方式得出的区块签名。即,可以得出区块签名,使得相似大小的区块之间存在冲突的可能性非常小(即,对不具有相同内容的区块进行区块签名匹配)。因此,在本文所述的示例中,去重系统可以基于两个区块的区块签名匹配来确定这两个区块包含相同的内容(出于去重目的)。
对于完全预分配卷140的每个区块142,计算设备100可以在完全预分配卷140的区块签名的完全列表150中存储从该区块得出的区块签名,使得完全列表150包括每个区块142的相应区块签名,并且完全列表150中存储的各区块签名与区块本身在完全预分配卷140中出现的顺序相同。在这种示例中,计算设备100可以将完全列表150提供给去重系统170,以作为表示完全预分配卷140在给定时间点的内容的备份对象存储在去重系统中。去重系统170随后可以将完全列表150的区块签名与已经存储在去重系统中的区块的区块签名进行比较。对于完全列表150的去重系统170针对其没有发现相应区块(由该区块签名表示)已经被存储在去重系统170中的每个区块签名,去重系统170可以请求计算设备100提供该区块用于存储。对于完全列表150的去重系统170针对其发现相应区块已经被存储在去重系统170中的每个区块签名,去重系统170可以省略从计算设备100请求该区块(因为其已经存储副本),以避免存储重复区块。在这种示例中,去重系统170可以在备份对象中存储完全列表150,以表示完全预分配卷140的内容,并且还可以存储完全列表150中的每个区块签名表示的每个区块的副本,同时尝试避免存储重复区块(如上所述)。
尽管完全预分配卷(例如,卷140)的大部分地址空间在给定时间可能是未使用的,但是区块签名的完全列表150仍然可以与卷140的大小成比例,而不管完全预分配卷140的多大或多小的部分被用来存储有意义的数据(如上所述),因为不存在卷140的尚未分配的部分。当卷140的稍后备份被执行以捕捉卷140相对于稍早备份的改变(即,增量备份)时,可以复制完全列表150的表示自从稍早备份开始尚未改变的数据的部分,以生成综合完整备份。
但是,由于完全列表150与完全预分配卷140的大小成比例(例如,卷140的每个4KB区域一个区块签名),所以不管该卷的多大部分被用于存储有意义的数据,生成综合完整备份的这种操作的性能都可能会相对较差,尤其是离预分配卷140被完全填充更远(即,离完全预分配卷140的容量更远)。
为了解决这些问题,本文描述的示例可以通过从完全列表省略被确定为匹配完全预分配卷的未使用区块的所定义的数据模式的区块签名的每个区块签名来生成精简列表,并且可以生成指示该卷的与精简列表中的区块签名对应的已使用部分的使用元数据。这样,通过在完全预分配卷的备份对象中存储精简列表和使用元数据(而不是存储完全列表),基于精简列表生成综合完整备份的操作可以比针对完全列表的操作更高效。例如,精简列表可以具有与完全预分配卷的使用成比例(例如,每个4KB的有意义的数据部分一个区块签名)而不是与完全预分配卷的总容量成比例的大小。所以,检查区块签名的精简列表并且复制未改变区域的区块签名的操作可以比在完全预分配卷的完全列表上执行类似操作更短。
下面将结合图1和图2描述生成精简列表的示例。如上所述,图1是生成区块签名的(多个)精简列表的示例计算环境105的框图。图2是包括将一个或多个完全列表的每个区块签名与未使用区域区块签名进行比较的示例方法200的流程图。尽管下面参考图1的计算设备100描述了方法200的执行,但是可以利用适于执行方法200的其他计算设备(例如,图7的计算设备700等)。另外,方法200的实现不限于这种示例。
参考图1和图2,在方法200的210,(例如,备份代理指令121的)指令122在被至少一个处理资源110执行时,可以确定包括计算系统100的卷140的整个地址空间(例如,ADD-00至ADD-FF)的数据内容的一组区块142。如上所述,去重系统可以使用区块来识别数据集中的重复数据区域。在一些示例中,去重系统使用的区块可以具有固定大小(例如,大约4KB或其他适当大小),从而使得所有区块具有相同大小(即,固定大小)。在其他示例中,去重系统使用的区块可以具有可变大小,因此区块可以具有从最小大小到最大大小的范围中的各种不同大小中的任意大小。
在一些示例中,指令122可以执行“区块化”处理,以确定卷140的整个地址空间的固定或可变区块142的边界。在其他示例中,指令122可以限定卷140的区块142的边界,而不改变卷140或改变数据存储在卷140中的方式。在其他示例中,另一设备或应用可能已经执行区块化或区块定义过程,并且指令122可以通过访问指示卷140的区块142的预先生成的信息来确定卷140的区块142。
在215,指令124可以生成区块签名154的一个或多个完全列表150(182)。在一些示例中,指令124可以生成卷140的整个地址空间(即,从第一地址ADD-00至最后地址ADD-FF)的区块签名154的单个完全列表150,如图1的示例中所示,用于对卷140在给定时间点的数据进行备份。在这种示例中,完全列表150可以表示卷140的整个地址空间的数据内容。在一些示例中,为了生成完全列表150,指令可以读取卷140的整个地址空间的每个区块142的数据,并且在区块142上执行签名函数以生成整个地址空间的每个区块142的相应区块签名154。在这种示例中,指令124可以将所生成的区块签名154存储在完全列表150中。在图1的示例中,利用附图标记SIG0-SIG6和SIGX表示单独区块签名,其中,在前缀“SIG”后面具有不同符号的区块签名指示不同的区块签名值,并且在前缀“SIG”后面具有相同符号的区块签名指示相同或匹配的区块签名。出于说明目的,利用代表性的区块、区块签名等简化并图示出图1的示例。
在其他示例中,(尽管图1中未示出)指令124可以生成区块签名154的多个完全列表150,每个完全列表150包括卷140的相应部分的地址空间的区块142的区块签名154。由不同的完全列表150表示的相应部分的地址空间可以是卷140的任何适当部分。例如,每个部分可以表示卷140的地址空间的连续区域。在其他示例中,每个部分可以包括卷140的地址空间的多个不同(即,不连续)区域,这些区域在卷140的地址空间中相对于彼此是不连续的。在这种示例中,(多个)完全列表150可以一起表示卷140的整个地址空间的数据内容。在本文描述的示例中,“完全”列表意味着,对于该列表表示的卷的地址空间,该列表包括该地址空间的每个区块的区块签名,而没有省略任何区块的区块签名。但是,完全列表可以覆盖给定卷的并不是所有区块。在这种示例中,多个完全列表一起表示卷的整个地址空间。
在220,指令122可以确定计算设备100的卷140是否是完全预分配的。在一些示例中,指令122可以基于计算设备100的配置信息确定卷140是完全预分配的。例如,计算设备100的每个卷可以与指示该卷是完全预分配(即,“厚”)卷还是预分配薄(或“精简”)卷的类型信息相关联。在这种示例中,指令122可以基于与卷140相关联的、指示其是完全预分配的类型信息,确定卷140是完全预分配卷140。
在其他示例中,指令122可以基于所生成的(多个)完全列表150确定卷140。例如,指令122可以基于包括与卷140的总大小有关(例如,成比例)的多个区块签名154的所生成的(多个)完全列表150,确定卷140是完全预分配卷(因为其是完全预分配卷的可辨认特性)。在其他示例中,指令122可以基于确定存在比所有其他区块签名更常见的一个特定区块签名值来确定卷140是完全预分配卷,该特定区块签名值可以指示其是完全预分配卷的未使用区域的数据模式的区块签名。
在本文的一些示例中,为了减小完全预分配卷的区块签名列表的大小,备份代理指令121可以省略具有完全预分配卷的未使用区域的数据模式的区块的区块签名。在这种示例中,指令121可以确定未使用区域的区块的区块签名,识别(多个)完全列表150中的所有此类区块签名154,并生成(184)从(多个)完全列表150中省略这些区块签名的(多个)精简列表162。下面更详细地描述示例。
继续进行方法200,在225,指令122可以确定未使用区域区块签名130,在图1所示的示例中该未使用区域区块签名的值由“SIGX”表示。在一些示例中,指令122可以通过向相当于计算设备的完全预分配卷的未使用区域的区块的数据集应用签名函数,生成未使用区域区块签名130(其值为SIGX)。例如,在一些示例中,全0(即,独占地为0)的数据模式最初可以被存储在完全预分配卷的所有位置中(例如,作为初始化过程的部分)。在这种示例中,由全0组成的区块大小的数据集可以相当于完全预分配卷140的未使用区域的区块,并且指令122可以通过向区块大小的全0集合应用签名函数生成未使用区域区块签名130(其值为SIGX)。在使用固定大小的区块的示例中,指令122可以通过向固定区块大小(例如,4KB)的全0集合应用签名函数,生成未使用区域区块签名130。在使用可变大小的区块的示例中,指令122可以通过向具有最大区块大小的全0集合应用签名函数,生成未使用区域区块签名130。
在其他示例中,可以在完全预分配卷的未使用区域中存储不同的数据模式。例如,使用完全预分配卷的给定应用可以在完全预分配卷的未使用区域中存储应用专用的全0和/或全1模式(即,不同于全0)。在这种示例中,指令122可以向具有应用专用的数据模式的(固定或最大可变的)区块大小的数据集应用签名函数,以确定未使用区域区块签名130(其值为SIGX)。
响应于确定卷140是完全预分配卷,指令121可以基于(多个)完全列表150生成卷140的(多个)精简列表162和使用元数据166。在这种示例中,在方法200的230,指令126可以将(多个)完全列表150的每个区块签名与所生成的未使用区域区块签名130(其值为SIGX)进行比较。在这种示例中,指令126可以确定(多个)完全列表150的匹配未使用区域区块签名130的每个区块签名154表示卷140的未使用区域的区块142(或相当于卷140的未使用区域的区块142)。在本文描述的示例中,基于比较,指令121可以生成均包括不匹配未使用区域区块签名130的每个区块签名154并且省略了匹配未使用区域区块签名130的每个区块签名154的(多个)精简列表162。另外,基于比较,指令121可以针对卷140的每个区块生成指示该区块是否表示卷140的被确定为已使用或被确定为未使用的区域。
本文将结合图1的包括完全预分配卷140(包括区块142)和(多个)完全列表150(包括区块签名154)在内的元件描述示例。在图1的示例中,卷140的已使用区域的每个示出的区块142(即,包括有意义的数据的区块)在图1中被用“U”标记出来(即,“已使用”区域),并且卷140的未使用区域的每个示出的区块142(即,包括未使用区域的数据模式的区块)在图1中被用“N”标记出来(即,“未使用”区域)。在图1的示例中,针对图1所示的一些区块142,在(多个)完全列表150中示出了区块签名154。例如,(多个)完全列表150中的区块签名SIG1、SIG2、和SIG3表示第一行示出的区块142中被标记为“U”的一些区块,区块签名SIGX表示第二和第三行示出的区块142中被标记为“N”的一些区块,并且区块签名SIG6、SIG5、和SIG4表示第三行示出的区块142中被标记为“U”的一些区块。
在一些示例中,指令126可以遍历(多个)完全列表150的每个区块签名154,并且对于每个区块签名154,指令126可以在235确定该区块签名154是否匹配(即,等于或相当于)未使用区域区块签名130(其值为SIGX)。如果不匹配,则方法200可以进行到240。在240,指令126可以向(多个)精简列表162中的一个精简列表添加区块签名154,并且在245,指令126可以针对卷140的对应于当前不匹配的区块签名154的区域(例如,区块142),在使用元数据(例如,使用图166)中指示完全预分配卷140的已使用区域。返回235,如果区块签名154匹配未使用区域区块签名130(其值为SIGX),则方法200可以进行到250。在250,指令126可以从(多个)精简列表162中省略区块签名154,并且在255,指令126可以针对卷140的对应于当前匹配的区块签名154的区域(即,区块142),在使用元数据(例如,使用图166)中指示完全预分配卷140的未使用区域。
方法200可以从245或255进行到260。在260,指令126可以确定在同一个完全列表150中或者另一个完全列表150中是否存在将与未使用区域区块签名130比较的进一步的区块签名。如果存在,则在265,指令126可以去往下一个区块签名154(即,同一个完全列表150或下一个(多个)完全列表150中的下一个区块签名),然后返回到235对该下一个区块签名154进行比较。在这种示例中,指令126可以针对完全预分配卷140生成包括一个或多个精简列表162和使用元数据166的精简列表备份信息160。
返回260,一旦同一个完全列表150或另一个完全列表150中不存在将与未使用区域区块签名130进行比较的进一步的区块签名154,则方法200可以进行到270。在270,指令128可以使得去重备份系统170存储完全预分配卷140的一个或多个精简列表备份对象172,该(多个)精简列表备份对象172包括从一个或多个完全列表150生成的一个或多个精简列表162和使用元数据166。
如上所述,指令126可以遍历(多个)完全列表150,对每个区块签名154和未使用区域区块签名130进行比较。在图1的示例中,在多次迭代后,指令126可以到达(多个)完全列表150的区块签名SIG1,该区块签名表示图1所示的顶部的行的区块142中被标记为“U”的一个区块142。在这种示例中,指令126可以(在235)将区块签名SIG1与未使用区域区块签名130(SIGX)进行比较,并且在235确定它们不匹配。基于该确定,指令126可以将区块签名SIG1存储到(多个)精简列表162中的一个精简列表(在240),并且(在245)在使用元数据中指示对应该区块签名SIG1的该实例的区块表示卷140的已使用区域(例如,通过在使用图166中对应于卷140的由区块签名SIG1表示的区域的位置存储1)。这个过程可以进行到(多个)完全列表150中的接下来的区块签名(包括区块签名SIG2和SIG3),其中,指令126可以确定这些区块签名不匹配未使用区域区块签名130(SIGX)。在这种示例中,指令126可以将区块签名SIG2和SIG3复制到(多个)精简列表162(如图1的示例中所示),并且将卷140中的对应区域指示为已使用(例如,在使用图166的第一示出行中存储值1)。
该过程随后继续进行到(多个)完全列表150中的下一个区块签名,该区块签名可以是值为SIGX的区块签名(如图1所示)。在这种示例中,指令126可以将遇到的区块签名SIGX与未使用区域区块签名130(SIGX)进行比较(在235),并确定它们匹配(即,它们具有由“SIGX”表示的相同值)。这样,指令126可以将由区块签名SIGX表示的区域识别为卷140的未使用区域(例如,在图1中由第二行区块142中被标记为“N”的一个区块142示出)。基于该确定,指令126可以从(多个)精简列表162中省略区块签名SIGX(在250)(例如,在图1的(多个)精简列表162中,省略SIG3之后的SIGX),并且(在255)指令126可以在使用元数据中指示对应于区块签名SIGX的该实例的区块表示卷140的未使用区域(例如,通过在使用图166中对应于卷140的由区块签名SIGX表示的区域的位置存储0)。这个过程可以进行到(多个)完全列表150中的接下来的区块签名(包括均具有值SIGX的区块签名序列)(如图1的(多个)完全列表150中所示),其中,指令126可以确定这些区块签名匹配未使用区域区块签名130(SIGX)。该区块签名SIGX的序列可以对应于图1的完全预分配卷140的一系列未使用区域,由具有值“N”的一系列区块142示出。在这种示例中,指令126可以基于比较省略每个区块签名SIGX,并且将卷140中它们的对应区域指示为未使用(例如,通过在使用图166的第二和第三示出行中存储值0)。
该过程随后进行到(多个)完全列表150的区块签名SIG6,其中,该区块签名表示图1所示的第三行区块142中被标记为“U”的区块142中的一个。指令126可以将区块签名SIG6与未使用区域区块签名130(SIGX)进行比较,并且在235确定它们不匹配。基于该确定,指令126可以在区块签名SIG3之后将区块签名SIG6存储到(多个)精简列表162中的一个精简列表(在240),其中,区块签名SIG3是所示出的SIGX区块签名序列(卷140的“N”个区块142)之前的在先区块签名。指令126还可以(如245)在使用元数据中指示对应于区块签名SIG6的区块表示卷140的已使用区域(例如,通过在其对应位置存储1)。这个过程可以进行到(多个)完全列表150中的包括区块签名SIG5和SIG6在内的接下来的区块签名,其中,指令126可以确定这些区块签名不匹配未使用区域区块签名130(SIGX),所以指令126可以将区块签名SIG5和SIG6复制到(多个)精简列表162(如图1所示),并且将卷140中的对应区域指示为已使用(例如,通过在使用图166的第三示出行中存储值1)。
这样,本文描述的示例可以将不匹配未使用区域区块签名130(SIGX)的每个区块签名从(多个)完全列表150复制到(多个)精简列表162,并且可以从(多个)精简列表162中省略不匹配未使用区域区块签名130(SIGX)的每个区块签名,并且针对每个区块签名(在使用元数据中)指示其表示的完全预分配卷140的区域是已使用还是未使用区域。在这种示例中,指令121可以从(多个)精简列表162中省略(多个)完全列表150中匹配未使用区域区块签名130(SIGX)的所有区块签名,并且在卷140的使用元数据(例如,使用图166)中指示这些区域的相应位置被确定为未使用。这样,本文描述的示例可以将完全预分配卷的(多个)区块签名列表的大小从具有与完全预分配卷的总大小(例如,最大容量)成比例的集群大小的(多个)完全列表,减小到具有与完全预分配卷和使用元数据的使用成比例的集群大小的(多个)精简列表。
在一些示例中,使用元数据可以包括使用图166,该使用图可以包括存储由相应区块签名154表示的完全预分配卷140的每个区域的数据的数据结构。例如,在图1的示例中,使用元数据可以包括使用图166,该使用图可以包括针对卷140的被确定为已使用的每个区块142存储1并且针对卷140的被确定为未使用的每个区块142存储0的位图,如上所述。在图1的示例中,使用图166的示出部分对应于卷140的区块142的示出部分,其中,已使用区域的每个区块142(被标记为“U”)在使用图166中具有对应的1,并且未使用区域的每个区块142(被标记为“N”)在使用图166中具有对应的0。在其他示例中,使用图166可以通过任何其他合适方式实现。
在其他示例中,可以通过任何其他适当方式实现使用元数据。例如,不使用诸如位图的使用图,使用元数据可以指示卷140的已使用范围(例如,地址范围),省略卷140的被确定为未使用的区域。在这种示例中,已使用区域可以被明确指示,并且可以指示区块签名被包括在(多个)精简列表162中的区域。在这种示例中,可以按照地址顺序指示已使用区域,并且也可以按照地址顺序包括区块签名,以使得可以根据已使用区域的顺序区块签名和明确的范围指示来确定正确顺序的完全列表。在这种示例中,可以没有未使用区域的明确指示,并且可以根据被指示为已使用的区域中的间隙来推导出已使用区域。在其他示例中,也可以明确指示未使用区域。
如上所述,指令124可以针对完全预分配卷140的地址空间的相应(连续或非连续)部分中的每个部分,生成多个完全列表150(182)。在这种示例中,对于每个完全列表150,指令126可以如上所述地生成相应的精简列表162和使用元数据。例如,对于每个完全列表150,指令124可以将该完全列表150的每个区块签名154与未使用区域区块签名130进行比较,生成指示完全预分配卷140的已使用区域的使用元数据166,并且从该完全列表生成相应的精简列表,该精简列表省略了完全列表150中被确定为匹配已使用区域区块签名130的所有区块签名154。在这种示例中,每个精简列表162(及其对应的使用元数据)可以表示卷140的与用于推导出该精简列表的完全列表150相同的相应部分。
在这种示例中,指令126可以针对完全预分配卷140生成包括一个或多个精简列表162和使用元数据166的精简列表备份信息160。如上所述,当指令126在260确定没有将与未使用区域区块签名130比较的(多个)完全列表150的进一步的区块签名154时(即,在260为“否”),方法200可以进行到270。在270,指令128可以使得使得去重系统170存储完全预分配卷140的一个或多个精简列表备份对象172。在这种示例中,精简列表备份对象172可以包括从(多个)完全列表150生成的(多个)精简列表162和使用元数据,如上所述。
在一些示例中,指令128可以使得使得去重系统170针对完全预分配卷140生成的每个精简列表162存储单独的精简列表备份对象172,并且针对对应于(多个)精简列表162中的一个的每组使用元数据166存储单独的精简列表备份对象172。在其他示例中,每个精简列表备份对象172可以包括相应的精简列表162和对应于该精简列表162的使用元数据166。
如上所述,在一些示例中,备份代理指令121可以由计算设备100(例如,主存储阵列)、去重系统170、或者与计算设备100和去重系统170分隔并且(例如,经由(多个)计算机网络)与它们通信的其他计算设备(例如,服务器)执行。在图1的示例中,计算设备100可以执行备份代理指令121。在这种示例中,指令128可以使得去重系统170通过向去重系统170提供精简列表备份信息160(包括(多个)精简列表162和每个精简列表的使用元数据166)存储(多个)精简列表备份对象172,如图1所示。在这种示例中,指令128可以向信息160提供使得去重系统170将精简列表备份信息160的组件存储到(多个)精简列表备份对象172的适当命令或指令,如上所述。
在其他示例中,当备份代理指令121由单独计算设备执行(包括生成(多个)精简列表和使用元数据)时,该单独计算设备的指令128可以类似地使得去重系统170通过向去重系统170提供精简列表备份信息160(包括(多个)精简列表162和每个精简列表的使用元数据166)来存储(多个)精简列表备份对象172,如图1所示。在其他示例中,当备份代理指令121由去重系统170执行时(包括生成(多个)精简列表和使用元数据),指令128使得去重系统170通过直接创建(多个)精简列表备份对象172并将它们存储到去重系统170,或者通过使得去重系统170的另一组件(例如,代理、指令、功能等)创建(多个)精简列表备份对象172并将它们存储到去重系统170的存储装置来存储该(多个)精简列表备份对象172。
在一些示例中,基于完全预分配卷140的精简列表备份信息160,去重系统170将(多个)精简列表162的区块签名164与已经存储在去重系统170上的区块的区块签名进行比较。在这种示例中,对于去重系统170针对其没有找到已经存储在去重系统170上的区块的任何匹配的区块签名的每个区块签名164,去重系统170可以请求计算设备100提供该区块用于存储在去重系统170上。对于去重系统170针对其找到了匹配的每个区块签名164(这意味着对应的区块已经被存储在去重系统170上),则去重系统170不从计算设备100请求该区块。
下面结合图3至图6,描述完全预分配卷的恢复、综合完全备份、以及增量备份的示例。图3是示出图1的示例计算环境105的其他功能的框图。图4是包括生成差异区块签名364的示例方法400的流程图。在图3所示的示例中,可以结合图1描述包括计算设备100和去重系统170在内的计算环境105。在图3的示例中,去重系统170包括一个或多个处理资源和至少一个机器可读存储介质320,该至少一个机器可读存储介质包括可由一个或多个处理资源310执行以执行结合去重系统170描述的功能(例如,结合图1和图3的示例描述的功能)的指令322。
在一些示例中,在完全预分配卷140在第一时间点的初次完整备份之后(例如,由去重系统170的(多个)精简列表备份对象172表示),增量备份过程可以被计算环境105执行,以向去重系统170备份完全预分配卷140在晚于第一时间点的第二时间点的内容。该增量备份过程可以基于完全预分配卷140在第二时间点相对于第一时间点的数据内容的差异执行。
在这种示例中,在方法400的410,指令121可以确定完全预分配卷140的在第二时间点相对于第一时间点有差异的区块142。例如,在图3的示例中,从第一时间点开始在第二时间点有差异的示例区块142(例如,已经被写入的区块)被标记为“D”(即,“不同”)。在这种示例中,仅对卷140相对于第一时间点的差异进行备份比再次备份整个卷140更高效,因为已经存在对于卷140在第一时间点的内容的备份。卷140在第二时间点的差异可以通过多种不同方式中的任意方式确定。例如,指令121(或计算设备100的其他指令)可以跟踪从最后一次备份(例如,从第一时间点)开始对卷140的写入。在其他示例中,计算设备100的指令可以拍摄卷140的内容的快照(包括在第一时间点的快照和第二时间点的快照),并且可以将这些快照进行比较来确定差异。
在415,指令121可以获取(例如,访问、生成等)指示完全预分配卷140中在第二时间点相对于第一时间点有差异的每个区块142的相应位置的差异元数据366。在一些示例中,指令121可以访问由计算设备100的将卷140在第一时间点和第二时间点的相应快照进行比较的指令生成的差异元数据366。在其他示例中,指令121可以基于相应快照的比较或者以任何其他适当方式生成表示卷140在第一时间点和第二时间点之间的改变的差异元数据366。在一些示例中,差异元数据366可以包括针对卷140的每个区块142指示该区块在第二时间点相对于第一时间点有差异(例如,在图3中由“1”指示)或该区块在第二时间点相对于第一时间点没有不同(例如,在图3中用“0”指示)的差异图366(例如,位图)。例如,在图3所示的示例中,差异图366在对应于在第二时间点有差异的区块142(即,用“D”标记的区块142)的每个位置包括“1”。
在420,指令121可以生成差异区块签名364,该差异区块签名包括在第二时间点相对于第一时间点有差异的每个区块142的相应区块签名。在图3中,差异区块签名364可以包括区块签名SIG6-SIG9,例如,这些区块签名包括卷140的每个不同(“D”)区块142的相应差异区块签名364。在一些示例中,差异元数据366可以按照所定义的顺序(例如,地址顺序)布置,以使得该元数据所对应的位置可以容易地被确定。
下面结合图3和图5描述生成(多个)综合精简备份对象374的示例。图5是包括生成(多个)综合精简备份对象374的示例方法500的流程图。在方法500的505,指令121可以从(多个)精简列表备份对象172提取(或访问)使用图166,用于与差异元数据366进行比较。在510,指令121可以将所访问的(多个)精简列表备份对象172的使用元数据166(例如,使用图166)与对应于卷140在第二时间点的差异元数据366(例如,差异图366)进行比较。在515,指令121可以至少部分地基于使用元数据166和差异元数据366的比较,生成要存储在(多个)综合精简备份对象374中的新使用元数据376(或使用图376)。在520,指令121可以基于使用元数据166和差异元数据366的比较、(多个)精简列表162、以及差异区块签名364生成要被存储在(多个)综合精简备份对象374中的区块签名377的一个或多个综合精简列表372。
在这种示例中,指令121可以使得去重系统170存储一个或多个新精简列表备份对象374,该一个或多个新精简列表备份对象存储表示完全预分配卷140在第二时间点的完整备份的新使用元数据376和(多个)综合精简列表372。在这种示例中,该完整备份的去重后的数据区块可以与(多个)精简列表备份对象374分开存储,尽管存储在(多个)精简备份对象374中的数据足以从去重系统170中存储的区块重建第二时间点的完整的完全预分配卷140。下面结合图3的((多个)精简列表备份对象172的)(多个)使用图166和差异图366更详细地描述这个过程的示例。在图3的示例中,(多个)使用图166和差异图366可以分别包括卷140的每个区域(即,区块142)的信息。
在图3的示例中,指令121可以将差异图366和(多个)使用图166的元数据进行比较。在这种示例中,对于卷140的差异图366指示在第二时间点没有不同(例如,“0”)、并且(多个)使用图166指示已使用区域(例如,“1”)的每个区域(即,区块142),指令121可以使得去重系统170将对应于该区域的区块签名从(多个)备份对象172的(多个)精简列表162复制到综合精简列表372。
例如,参考图3所示的图166和366的左上侧位置,差异图366指示没有不同(“0”)(意味着卷140的相应区域在第二时间点不具有不同数据),并且使用图166指示已使用区域(“1”)(意味着(多个)精简列表162包括卷140的该区域的区块签名)。在这种示例中,指令121可以使得去重系统170将对应的区块签名(例如,在图3的精简列表162的开始处的SIG0)从(多个)精简列表162复制到综合精简列表372,如图3所示。
对于卷140的差异图366指示在第二时间点存在不同(例如,“1”)的每个区域,指令121可以使得去重系统170从综合精简列表372中省略对应于该区域的(多个)精简列表162的任意区块签名164,因为该区域中的数据被指示为在第二时间点有差异,并且(多个)精简列表162表示第一时间点。另外,对于差异图366中的每个差异(“1”),指令121可以读取卷140的不同(“D”)区块142并确定该不同区块的差异区块签名364。在这种示例中,指令121可以确定差异区块签名364是否匹配未使用区域区块签名130(见图1)。如果差异区块签名364不匹配未使用区域区块签名130,则指令121可以将该差异区块签名364复制到综合精简列表372(同时省略对应于该区域的(多个)精简列表162的任意区块签名164),使得(多个)综合备份对象374包括卷140在第二时间点的不同数据内容的这个表示。如果差异区块签名364不匹配未使用区域区块签名130,则指令121可以从综合精简列表372省略该差异区块签名364,并且还可以省略(多个)精简列表162的对应于该区域的任何区块签名164。在这种示例中,匹配未使用区域区块签名130的差异区块签名364指示不管对应区域在过去是否是已使用区域,其都被确定为卷140中在第二时间点的未使用区域,使得该区域的差异区块签名364将被从(多个)综合精简备份对象374(表示卷140在第二时间点的备份)的(多个)综合精简列表172中省略。
例如,参考图3中的图166和366中的每个图的第一行中从左边开始的第三个位置,差异图366指示差异(“1”),并且基于此,指令121可以访问卷140在第二时间点的不同区块142(“D”)并生成表示卷140在第二时间点的该区块的差异区块签名364(例如,SIG8)。指令121可以确定区块签名364(例如,SIG8)不匹配未使用区域区块签名130,并且基于此可以将差异区块签名364(例如,SIG8)复制到综合精简列表372(例如,图3所示的SIG8),并且可以省略(多个)精简列表162的对应于该区域的任何区块签名164。这可以是不考虑使用图166中的指示的情况,因为“1”将指示(多个)精简列表162包括第一时间点的区块签名(在综合精简列表中其应该被替换为后一区块签名),并且“0”将指示(多个)精简列表162不包括第一时间点的区块签名,所以差异区块签名364可以被添加到(多个)综合精简列表372。在其他示例中,指令121可以确定差异区块签名364不匹配未使用区域区块签名130,并且基于此可以省略(多个)精简列表162的对应于该区域的任何区块签名164和该差异区块签名364。
指令121可以基于差异元数据366和使用元数据166的比较生成使用元数据376(例如,使用图376)。例如,对于卷140的每个区域,当差异图366指示该区域没有差异(例如,“0”)时,指令121可以在(多个)综合精简备份对象374的使用元数据376(例如,使用图376)中存储与该区域的(多个)使用图166中包括的相同指示。例如,当差异图366指示给定区域没有差异(“0”)时,该区域没有改变,并且应该具有与(多个)使用图166中指示的相同状态,所以指令322可以在使用图376中存储当该区域在被给定区域的(多个)使用图166指示时被使用(例如,“1”)的指示以及当该区域在被给定区域的(多个)使用图166指示时未使用(例如“0”)的指示。
在这种示例中,当差异图366指示给定区域的差异(例如,“1”)时,指令121可以基于该区域的差异区块签名364是否匹配未使用区域区块签名130,在使用图376(例如,(多个)综合精简备份对象374)中存储该区域被使用(例如,“1”)的指示或该区域未使用(例如,“1”)的指示。例如,当差异图366指示给定区域的差异(例如,“1”)并且该区域的差异区块签名364不匹配未使用区域区块签名130时,指令121可以在(多个)综合精简列表372中存储该差异区块签名364,如上所述,并且可以在使用图376中存储该区域被使用的对应指示(例如,“1”)。当差异图366指示给定区域的差异(例如,“1”)并且该区域的差异区块签名364匹配未使用区域区块签名130时,该区域被确定为在第二时间点未使用,并且指令121可以在(多个)综合精简列表372中省略该差异区块签名364,如上所述,并且可以在使用图376中存储该区域未使用的相应指示(例如,“0”)。
在一些示例中,指令121可以将差异图366与使用图166进行比较,以生成新使用图376,其中,指令121可以使得去重系统170将新使用图376存储在(多个)综合精简备份对象374之一中。基于比较,指令121可以将区块签名164从(多个)精简列表162复制到(多个)综合精简列表372,从(多个)综合精简列表372省略区块签名164,并且将差异区块签名364复制到(多个)综合精简列表372,如上所述。指令121可以使得去重系统170在(多个)综合精简备份对象374中存储(多个)综合精简列表372。在一些示例中,指令121可以使得去重系统170使用克隆操作将(多个)精简列表162的指示部分克隆到(多个)综合精简列表372。在这种示例中,指令121可以(例如,基于使用元数据166、差异元数据366、差异区块签名364中的一者或多者)确定一个或多个精简列表162的将被复制到(多个)综合精简列表372的一个或多个连续系列的区块签名164,并使用克隆操作将(多个)精简列表162的这些部分克隆到(多个)综合精简列表372(散布有差异区块签名364和/或区块签名省略),如上所述。
通过这种方式,本文描述的示例可以基于完全预分配卷在更早的第一时间点的备份对象和稍后的第二时间点的增量备份信息,生成完全表示该卷在第二时间点的整个内容的(多个)综合精简备份对象。在这种示例中,指令121可以使得去重系统170通过将(多个)精简备份对象和差异信息(例如,差异元数据和差异区块签名)的内容进行比较,将新使用元数据、差异区块签名的区块签名以及来自第一时间点的(多个)精简备份对象的卷140的未使用区域的每个区块签名复制到(多个)综合精简备份对象中,来存储(多个)综合精简备份对象。在本文描述的示例中,通过在对卷140进行备份时从区块签名的(多个)完全列表省略未使用区域来生成区块签名的(多个)精简列表,如上所述,(多个)精简列表将有可能具有少得多的区块签名需要向(多个)综合精简备份对象复制(或克隆),这会使得创建如上所述的(多个)精简备份对象的过程更高效。即,该复制(或克隆)过程在本文描述的示例中可以具有与完全预分配卷140的利用成比例而不是与卷140的最大大小成比例的性能(例如,如果对于卷140的(多个)完全列表进行相同的处理)。
在本文描述的示例中,(多个)综合精简备份对象在功能上可以相当于(多个)精简列表备份对象,并且在本文中可以被称为(多个)精简列表备份对象。在这种示例中,修饰语“综合”指示该(多个)备份对象是至少部分地从增量备份过程、从差异信息、或者从它们的组合(例如,如所描述的)所生成的,尽管(多个)综合备份对象仍然表示卷在给定时间点的整个内容。
现在结合图3和图6描述从(多个)精简备份对象的恢复操作的示例。图6是包括从(多个)精简列表备份对象执行恢复的示例方法600的流程图。在方法600的610,指令322可以根据(多个)精简列表备份对象的使用元数据确定将要恢复的备份完全预分配卷的已使用区域和未使用区域。在615,对于使用元数据中指示的完全预分配卷的每个给定已使用区域,指令322可以将(多个)精简列表备份对象中针对相同的给定区域的区块签名表示的区块,恢复到完全预分配目标卷的该区域(即,地址空间)。在620,对于使用元数据中指示的完全预分配卷的每个给定的未使用区域,指令322可以将具有未使用区域的数据模式的区块恢复到完全预分配目标卷的相同的给定区域(即,地址空间)。
例如,指令322可以执行从(多个)综合精简备份对象374的恢复操作,该(多个)综合精简备份对象表示第二时间点的完全预分配卷140,如以上结合图3描述的。在一些示例中,目标计算设备(例如,计算设备100或其他计算设备)可以创建目标完全预分配卷,以在卷140存在于第二时间点时接收卷140的恢复。在这种示例中,在610,指令322可以根据使用图376确定卷140在第二时间点的已使用区域和未使用区域。在615,对于使用图376中指示的卷140的每个已使用区域,指令322可以恢复对应于该区域的相应区块签名377表示的、存储在综合精简列表372中的区块(从去重系统170)。在这种示例中,指令322可以将该区块恢复到目标卷中与其存储在源卷中相同的区域(例如,地址空间)。在620,对于使用图376中指示的卷140的每个未使用区域,指令322可以针对完全预分配卷的未使用区域恢复具有所限定的数据模式的区块(恢复到目标卷的相同区域)。例如,如果卷140的未使用区域中存储的数据模式是全0区块,则全0区块可以基于使用图376中该区域是未使用区域的指示被恢复到目标卷(即使该区域的区块签名没有被存储在(多个)精简备份对象374中,如上所述)。
图7是使得(多个)精简列表备份对象到去重系统的存储的示例计算环境705的框图。图8是包括生成区块签名的(多个)精简列表的示例方法800的流程图。在图7的示例中,计算设备700可以包括至少一个处理资源110和存储指令121(可由至少一个处理资源110执行)的至少一个机器可读存储介质120,如结合图1描述的。计算环境705还可以包括存储装置101,该存储装置包括以上结合图1描述的完全预分配卷140。尽管下面参考图7的计算设备700描述了方法800的执行,但是可以利用适于执行方法800的其他计算设备或系统(例如,图1的计算设备100等)。另外,方法800的实现不限于这种示例。
在方法800的810,指令122可以确定包括计算系统的完全预分配卷140的整个地址空间的数据内容的一组区块142。在一些示例中,计算设备700可以包括存储装置101。在其他示例中,存储装置101可以远离计算设备700并且对于计算设备170是可以(例如,经由(多个)计算机网络)访问的。在820,指令124可以生成区块签名的(多个)完全列表150(182)。在这种示例中,当存在一个完全列表150时,该完全列表包括卷140的整个地址空间的所有区块142的区块签名。在其他示例中,当存在卷140的多个完全列表150时,每个完全列表150包括完全预分配卷的地址空间的相应连续部分或多个非连续部分的区块的区块签名。在这种示例中,完全列表150一起表示完全预分配卷140的整个地址空间的数据内容。
在825,指令126可以基于将(多个)完全列表150的每个区块签名与表示完全预分配卷140的未使用区域的区块的未使用区域区块签名进行比较,生成(184)一个或多个精简列表162和使用元数据166。在这种示例中,对于每个完全列表,指令126可以将完全列表的每个区块签名与表示完全预分配卷140的未使用区域的区块的未使用区域区块签名(如上所述)进行比较。在这种示例中,指令126可以基于比较生成(184)指示完全预分配卷140的已使用区域的使用元数据166,并且可以基于比较从相应的完全列表150生成从相应的完全列表150中省略被确定为匹配未使用区域区块签名的相应的精简列表162。在830,指令128可以使得去重备份系统存储完全预分配卷140的(多个)精简列表备份对象,该(多个)精简备份对象包括从(多个)完全列表150生成的(多个)精简列表162和使用元数据166。
说明书(包括任何附属的权利要求、摘要、附图)中公开的所有特征和/或所公开的任何方法和过程的所有元素可以按照任意组合结合在一起,除了至少一些特征和/或元件相互排斥的组合以外。例如,与图1至8中任意附图相关联地描述的功能可以与结合图1至8中任意其他附图相关联地描述的功能提供。
尽管本文包括并描述的各种流程图中的每个流程图示出了某些功能的特定执行顺序,但是由这些流程图表示的各方法并不限于该顺序。例如,任意流程图中连续示出的功能可以按照不同顺序执行,可以同时或部分同时执行,或者以它们的组合形式执行。在本文描述的示例中,短语“基于”不是排他性的并且不应该被认为是“排他地基于”。相反,本文使用的短语“基于”是包括性的,并且其含义与替代短语“至少基于”或“至少部分地基于”相同。因此,本文描述为“基于”某个条件、数据等的任何判定、判决、比较等可以被理解为表示该判决、比较等至少基于(或至少部分地基于)该条件、数据等,并且还可以基于其他(多个)条件、数据等。在本文描述的示例中,被描述为由“指令”执行的功能可以被理解为可以由这些指令执行的功能(当这些指令被处理资源执行时)。在其他示例中,与指令相关联地描述的功能可以由(多个)引擎实现,该(多个)引擎可以是实现一个或多个引擎的功能的硬件和编程的任意组合。
如本文使用的,“计算设备”可以是服务器、存储设备、存储阵列、备份设备、桌面或膝上型计算机、交换机、路由器、或者包括处理资源的任何其他处理设备或装备。在本文描述的示例中,处理资源可以包括例如,包括在单个计算设备中或者跨多个计算设备分布的(多个)处理器。如本文使用的,“处理器”可以是中央处理单元(CPU)、半导体微处理器、图形处理单元(GPU)、被配置为提取并执行指令的现场可编程门阵列(FPGA)、适于提取和执行机器可读存储介质上存储的指令的其他电子电路中的至少一者或它们的组合。在本文描述的示例中,处理资源可以获取、解码、并执行存储介质上存储的指令,以执行与存储介质上存储的指令相关联地描述的功能。在其他示例中,与本文描述的指令相关联地描述的功能可以实现为电子电路的形式、编码在机器可读存储介质上的可执行指令的形式、或者它们的组合。存储介质可以位于执行机器可读指令的计算设备上,或者远离但是对于计算设备而言可以(例如,经由计算机网络)访问以执行的计算设备上。在本文示出的示例中,存储介质120可以由(多个)机器可读存储介质实现。
在本文描述的示例中,存储阵列可以是包括多个存储设备和一个或多个控制器的计算设备,其中,该一个或多个控制器与主机设备交互并控制对存储设备的存取。在一些示例中,存储设备可以包括HDD、SSD、或者任何其他适当类型的存储设备或它们的任意组合。在一些示例中,(多个)控制器可以对存储设备提供的存储容量进行虚拟化,以使能主机存取由来自多个不同存储设备的存储空间组成的虚拟对象(例如,卷)。
在一些示例中,与本文描述的指令相关联地描述的功能可以由(多个)引擎实现,该(多个)引擎可以是硬件和实现该(多个)引擎的功能的编程的任意组合。在本文描述的示例中,硬件和编程的此类组合可以通过多种不同方式实现。例如,引擎的编程可以是存储在至少一个非暂态机器可读存储介质上的处理器可执行指令,并且引擎的硬件可以包括执行这些指令的至少一个处理资源。在一些示例中,硬件还可以包括至少部分地实现该(多个)引擎中的至少一个引擎的其他电子电路。在一些示例中,至少一个机器可读存储介质可以存储在由至少一个处理资源执行时至少部分地实现该(多个)引擎中的一些或所有引擎的指令。在这种示例中,计算设备可以包括存储指令的至少一个机器可读存储介质和执行指令的至少一个处理资源。在其他示例中,引擎可以由电子电路实现。
如本文使用的,“机器可读存储介质”可以是包含或存储诸如,可执行指令、数据等的信息的任何电、磁、光、或者其他物理存储装置。例如,本文描述的任何机器可读存储介质可以是RAM、EEPROM、易失性存储器、非易失性存储器、闪存、存储驱动器(例如,HDD、SSD)、任何类型的存储盘(例如,压缩盘、DVD等)等中的任一者或它们的组合。另外,本文描述的任何机器可读存储介质可以是非暂态的。在本文描述的示例中,机器可读存储介质或媒介可以是物品(或制品)的部分。物品或制品可以指代任意制造的(多个)组件。在一些示例中,指令可以是安装包的一部分,该安装包在被安装时可以由处理资源执行来实现本文描述的功能。
Claims (20)
1.一种方法,包括:
确定一组区块,所述一组区块包括计算系统的完全预分配卷的整个地址空间的数据内容;
生成区块签名的一个或多个完全列表,每个完全列表包括所述完全预分配卷的地址空间的所有或相应部分的区块的区块签名,所述一个或多个完全列表一起表示所述完全预分配卷的整个地址空间的数据内容;
对于每个完全列表:
将所述完全列表的每个区块签名与表示所述完全预分配卷的未使用区域的区块的未使用区域区块签名进行比较;
基于所述比较,生成指示所述完全预分配卷的已使用区域的使用元数据;以及
从所述完全列表生成精简列表,所述精简列表从所述完全列表省略基于所述比较被确定为匹配所述未使用区域区块签名的所有区块签名;以及
使得去重备份系统存储所述完全预分配卷的一个或多个精简列表备份对象,该一个或多个精简列表备份对象包括从所述一个或多个完全列表生成的所述一个或多个精简列表和所述使用元数据。
2.如权利要求1所述的方法,还包括:
通过向相当于完全预分配卷的已使用区域的区块的数据集应用签名函数,生成所述未使用区域区块签名。
3.如权利要求2所述的方法,其中:
相当于已使用区域的区块的所述数据集是独占地包括零的数据集;并且
所述未使用区域区块签名是独占地包括零的数据集的区块签名。
4.如权利要求1所述的方法,其中,所述一个或多个完全列表表示所述完全预分配卷在第一时间点的数据内容,所述方法还包括:
确定所述完全预分配卷的在晚于所述第一时间点的第二时间点有差异的区块;
基于差异元数据生成一个或多个差异区块签名,每个差异区块签名包括在所述第二时间点有差异的所述区块中的相应的一个区块的区块签名,对于在所述第二时间点有差异的所述区块中的每个区块,所述差异元数据指示所述有差异的区块在所述完全预分配卷中的位置;以及
使得所述去重备份系统基于所述差异元数据和所述一个或多个差异区块签名,存储所述完全预分配卷的一个或多个新精简列表备份对象。
5.如权利要求4所述的方法,该方法包括:
将所述一个或多个精简列表备份对象的所述使用元数据与所生成的差异元数据进行比较;
基于所述差异元数据和所述一个或多个精简列表备份对象的所述使用元数据,生成所述一个或多个综合精简备份对象的新使用元数据;以及
基于所述精简列表、所述差异元数据以及所述一个或多个差异区块签名,生成所述一个或多个综合精简备份对象的区块签名的综合精简列表。
6.如权利要求5所述的方法,其中,所述生成所述区块签名的综合精简列表包括:
对于所述完全预分配卷的所述差异元数据指示没有差异并且所述一个或多个精简列表备份对象的所述使用元数据指示已使用区域的每个区域,将对应于该区域的区块签名从所述一个或多个精简列表复制到所述区块签名的综合精简列表;以及
对于所述完全预分配卷的所述差异元数据指示差异的每个区域:
省略对应于该区域的一个或多个精简列表的任何区块签名;以及
当所述一个或多个差异区块签名中对应于该区域的给定差异区块签名不匹配所述未使用区域区块签名时,将该给定差异区块签名复制到所述区块签名的综合精简列表。
7.如权利要求5所述的方法,其中,生成所述综合精简备份对象的所述使用元数据包括:
对于所述完全预分配卷的每个区域:
当所述差异元数据指示该区域没有差异时,在所述综合精简备份对象的使用元数据中存储有关该区域已使用或未使用的、与针对该区域在所述一个或多个精简列表备份对象的使用元数据中包括的指示相同的指示;并且
当所述差异元数据指示该区域的差异时:
基于该区域的差异区块签名是否匹配所述未使用区域区块签名,在所述综合精简备份对象的使用元数据中存储该区域已使用或者该区域未使用的指示。
8.如权利要求1所述的方法,还包括:
根据所述一个或多个精简列表备份对象的使用元数据,确定将要恢复的所述完全预分配卷的已使用区域和未使用区域;
对于所述使用元数据中指示的所述完全预分配卷的每个已使用区域,将所述精简列表备份对象中针对该区域的区块签名表示的区块恢复到完全预分配目标卷的该区域;以及
对于所述使用元数据中指示的所述完全预分配卷的每个未使用区域,将具有未使用区域的数据模式的区块恢复到所述完全预分配目标卷的该区域。
9.如权利要求8所述的方法,其中,所述未使用区域的数据模式包括全零。
10.如权利要求1所述的方法,包括:
从与去重备份系统分隔的计算设备,向该去重备份系统提供所述一个或多个精简清单从所述一个或多个完全列表生成的所述一个或多个精简列表和所述使用元数据,其中,所述计算设备执行所述一个或多个精简清单的生成。
11.一种包括非暂态机器可读存储介质的物品,该非暂态机器可读存储介质包括可在至少一个处理资源处执行以执行以下处理的指令:
通过向相当于计算设备的完全预分配卷的未使用区域的区块的数据集应用签名函数,生成未使用区域区块签名;
确定一组区块,所述一组区块包括所述完全预分配卷的整个地址空间的数据内容;
生成区块签名的一个或多个完全列表,每个完全列表包括所述完全预分配卷的地址空间的所有或相应部分的区块的区块签名,该一个或多个完全列表一起表示所述完全预分配卷的整个地址空间的数据内容;
对于每个完全列表:
将所述完全列表的每个区块签名与所述未使用区域区块签名进行比较;
基于所述比较,生成指示所述完全预分配卷的已使用区域的使用元数据;以及
从所述完全列表生成精简列表,所述精简列表从所述完全列表中省略基于所述比较被确定为匹配所述未使用区域区块签名的所有区块签名;以及
使得去重备份系统存储所述完全预分配卷的一个或多个精简列表备份对象,该一个或多个精简列表备份对象包括从所述一个或多个完全列表生成的所述一个或多个精简列表和所述使用元数据。
12.如权利要求11所述的物品,其中,存储所述完全预分配卷的存储阵列包括所述至少一个处理资源,并且其中,所述指令可由所述存储阵列的所述至少一个处理资源执行以:
将从所述一个或多个完全列表生成给所述去重备份系统的所述一个或多个精简列表和所述使用元数据从所述存储阵列提供给所述去重备份系统,以使所述去重备份系统存储所述一个或多个精简列表备份对象。
13.如权利要求11所述的物品,其中,执行所述指令的所述至少一个处理资源是与存储所述完全预分配卷的存储阵列分隔且与所述去重备份系统分隔的计算设备的部分,并且其中,所述指令可由所述存储阵列的所述至少一个处理资源执行以:
将从所述一个或多个完全列表生成给所述去重备份系统的所述一个或多个精简列表和所述使用元数据从所述计算设备提供给所述去重备份系统,以使所述去重备份系统存储所述一个或多个精简列表备份对象。
14.如权利要求11所述的物品,其中,相当于未使用区域的区块的所述数据集是包括全零的数据集。
15.如权利要求11所述的物品,其中,所述一个或多个完全列表表示所述完全预分配卷在第一时间点的数据内容,所述指令可执行以:
确定所述完全预分配卷的在晚于所述第一时间点的第二时间点有差异的区块;
基于差异元数据生成一个或多个差异区块签名,每个差异区块签名包括在所述第二时间点有差异的区块中的相应的一个区块的区块签名,所述差异元数据针对在所述第二时间点有差异的区块中的每个区块,指示该有差异的区块在所述完全预分配卷中的位置;以及
使得所述去重备份系统基于所述差异元数据和所述一个或多个差异区块签名,存储所述完全预分配卷的一个或多个新精简列表备份对象。
16.如权利要求11所述的物品,所述指令可执行以:
确定所述卷是否是完全预分配的;以及
响应于确定所述卷是完全预分配的,生成所述一个或多个精简列表和所述使用元数据。
17.一种计算设备,包括:
至少一个处理资源;以及
至少一个非暂态机器可读存储介质,包括可由至少一个处理资源执行以执行以下处理的指令:
确定计算系统的卷是完全预分配卷;
确定一组区块,所述一组区块包括计算系统的完全预分配卷的整个地址空间的数据内容;
生成表示所述完全预分配卷的整个地址空间的数据内容的区块签名的完全列表,该区块签名的完全列表包括所述一组区块中的每个区块的相应区块签名;
将所述完全列表中的每个区块签名与表示所述完全预分配卷的未使用区域的区块的未使用区域区块签名进行比较;
基于所述比较,生成指示所述完全预分配卷的已使用区域和未使用区域的使用图;
从所述完全列表生成区块签名的精简列表,所述区块签名的精简列表从所述完全列表中省略了被确定为匹配所述未使用区域区块签名的所有区块签名;
基于所述精简列表和使用图,在去重备份系统中存储表示所述完全预分配卷的精简列表备份对象。
18.如权利要求17所述的计算设备,其中,所述一个或多个完全列表表示所述完全预分配卷在第一时间点的数据内容,所述指令可执行以:
确定所述完全预分配卷的在晚于所述第一时间点的第二时间点有差异的区块;
基于差异元数据生成一个或多个差异区块签名,每个差异区块签名包括在所述第二时间点有差异的区块中的相应的一个区块的区块签名,所述差异元数据针对在所述第二时间点有差异的区块中的每个区块,指示该有差异的区块在所述完全预分配卷中的位置;以及
使得所述去重备份系统基于所述差异元数据和所述一个或多个差异区块签名,存储所述完全预分配卷的新精简列表备份对象。
19.如权利要求17所述的计算设备,所述指令用于:
通过向相当于完全预分配卷的未使用区域的区块的数据集应用签名函数,生成所述未使用区域区块签名。
20.如权利要求19所述的计算设备,其中,相当于完全预分配卷的未使用区域的区块的所述数据集包括全零。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/852,711 US11436092B2 (en) | 2020-04-20 | 2020-04-20 | Backup objects for fully provisioned volumes with thin lists of chunk signatures |
US16/852,711 | 2020-04-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113535467A true CN113535467A (zh) | 2021-10-22 |
CN113535467B CN113535467B (zh) | 2023-07-18 |
Family
ID=77919607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110420131.5A Active CN113535467B (zh) | 2020-04-20 | 2021-04-19 | 用于备份对象的方法、机器可读存储介质和计算设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11436092B2 (zh) |
CN (1) | CN113535467B (zh) |
DE (1) | DE102021105996A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11321278B2 (en) * | 2020-04-29 | 2022-05-03 | Rubrik, Inc. | Light-weight index deduplication and hierarchical snapshot replication |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782003B1 (en) * | 2011-05-13 | 2014-07-15 | Emc Corporation | Synchronization of storage using log files and snapshots |
CN104769573A (zh) * | 2012-09-18 | 2015-07-08 | 亚马逊科技公司 | 动态分配网络地址 |
CN106227621A (zh) * | 2016-07-25 | 2016-12-14 | 北京飞杰信息技术有限公司 | 基于逻辑卷管理精简卷的数据备份方法及系统 |
CN107526652A (zh) * | 2016-06-21 | 2017-12-29 | 华为技术有限公司 | 一种数据同步方法及存储设备 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3183719B2 (ja) | 1992-08-26 | 2001-07-09 | 三菱電機株式会社 | アレイ型記録装置 |
US7043637B2 (en) | 2001-03-21 | 2006-05-09 | Microsoft Corporation | On-disk file format for a serverless distributed file system |
US7694103B1 (en) * | 2006-06-23 | 2010-04-06 | Emc Corporation | Efficient use of memory and accessing of stored records |
US8484427B1 (en) * | 2006-06-28 | 2013-07-09 | Acronis International Gmbh | System and method for efficient backup using hashes |
US20080282047A1 (en) | 2007-05-08 | 2008-11-13 | Hitachi, Ltd. | Methods and apparatus to backup and restore data for virtualized storage area |
JP5346536B2 (ja) | 2008-10-02 | 2013-11-20 | 株式会社日立ソリューションズ | 情報バックアップ/リストア処理装置、及び情報バックアップ/リストア処理システム |
US8671082B1 (en) * | 2009-02-26 | 2014-03-11 | Netapp, Inc. | Use of predefined block pointers to reduce duplicate storage of certain data in a storage subsystem of a storage server |
US8346727B1 (en) * | 2010-03-15 | 2013-01-01 | Symantec Corporation | Optimized image archiving |
US8898114B1 (en) * | 2010-08-27 | 2014-11-25 | Dell Software Inc. | Multitier deduplication systems and methods |
US9823981B2 (en) | 2011-03-11 | 2017-11-21 | Microsoft Technology Licensing, Llc | Backup and restore strategies for data deduplication |
US8745003B1 (en) * | 2011-05-13 | 2014-06-03 | Emc Corporation | Synchronization of storage using comparisons of fingerprints of blocks |
US20130080397A1 (en) * | 2011-09-28 | 2013-03-28 | Symantec Corporation | Database restore using incremental backups in reverse order |
CA2862596A1 (en) * | 2011-12-05 | 2013-06-13 | Persistent Telecom Solutions Inc. | Universal pluggable cloud disaster recovery system |
US9098452B2 (en) * | 2011-12-19 | 2015-08-04 | International Business Machines Corporation | Selecting files to backup in a block level backup |
KR101403305B1 (ko) | 2012-08-23 | 2014-06-05 | 한국전자통신연구원 | 백업부트레코드 정보를 이용한 파티션 복구 장치 및 방법 |
US9514002B2 (en) | 2013-09-13 | 2016-12-06 | Vmware, Inc. | Incremental backups using retired snapshots |
US9582194B2 (en) | 2013-09-27 | 2017-02-28 | Veritas Technologies Llc | Techniques for improving performance of a backup system |
US9372757B2 (en) * | 2013-10-18 | 2016-06-21 | Netapp, Inc. | Incremental block level backup |
US9483481B2 (en) | 2013-12-06 | 2016-11-01 | International Business Machines Corporation | Files having unallocated portions within content addressable storage |
US9652468B2 (en) * | 2013-12-17 | 2017-05-16 | Annapurna Labs Ltd. | In-band de-duplication |
EP3213211A4 (en) | 2014-10-29 | 2017-09-06 | Hewlett-Packard Enterprise Development LP | Data restoration using allocation maps |
WO2016080949A1 (en) | 2014-11-17 | 2016-05-26 | Hewlett Packard Enterprise Development Lp | Snapshot backup |
US10019318B1 (en) | 2015-01-30 | 2018-07-10 | Veritas Technologies Llc | Storage optimization of pre-allocated units of storage |
US10248623B1 (en) * | 2015-03-30 | 2019-04-02 | EMC IP Holding Company LLC | Data deduplication techniques |
US20210019236A1 (en) * | 2019-07-19 | 2021-01-21 | Commvault Systems, Inc. | Efficient reconstruction of a deduplication database |
-
2020
- 2020-04-20 US US16/852,711 patent/US11436092B2/en active Active
-
2021
- 2021-03-11 DE DE102021105996.8A patent/DE102021105996A1/de active Pending
- 2021-04-19 CN CN202110420131.5A patent/CN113535467B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782003B1 (en) * | 2011-05-13 | 2014-07-15 | Emc Corporation | Synchronization of storage using log files and snapshots |
CN104769573A (zh) * | 2012-09-18 | 2015-07-08 | 亚马逊科技公司 | 动态分配网络地址 |
CN107526652A (zh) * | 2016-06-21 | 2017-12-29 | 华为技术有限公司 | 一种数据同步方法及存储设备 |
CN106227621A (zh) * | 2016-07-25 | 2016-12-14 | 北京飞杰信息技术有限公司 | 基于逻辑卷管理精简卷的数据备份方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
DE102021105996A1 (de) | 2021-10-21 |
US20210326213A1 (en) | 2021-10-21 |
CN113535467B (zh) | 2023-07-18 |
US11436092B2 (en) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10359968B1 (en) | Smart data movement among virtual storage domains | |
US11561949B1 (en) | Reconstructing deduplicated data | |
US9298386B2 (en) | System and method for improved placement of blocks in a deduplication-erasure code environment | |
US9633034B2 (en) | Generation of realistic file content changes for deduplication testing | |
US9514138B1 (en) | Using read signature command in file system to backup data | |
US8788788B2 (en) | Logical sector mapping in a flash storage array | |
US8793467B2 (en) | Variable length encoding in a storage system | |
US9442806B1 (en) | Block-level deduplication | |
US8751454B1 (en) | Virtual defragmentation in a deduplication vault | |
US9665306B1 (en) | Method and system for enhancing data transfer at a storage system | |
US9740422B1 (en) | Version-based deduplication of incremental forever type backup | |
US8732411B1 (en) | Data de-duplication for information storage systems | |
US8682870B1 (en) | Defragmentation during multiphase deduplication | |
US10120595B2 (en) | Optimizing backup of whitelisted files | |
US10713221B2 (en) | Dual layer deduplication for a file system running over a deduplicated block storage | |
US10997119B2 (en) | Reduced size extent identification | |
CN113535467B (zh) | 用于备份对象的方法、机器可读存储介质和计算设备 | |
US9448739B1 (en) | Efficient tape backup using deduplicated data | |
CN115237336B (zh) | 用于去重系统的方法、物品和计算设备 | |
US10956366B2 (en) | Dynamic physical capacity allocation in an unbalanced CAS system | |
US10728023B2 (en) | Hash function with content based salt | |
WO2016209313A1 (en) | Task execution in a storage area network (san) | |
US11055006B1 (en) | Virtual storage domain for a content addressable system | |
US11099756B2 (en) | Managing data block compression in a storage system | |
US20220197527A1 (en) | Storage system and method of data amount reduction in storage system |
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 |