CN105339929B - 选择用于取消重复数据的存储 - Google Patents
选择用于取消重复数据的存储 Download PDFInfo
- Publication number
- CN105339929B CN105339929B CN201380076635.3A CN201380076635A CN105339929B CN 105339929 B CN105339929 B CN 105339929B CN 201380076635 A CN201380076635 A CN 201380076635A CN 105339929 B CN105339929 B CN 105339929B
- Authority
- CN
- China
- Prior art keywords
- storage
- hash
- group membership
- data
- matched
- 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.)
- Expired - Fee Related
Links
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
-
- 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
- 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/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- 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/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- 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/13—File access structures, e.g. distributed indices
- G06F16/137—Hash-based
-
- 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/1752—De-duplication implemented within the file system, e.g. based on file segments based on file chunks
-
- 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/80—Database-specific techniques
-
- 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/84—Using snapshots, i.e. a logical point-in-time copy of the data
Abstract
一种技术包括将与对象的块相关联的多个散列传送到对象在其上被分布的多个存储中的至少一些存储;以及响应于该传送,接收指示关联块的分布的响应。该技术包括至少部分地基于该响应来选择存储中的一个,并且向所选择的存储传送与对象相关联的取消重复的数据。
Description
背景技术
如果数据被损坏、被覆写、经受病毒攻击等,则为了将网络上的数据(例如,包含在一个或多个文件中的数据)恢复成先前状态的目的,典型的计算机网络可以具有备份和恢复系统。备份和恢复系统典型地包括大容量存储设备,诸如磁带驱动器和/或硬盘驱动器;并且该系统可以包括物理和/或虚拟可移除存储设备。
例如,备份和恢复系统可以将备份数据存储在磁带上,并且在将备份数据转移到给定磁带之后,磁带可以从其带驱动器移除并且被存储在安全位置,诸如防火保险柜中。备份和恢复系统可以替代地是基于虚拟带库的系统,其模拟并且替代物理磁带驱动器系统。以该方式,通过基于虚拟带库的系统,虚拟磁带盒代替磁带来存储备份数据。
附图说明
图1是根据示例性实现的计算机网络的示意图。
图2是根据示例性实现的数据存储系统的图示。
图3和图4是根据示例性实现的由图2的数据存储系统使用以选择用于接收取消重复数据的组成员的竞价过程的图示。
图5是根据示例性实现的在多个组成员上的合作对象的存储分布的图示。
图6是描绘根据示例性实现的用于存储组成员的集群上的合作对象的技术的流程图。
图7、图8A和图8B是描绘根据示例性实现的用于选择用于取消重复数据的存储的组成员的技术的流程图。
图9是描绘根据示例性实现的用于检索和报告部分合作对象数据的技术的流程图。
图10是用于图示根据示例性实现的从组成员中检索合作对象数据的表。
图11是描绘根据示例性实现的用于在组成员当中分布主对象清单的技术的流程图。
图12是根据示例性实现的主对象清单的分布的图示。
图13是根据示例性实现的取消重复数据的组成员控制的复制的图示。
图14是根据示例性实现的非混合复制过程的图示。
具体实施方式
参考图1,示例性计算机网络100可以包括备份和恢复系统,该备份和恢复系统包括在各个服务器110(服务器110-1、110-2…110Q,在图1中示作示例)上执行的备份应用132和附属客户端应用134。以该方式,备份应用132时常识别要在网络100的备份存储设备上备份的针对附属客户端应用134的数据。该数据进而根据本文称为“对象”的数据容器被划分。存储在备份存储上的给定对象逐个备份会话地被创建、删除和修改。如本文公开的,在其本文讨论的许多功能当中,客户端应用134被构建为识别对象数据中的改变;选择存储有更新的数据的存储;并且将更新的数据传送到所选择的存储。
例如,“存储”可以是独立的计算机系统或同一计算机系统上的独立存储子系统。对于图1的具体示例,在各个节点150(P个节点150-1、150-2…150P,在图1中示作示例)上形成存储,节点150经由网络连接140(根据具体实现,局域网(LAN)连接、基于因特网的连接、广域网(WAN)连接、这样连接的组合等)耦合到服务器110。
如本文公开的,给定对象作为“合作对象”被存储在存储的集群或群组上。由于合作的性质而导致“存储”在本文中也被称为“组成员170”。以该方式,根据示例性实现,给定“合作对象”的每个组成员170存储用于该对象的“取消重复数据”,其中,该取消重复数据是从初始数据集合以及表示初始存储的数据中的改变的数据形成的。这样,可以针对给定的合作对象从组成员170中检索取消重复数据以“重新混合”或重建该对象。
通常,服务器110是由实际硬件120和实际机器可执行指令或“软件”130组成的物理机。在这方面,给定服务器110可以包括这样的硬件120作为一个或多个中央处理单元(CPU)122、存储器124、网络接口126等。通常,存储器124是非瞬时存储器,诸如磁存储装置、光存储装置、从半导体器件形成的存储装置等。存储器124可以本地存储用于服务器110的数据,并且存储在由CPU(多个)122执行时使得CPU(多个)提供机器可执行指令130中的一个或多个组件的指令。
如图1所示,机器可执行指令130包括备份应用132和客户端应用134、以及创建、修改和删除对象的其他可能的其他应用。
给定的组成员170可以在处理节点150上形成,该处理节点150也是由实际硬件158和实际机器可执行指令159组成的实际物理机。硬件158可以包括例如一个或多个中央处理单元(CPU)160、网络接口和存储器162。存储器162是非瞬时存储器,并且根据具体实现可以是基于磁存储的存储器、基于光存储的存储器、基于半导体存储的存储器等。节点150可以包括机器可执行指令159,机器可执行指令159包括例如组成员客户端应用168。
因此,根据示例性实现,存在于可能多个节点150上的组成员170的集群或群组可以形成用于给定合作对象的存储装置。此外,虽然本文中描述为存在于单独的节点150上,但是根据其他实现,给定的合作对象可以被存储在独立的组成员上,其中两个或更多个组成员位于同一节点150上。因此,可以想到在所附权利要求的范围内的许多实现。
结合图1参考图2,根据示例性实现,合作对象208可以向给定客户端应用134呈现为单个逻辑对象,但是在组成员170的群组或集群上分布用于对象208的数据。该合作对象的逻辑呈现向应用提供单个存储池,其横跨集群内的其他独立存储池。
根据一些实现,客户端应用134不在本地存储关于给定合作对象的内容的任何信息。这允许多个客户端应用134并且因此多个备份应用132来同时访问同一合作对象,并且还避免创建在特定客户端应用134和所存储的数据之间的相关性。
如本文进一步公开的,为了简化与现有备份应用的集成,每个组成员170可以知道给定合作对象的其他组成员170,并且可以向客户端应用134指令其位置。这允许备份应用132连接到组成员170中的任何一个,并且还允许客户端应用134静默地开放与所有组成员170的连接。这可以有助于避免暴露复杂配置,并且允许在备份应用132内的合作对象的管理,其可以例如通过单个端点拓扑来设计。
因为给定的合作对象涉及多个独立操作的组成员170,所以根据一些实现,客户端应用134将来自多个组成员170的信息合并成被传送到附属备份应用132的有意义的信息。以该方式,根据一些实现,给定的组成员170可以存储独立的列表、数据作业记录、复制作业记录等,给定的客户端应用134可以将其合并成用于备份应用132的有意义的信息。对于在列表中返回的许多字段,客户端应用134提供来自组成员存储的所有返回值的汇总,例如存储的用户数据量。对于其他字段,例如,客户端应用134将独立状态“集中”成总体状态,诸如最严重的状态(多个)。
当客户端应用134执行跨组成员170中的每一个的列表操作时,不保证在列表中的条目的绝对顺序。例如,可以实际上同时创建两个合作对象,并且对于给定的组成员170,可以首先存储对象一,而在另一给定其他组成员170上,可能已经首先创建了对象二。为了向备份应用132提供单个稳定列表的目的,使用通用标识,并且使用列表操作来在查找关联记录的合理时间窗口内在存储装置中进行搜索。通过具有运行搜索的基于时间的窗口,可以避免下述情况,其中,每当成员170查找条目时就搜索整个数据库,这在特定情况下甚至可能不存在。例如,时间窗口可以是大约5分钟范围的时间窗口,但是该窗口可以根据具体配置和/或实现而变化。
如图2所示,虽然给定的分布式合作对象208可以在多个组成员170当中被分布,但是给定的客户端应用134具有单个相应对象的逻辑视图,这允许每个组成员170可能执行不同版本的应用软件。这允许用户对其软件执行滚动更新,而无需关心在所有组成员170中保持一致的软件版本。在软件的能力在组成员170之间不同的情况下,客户端应用134假定组成员170当中的最小能力。
根据示例性实现,为了实现在多个独立组成员170中的可接受取消重复性能的目的,使用竞价技术,其目的在于将类似的数据发送到同一组成员,并且使新的未匹配数据在其余组成员170中负载平衡。在该竞价技术中,对于给定的数据单元(例如数据段),客户端应用134请求来自组成员170的竞价,接收来自组成员170的相应的竞价响应,基于响应来选择组成员170中的一个,并且向所选择的组成员170传送用于该数据单元的取消重复数据。此外,如上进一步所述,客户端应用134可以调节何时使用或不使用竞价。
作为更具体的示例,结合图1参考图3,根据一些实现,为了根据图3的图示300使数据的存储装置负载平衡的目的,客户端应用134对要被备份的进入数据310进行处理。客户端应用134将进入数据310接收在缓冲器312中。以该方式,缓冲器312根据具体实现来存储给定的数据段314或多个数据段314。不论存储装置如何,都以下述方式处理每个数据段314。
客户端应用134的分块(或者块)模块316将数据段314转换成相应的块318。例如,根据一些实现,分块模块316可以将两个阈值应用于除数(TTTD)可变分块算法,这产生平均约4千字节(kB)的块。根据其他实现,可以使用其他分块算法。通常,分块算法可以提高隔离在连续备份内的相同块的可能性,其中,该块的绝对位置可能已经移动。
接下来,客户端应用134使用哈希(或散列)模块320来确定块318的相应的数字签名或散列324。例如,根据示例性实现,哈希模块320可以针对每个块318生成SHA-1散列,但是根据其他实现,可以使用其他散列。通常,给定散列324用作关联块318的合理的特定“指纹(fingerprint)”;并且平均来说,与块318的大小相比,散列324的大小可以相对小(例如,块318的大小的约0.5%)。因此,散列324允许相对容易的低带宽的方式来识别关联块318。根据示例性实现,散列模块320确定用于相应块318的散列324,并且向客户端应用134的竞价(或竞价)模块330发送该散列324的此列表或使其可用。
根据示例性实现,竞价模块330针对合作对象向组成员170中的每一个传送334散列的稀疏索引。换言之,根据一些实现,竞价模块330向组成员170传送散列324的样本的统计上代表集合。图3图示了接收散列的稀疏索引的组成员170的一个这样的示例。
应当注意,根据一些实现,竞价模块330可以向每个组成员170传送给定数据段314的所有散列324。然而,根据示例性实现,用于匹配的单个相对大的散列列表可能是不实际的。在这方面,用于每个4kB平均大小的块的20字节的SHA-1散列是指用于每个一太字节(TB)的独特数据的5吉字节(GB)的存储器。相反,稀疏散列索引334包含统计上选择的散列的子集,使得这些散列充分表示块318,同时共同具有明显更小的大小(例如,所有散列的大小的1%到10%之间)。当散列的一部分被传送到用于匹配的给定的组成员170时,该组成员170确定匹配的相应散列的数目。
以该方式,根据一些实现,每个组成员170如下评估匹配并且对稀疏索引进行响应。组成员170包括竞价匹配(或匹配)模块370,其将稀疏索引与存储在组成员170中的数据的哈希的列表作比较。成功的稀疏索引匹配可以被称为“钩(hook)”,因为在例如组成员170的随机存取存储器(RAM)中保持稀疏索引,并且这样,稀疏索引查找在系统资源方面可能相对“便宜”。
如果该竞价匹配模块370识别了稀疏索引中的一个或多个钩,则模块370可以然后根据示例性实现来执行更具体的匹配,涉及读取由稀疏索引钩所指向的磁盘上清单。因为该后一步骤涉及相当缓慢的磁盘寻道,所以这可能是相对昂贵的过程。为了减轻磁盘寻道的使用,根据示例性实现,在存在很多钩时应用某种停止条件的情况下,基于将被找到的期望数目的额外匹配以某个优先顺序来读取磁盘上清单,以相对小的取消重复减小为代价来保持性能。
通过向客户端应用134提供查询稀疏散列索引的方法,该稀疏索引钩计数可以用于确定匹配块318的给定组成员170的概率。
除了稀疏索引钩计数,诸如存储容量和存储利用率(作为两个示例)的关于组成员170的其他信息可以被向回传送到客户端应用134作为竞价响应的一部分。然后,该信息可以由客户端应用134使用以作出关于为了路由用于段314的所有剩余的散列和后续取消重复数据的目的而要选择哪个组成员170的判定。
因此,根据一些实现,竞价涉及客户端应用134的竞价模块330向每个组成员170的竞价匹配模块370传送334散列的稀疏索引。然后,竞价匹配模块370向客户端应用134的路由器(或路由)模块340传送竞价响应374。作为示例,根据示例性实现,路由器模块340可以从竞价匹配模块370接收374一个或多个匹配。路由器模块340基于来自组成员170的类似响应来确定哪个组成员170要接收段314的取消重复的数据块318。
在路由器模块340已经选择了特定组成员170(对于该示例,假定是图3的组成员170)之后,路由器模块340向组成员170的匹配(匹配)模块380传送或发送342数据段314的块318的所有剩余散列。匹配模块380将块318的所有散列与存储在组成员170上的数据的相应散列作比较。匹配模块380向客户端应用134的压缩(或压缩)模块344传送384该匹配。以该方式,匹配向压缩模块344通知独特块318,即没有存储在组成员170上的块318。作为响应,压缩模块344执行取消重复以向组成员170的存储模块390传送或发送350独特块(例如,改变的数据块),该存储模块390向组成员170提交新的块。
常规竞价的目的是将类似的数据块路由到同一组成员170。应当注意,每当作出改变组成员170的判定时,路由到新的组成员的段可能对整个取消重复比率具有负面影响。这是由于数据段边界不与取消重复段边界对齐的相对高的可能性而导致的,并且因此,一些重复数据可能被再次存储。因此,在以下进一步描述的过程中,数据流的碎片可以是以最小化取消重复比率的减少的方式进行控制的某物。
图4描绘了当在竞价过程中没有选择给定组成员170时发生的传送的图示400。在这方面,响应于稀疏散列索引的传送334,组成员170的竞价匹配模块370传送竞价响应374,其对于本实施例不是成功的竞价。因此,对于该示例,路由器模块340向组成员170的跳过模块420发送或传送410跳过消息,由此向组成员170通知针对该具体数据段314成员170的略过。
结合图1参考图5,当备份应用132创建给定的合作对象500时,客户端应用134使得相应对象520(对象520-1、520-2、520-3、520-4,在图5中作为示例示出)被存储在相应的组成员170上。合作对象500的数据项318在组成员170当中分布以形成相应的对象520。例如,在合作对象500中,合作对象500的数据项318-A对应于对象520-1的数据项318-A,而合作对象500的数据项318-F对应于对象520-4的数据项318-F。如从图5中可以看出,根据示例性实现,当使本地排序取决于独立组成员170时,用于给定合作对象的数据可以以不同于数据出现在合作对象中的顺序的顺序而在给定组成员170上分布。如图5中所示,每个对象520可以包含不是合作存储的一部分的数据550。因此,组成员170可以跟踪包含用于给定合作存储的数据的区域以及用于不是给定合作存储的一部分的数据的区域。
因此,参考图6,根据示例性实现,技术600包括向多个组成员或存储传送(框602)块散列(例如块散列的列表),并且从存储装置接收(框604)指示存储中的关联块的分布的响应。如上所述,在示例性实现中,该列表可以是散列的稀疏列表。至少部分地基于该响应来选择(框606)存储,并且根据框608,将取消重复数据传送到所选择的存储。
根据一些实现,为了针对成功竞价考虑组成员170,组成员170首先满足匹配高于特定阈值的特定数目的关键散列的标准。以该方式,根据示例性实现,这样的技术默认为将数据路由到“粘性”组成员,即,路由“粘”到“粘性组成员”,直至超过该阈值。当匹配没有高于特定阈值时,通过针对若干数据段314与组成员170一起保持或相粘,主要具有新数据(本文称为“播种数据”)的很多时间连续的段被路由到同一组成员170。向同一组成员170播种大的连续区域可以有助于提高未来备份中的总体取消重复比率。这是因为,对于未来备份,备份流内容可能会发生一定程度的变化,并且因此段可能被不同地对准。
因此,如果针对每个数据段314,段被播种到不同的组成员170,则后续备份流中的段314可以具有跨两个组成员170的块。在相对长的连续粘性区域的情况下,取消重复可能在区域的结束处而不是在该区域内的每个段边界处丢失(因为该区域中的所有数据都被存储在同一组成员170中)。因此,如果在备份中将所有数据路由到单个组成员170,则可以期望高的取消重复比率。然而,这样的技术可能对在组成员170中的容量平衡没有帮助。因此,粘性阈值可以被选择为小得足以能够“粘到”另一组成员170,通常足以在所有组成员170中播种,但是粘性阈值大得足以保持未来的取消重复数据比率相对高。
因此,参考图7,根据示例性实现,通常可以采用技术700。根据技术700,向多个组成员170或存储传送(框702)块散列的列表。从存储接收(框704)响应,其中,每个响应指示多个匹配。该技术包括至少部分地基于数目的匹配与阈值的比较来选择(框706)存储,阈值诸如是上述“粘性阈值”。然后,将取消重复数据传送(框708)到所选择的存储。
取消重复可以在从同一系统的备份之间执行,而不是在系统之间执行,使得当首先备份系统时,可以存储来自该系统的大量块数据。第一备份在本文中被称为“播种”,并且在本文中初始数据被称为“播种数据”。为了避免播种期间的过多区域碎片的目的,可以使用“粘性路由”技术。通常,粘性路由尝试在相对大的连续区域(例如,大约几十吉字节(GB)的区域)中对在组成员170中播种数据加条纹,但是如果组成员170可以使其取消重复得足够好,则该技术仍然将数据段路由到其他组成员170。
对于给定的数据段竞价,如果没有组成员170具有高于给定阈值(本文称为“竞价阈值”)的钩匹配计数,则不存在“竞价获胜者”。该阈值可以是固定阈值或者可以是基于在备份期间获得的反馈变化的阈值。如果没有竞价获胜者,则相应的数据段包含播种数据,使得数据段被路由到当前播种组成员170。
根据一些实现,在备份开始时,客户端应用134可以使用随机或伪随机技术来选择初始播种组成员170。这可以避免创建合作存储并且同时开始的所有第一晚的备份被播种到同一组成员170的情况。在写入固定量的数据之后,可以基于容量利用率来选择新的播种组成员170(例如,具有最多自由磁盘空间的组成员170)。当应用134存储播种数据时,该技术平衡组成员170中的磁盘利用率。
参考图8A,根据示例性实现的技术800包括:向至少一些存储传送(框802)与对象相关联的数据的样本的签名;以及响应于该传送,接收(框804)指示存储在各个存储上的样本的数目的响应。该技术800进一步包括至少部分地基于存储上的数据存储的数目和模式来调节(框806)与第一数据相关联的取消重复数据被存储在哪个存储上。
作为更具体的示例,图8B描绘了根据示例性实现的技术850。根据技术850,向多个组成员或存储传送(框852)块散列的列表;并且从存储接收(框854)响应,其中每个响应指示匹配的数目。该技术850包括确定(判断框860)是否已经超过竞价阈值。如果不是,则该数据段是播种数据,并且向当前播种组成员170传送(框862)数据段。
否则,如果作出已经超过了竞价阈值的确定(判定框860),则该技术850包括确定(判定框864)当前竞价获胜者是否是与紧接在前面的竞价获胜者相同的竞价获胜者。如果是并且如果竞价获胜者是除了当前选择的组成员以外的组成员(如判定框868中确定的),则根据框870,重新路由发生并且该数据段被路由到当前竞价获胜者。否则,如果在判定框864中作出了当前竞价与先前竞价获胜者不同的确定,或者如果根据判定框868作出重新路由不发生的确定,则根据框866,在不重新路由的情况下向当前选择的组成员传送该数据。
根据其他实现,客户端应用134可以至少部分地基于未来竞价活动的预测来选择性地暂停竞价(和散列的传送)。例如,如果针对这些数据段314作出竞价,则客户端应用134可以预测被路由到不同组成员170的“通量”的区域何时存在,其中时间连续数据段314将结束。根据示例性实现,当应用134预测通量的区域时,客户端应用134可以临时暂停竞价过程。
例如,根据示例性实现,可以基于当前备份会话的历史窗口中的可测量因子的数目和/或统计来预测通量的区域。因素可以包括对这样的标准的测量,如竞价获胜者先前已经改变的次数、竞价失败者看到的匹配的数目、竞价获胜者看到的匹配的数目以及写入当前竞价获胜者的数据量。使用从这些测量得到的计算的概率,客户端应用134可以选择不执行对特定数目的时间连续数据段314的竞价操作,并且替代地继续将数据段314路由到当前获胜者,而不执行对这些段314的竞价。
根据示例性实现,使用应用134的客户端侧代码库来在命令或数据会话的基础上执行对合作对象的所有访问。可以对客户端库给予合作存储中的任何组成员170的地址,与之连接并且找到所有其他组成员170的地址。客户端库还可以连接到其他组成员170,由此建立命令或数据会话。然而,所有的组成员可能不可用于给定会话。可以向回向客户端应用库的用户报告在该会话中连接成功连接到的组成员170,使得用户可以判定用户是否想要继续该会话。
客户端应用134用作存储在组成170中/从组成员170检索的信息的聚合器。通过允许建立与组成员170的子集的会话,通过视图(经由例如图形用户界面(GUI)136(参见图1))呈现客户端应用134库的用户,该视图具体示出了组成员170中可用的信息的子集。
例如,当列出给定合作对象时,可能已经在组成员A、B和C中创建(并且分开)了合作对象,因为该组成员已经例如是在开放命令会话时可用的组成员。如果对组成员B、C和D开放的命令会话上的该合作对象的列表被创建,则可用于组成员B和C中的对象的信息被聚合并且被呈现给客户端库,其中不呈现用于组成员A的信息。
当列出合作对象时,客户端应用134报告组成员被创建在并且最后被修改在的哪些组成员170上。如果对其开放当前命令会话的组成员170的集合与对象被创建的集合和最后对象被修改的集合不同,则客户端应用134向用户突出显示被呈现对象的不完整视图。通过该信息,用户可以判定如何解释该列表。
因此,参考图9,根据示例性实现,技术900包括尝试(框902)开放与所有下述组成员170的传送,该组成员170响应于对访问对象的请求来统一地存储用于给定分布式合作对象的数据。如果作出在对象被创建和修改的会话中不存在所有组成员170的判定(判定框904),则该技术900包括提示(框906)不存在的组成员(多个)。然后,根据框908来检索对合作对象可用的块。如果作出劣化的信息被报告的确定(判定框910),则技术900包括报告(框912)关于检索的数据的劣化状态的信息,包括识别对象如何是不完整的。通过该劣化信息(如果有的话),根据框914来报告结果。
根据示例性实现,客户端应用134在聚合多个合作对象的列表时还使用该信息。挑战涉及如何通过将来自组成员170的结果的页面缝合在一起来向用户呈现列出结果的页面,有效地作为加窗的多路径合并。为了以有效的方式执行这一点,客户端应用134最小化针对向用户呈现的每个结果页面从每个组成员检索到的结果页面的数目。
具体地,客户端应用134根据示例性实现来使用其从每个组成员170接收到的以下三项信息:1.)针对每个合作对象(或合作数据工具)的组范围的独特标识(ID),使得从每个组成员170返回的记录与相同的合作实体相关(但是标识符不一定具有任何暗示的时间顺序);2.)每组成员的独特标识符,这是基于在组成员上创建的合作实体的划分的创建时间来排序的(例如,本地组成员数据库行标识);以及3.)在该组成员上创建的合作实体的划分的创建时间戳。应当注意,在严格足以允许使用时间戳的容限内,组成员170上的时钟被同步或者被时间对准。例如,根据一些实现,可以使用客户端的网络时间协议(NTP)同步。
无序组范围独特标识允许客户端应用134识别在组成员170中匹配的记录,即识别“缝合点”。每组成员排序的独特标识符允许客户端应用134从每个组成员170中检索结果的下一页/前一页,并且因此,实现每个组成员170的向前/向后滑动窗口,这可以在多波合并操作中使用。创建时间戳允许客户端应用134判定客户端应用需要在多大程度上向下搜索每个组成员的结果以找到缝合点。
作为更具体的示例,图10描绘了从组成员1(经由列1011中描绘的页面)、组成员2(经由列1012中描绘的页面)和组成员3(经由列1014中描绘的页面)中检索的页面。来自组成员的结果在页面边界1030和1032处被分离。图10还描绘了结果的列1020。对于下面的示例,客户端应用134从每个组成员170中检索被计时的多达两个组成员对象的页面,并且在结果列1020中向用户返回被计时的两个合作对象的页面。
更具体地,为了返回结果(A,B)的第一页面,客户端应用134从组成员1读取一个结果页面,其包含前两个对象(按交叉组创建时间的顺序):A和B;从组成员2读取两个结果页面;并且从组成员3读取两个结果页面。对于该示例,合作对象B和C实际上是在相同时间从两个不同的客户端创建的;但是由于定时差异,相对于组成员2,在组成员1上以不同的顺序创建合作对象B和C。为此,为了确定用于合作对象B的记录是否可以被找到的目的,从组成员2读取额外的结果页面。当记录组成员1在其中具有关于合作对象在哪些组成员上被创建的信息时,客户端应用134知道存在用于合作对象B的记录。此外,客户端应用134知道,来自组成员2的返回结果的第一页面仍然在创建的合作对象周围,所以客户端应用确定加载额外页面以找到其是实际的。
对于结果的第一页面,组成员3的结果不包括合作对象B的记录。为了返回结果(C,D)的第二页面,客户端应用从组成员1读取结果的一个其他页面,其包含接下来的两个对象:C和D。此外,对于该结果的第二页面,如果针对每个组成员170缓存两到三个页面,当针对对象C和D的信息在已经缓存的两个页面中可用时,不从组成员2读取其他页面。从这些缓存的结果,客户端应用134知道其无法找到用于组成员3的合作对象C或D的记录。
为了返回结果(E,F)的第三页面,客户端应用134从组成员1读取结果的另一页面,其包含接下来两个对象:E和F。客户端应用还从组成员2读取一个结果页面,其包含接下来的两个对象:E和F。当对象E在第一页面(缓存)中时,不针对组成员3检索其他结果页面。此外,客户端应用134知道其无法从用于组成员1的记录中的创建信息中找到用于组对象F的记录。
为了返回结果(X,Y)的第三页面,客户端应用134读取后面的内容,不从组成员1检索其他结果页面(即,已经达到末尾);不针对组成员2检索其他结果页面(即,已经达到末尾);并且从组成员3检索结果的另一页面,其包含接下来的两个对象:X和Y。
为了返回结果(Z)的第四页面的目的,客户端应用134读取后面的内容。没有来自组成员1的另一结果页面(即,已经到达末尾);没有来自组成员2的另一结果页面(即,已经到达末尾);以及来自组成员3的另一结果页面,其包含接下来的对象:Z。
根据示例性实现,针对每个合作对象创建和维护清单。通常,本文中称为“对象清单”的清单描述了在组成员当中存储的用于给定合作对象的数据的细节。以该方式,清单允许系统跟踪并且将分布的各个数据项整合成一个粘着合作对象。根据本文公开的示例性实现,该对象清单在组成员170当中分布。
更具体地,参考图11,根据示例性实现,技术1100包括:在多个组成员170或存储上存储(框1102)对象的取消重复数据,以及分布(框1104)清单,清单描述了存储当中的合作对象的存储。以该方式,对于每个存储,技术1100包括存储(框1106)用于清单的数据,该清单描述了在该存储上的块的存储。
与单个主清单不同,在组成员170当中分布对象清单可以有助于避免单点故障。换言之,通过单个清单,清单可能丢失或损坏,这可能使合作对象无用,不论底层数据对象的状态如何。然而,通过分布对象清单,每个组成员的对象清单(整体分布式对象清单的一部分)是完全自我描述的。换言之,每个组成员170具有其数据块适合于较大合作对象内的知识。通过以该方式存储分布式数据,在可以提高鲁棒性、冗余度和灵活性的同时,可以减小开销。
参考图12,根据示例性实现,通过分布存储在各个组成员170上的清单1240(图12中描绘为四个相应组成员170的示例的成员清单1240-1、1240-2、1240-3和1240-4)来创建主清单1200。每个成员清单1240进而包括条目,其中,每一个描述存储在该组成员上的关联合作对象的块。例如,对于图12的示例的组成员1,成员清单1240-1包含多个条目1244(在图12中作为示例示出的条目1244-1和1244-2),其描述了相应块的存储。继续该示例,组成员节点2、3和4分别存储相应条目1246、1248和1250。总的来说,条目1244、1246、1248和1250形成主清单1210的条目1220。
因此,如图12所示,主清单1210包括各种条目1220(在图12中作为特定示例示出的条目1220-1、1220-2、1220-3和1220-4),其对应于在组成员中分布的条目。
通常,每个条目(其中“条目”指存储在组成员上或作为成员清单1240的一部分收集的条目)包含四个信息字段:1.)第一字段,指定关联数据块驻留在合作对象中的位置;2.)第二字段,指定数据块驻留在成员对象中的位置;3.)第三字段,指示块的大小(例如,以字节为单位);和4.)第四字段,包含标识关联块被存储的特定组成员的数据。
因此,如图12所示,通过分布式主清单1200,每个组成员170包含成员清单1240,其仅描述了成员本地存储的块。
与主清单1210的给定条目1220相反,相应的成员清单条目包含较少的信息。例如,与主清单条目1220相比,当存储在组成员上的所有数据具有相同的节点标识符时,成员清单条目不标识节点。替代地,字段被添加到组成员的对象存储,描述了哪些组成员构成了合作对象的整个组。这具有允许组成员能够联系其他组成员中的任何一个以找出哪些组成员存储用于给定合作对象的数据的附加优点。另外,不存在成员清单条目中的成员偏移。在这方面,当其取决于关于如何存储其数据的组成员时,组成员仅使用合作偏移。
在写入操作期间,每个组成员170在其成员清单1240中记录其所拥有的数区域以及相应块驻留的位置。当重构用于具体读取操作的组触媒块时,可以使用竞价原理的推论。另一消息可以被添加到该协议,使得客户端应用134可以从每个组块中检索针对给定合作对象存储的数据块(例如,偏移和大小)。
因此,本文公开的方法联合组成员当中的给定合作对象的主清单以及用户数据,由此排除在其他位置的单个位置处的主清单的存储。联合的方法可以有助于使用较少的协议消息来用于读取操作,并且根据示例性实现,当清单与每个组成员170上的数据紧密耦合时,没有用于写入的其他消息。
此外,对象的主清单的丢失可能会导致整个对象的丢失,而独立成员清单的丢失可能仅导致对象的部分丢失。此外,本文描述的方法避免了增加冗余,因为冗余可能相对复杂。例如,冗余主清单将跟踪每个冗余块被存储的位置。而且,如果主清单被存储在多于一个的位置中,则每个清单将被彼此同步。考虑到清单副本中的一个被“损坏”的情形,在确定性地确定其他副本(多个)中的哪一个是“好的”副本(多个)中可能存在明显的挑战。如果主清单完全丢失或损坏,则可能无法对其重建。此外,从现有分布式对象添加或移除组成员可能具有挑战性。
一种用于提高存储的数据的冗余度的方法是将每个块存储在多于一个的组成员170中。使用竞价过程,客户端应用134可以选择存储前两个竞价(作为示例)而不是第一个。这意味着每个区域可以被多于一次地存储,并且总是在多于一个服务器110上,但是不利于整体取消重复。如果一个组成员170上的数据丢失,则仍然可以从其余组成员对象重建合作对象。对象的先前冗余度水平可以通过在足够冗余度内读回标识区域的其余组成员的清单并且然后向新的组成员对象写入量来恢复。使用该方法,冗余度可以通过相对小的关联系统开销来实现。
为了迁移的目的,最终用户可能希望将组成员170对象迁移到具有最终目标的不同节点,来将对象存储在不同的磁盘集合上,以释放原始节点150上的空间。通过分布式成员清单方法,组成员170上的对象的额外副本可以从作为迁移目标的新的组成员170迁移并且存储在其上。下一个步骤是更新参与该分布式对象的存储的组成员170的列表,以移除旧的组成员170并且添加新的组成员170。
最终用户可能想要添加或移除具体组成员。这些操作可以通过使用类似于上述的迁移的机制,并且通过运行来自一个或多个组成员的一个或多个数据写入作业;并且此外,更新所有节点当中的参与方的列表来执行。
如果客户端应用134针对冗余而将用户数据区域存储在多个组成员块中,这为客户端应用134提供了机会来基于每个组成员170在其对“对于此范围,你拥有哪些区域”消息的响应中返回服务器负载信息来选择可以从其读取用户数据的组成员170。
根据示例性实现,备份应用132可以控制通过相对低宽带的连接将数据从一个组成员170复制到另一组成员170。以该方式,根据示例性实现,每个组成员170包括复制作业引擎1310和客户端应用1320,如图13所示。每个组成员170上的复制作业引擎1310被构件为经由客户端应用1320其自己的实例来访问合作对象中的任何块。这允许在目的地合作存储不具有相同数目的组成员170或相同组成员中的任何一个作为原始组存储的情况下,组成员170中的任何一个执行对另一组成员170的复制操作。因此,如图13所示,给定组成员170上的给定复制作业引擎1310可以使用相对低带宽的连接1350来复制第一合作对象1370(存储在组成员170-1、170-2和170-3),以形成相应的不同组对象1372,如图13所示,其可能已经被存储在组成员170的不同分组(即,对于该示例,两个组成员170-4和170-5)。
为了避免在重复复制期间的数据的再混合的目的,根据一些实现,客户端应用134提供用于非混合读取和写入数据路径的应用程序接口(API)。以该方式,非混合读取包括为了获悉从何处读取数据的目的,从每个组成员读取与内部地处理获取区域信息的客户端应用的散列和独特块数据。非混合写入操作包括与内部地处理竞价和路由的客户端应用134匹配散列并且存储独特的块。
图14图示了涉及源客户端应用1410、关联复制作业引擎1420以及目标触媒应用1430的非混合副本1400。对于副本的每个部分(例如,10兆字节(MB)的选择),复制引擎1420从源客户端应用1400请求散列的清单,并且将这些散列发送1450到要匹配的目标1460。目标1460用请求其块数据的未匹配散列的列表来进行响应1470。然后,复制引擎1420从源客户端应用1435请求1480这些独特的块,接收1486未匹配的块,并且然后将其发送1488到目标1460以被存储。
虽然本文已经公开了有限数目的示例,但是可以从其中认识到许多修改和变化。期望所附权利要求涵盖所有这样的修改和变化。
Claims (14)
1.一种方法,包括:
由处理器将与对象的块相关联的多个哈希的子集传送到多个存储中的每个存储,其中所述每个存储要把哈希的子集与在所述存储中所存储的数据的哈希的列表相匹配并生成所匹配的哈希的计数值;
响应于所述传送,由所述处理器从所述存储中的每个存储接收所匹配的哈希的计数值;
由所述处理器基于从所述存储所接收的所匹配的哈希的计数值与阈值的比较来选择所述存储中的一个存储以存储与所述对象相关联的去重复数据;
由所述处理器通过使用所述多个哈希的剩余哈希利用所选择的存储执行去重复过程,以识别与所述对象相关联的去重复数据;以及
由所述处理器向所选择的存储传送与所述对象相关联的去重复数据以进行存储。
2.如权利要求1所述的方法,其中,利用所选择的存储执行去重复过程包括:
将所述多个哈希的剩余哈希发送到所选择的存储,其中所选择的存储将剩余哈希与存储在所选择的存储中的数据的哈希的列表相匹配并生成与在所选择的存储中所存储的哈希相匹配的哈希;
从所选择的存储接收匹配的哈希;
基于所匹配的哈希,把未存储在所选择的存储中的对象的块标识为去重复数据。
3.如权利要求1所述的方法,其中选择所述存储中的一个存储包括:
响应于确定所匹配的哈希的多个计数值超过阈值,确定其匹配的哈希的计数值超过阈值的所述存储中的一个存储是否与紧接的前一个选择的存储相同; 和
响应于确定其中一个存储与紧接的前一个所选择的存储相同,选择紧接的前一个所选择的存储作为当前所选择的存储以存储去重复数据。
4.如权利要求1所述的方法,其中选择所述存储中的一个存储包括:响应于确定从所述存储所接收的所匹配的哈希的计数值中的任何一个都不高于所述阈值,选择所述多个存储中的当前播种存储。
5.如权利要求1所述的方法,进一步包括:
向未被选择的存储中的每一个传送所述未被选择的存储将不接收去重复数据的指示。
6.一种系统,包括:
多个组成员,用于存储分布式的分组的对象;以及
客户端服务器,用于:
将与对象的块相关联的哈希的子集传送到多个组成员中的每个组成员,其中所述多个组成员中的每个组成员要把哈希的子集与在所述组成员中所存储的数据的哈希的列表相匹配并生成所匹配的哈希的计数值;
响应于所述传送,从所述多个组成员中的每个组成员接收所匹配的哈希的计数值;
基于所匹配的哈希的计数值与阈值的比较来选择所述多个组成员中的一个组成员以存储与所述对象相关联的去重复数据;
通过使用所述多个哈希的剩余哈希利用所选择的组成员执行去重复过程,以识别与所述对象相关联的去重复数据;以及
向所选择的组成员传送与所述对象相关联的去重复的数据以进行存储。
7.如权利要求6所述的系统,其中,所述哈希的子集指示所述对象的块。
8.如权利要求6所述的系统,其中,为了利用所选择的存储执行去重复过程,所述客户端服务器用于:
将所述多个哈希的剩余哈希发送到所选择的存储,其中所选择的存储将剩余哈希与存储在所选择的存储中的数据的哈希的列表相匹配并生成与在所选择的存储中所存储的哈希相匹配的哈希;
从所选择的存储接收匹配的哈希;
基于所匹配的哈希,把未存储在所选择的存储中的对象的块标识为去重复数据。
9.如权利要求6所述的系统,其中,至少一个组成员用于响应于未被选择而接收到组成员将不接收去重复数据的指示。
10.一种存储指令的非瞬时计算机可读存储介质,当计算机执行所述指令时,所述指令使得所述计算机:
将与对象的块相关联的哈希的子集传送到多个存储中的每个存储,其中所述多个存储中的每个存储要把哈希的子集与在所述存储中所存储的数据的哈希的列表相匹配并生成所匹配的哈希的计数值;
响应于所述传送,从所述多个存储中的每个存储接收所匹配的哈希的计数值;
至少基于所匹配的哈希的计数值与阈值的比较来选择所述存储中的一个存储以存储与所述对象相关联的去重复数据;
通过使用所述多个哈希的剩余哈希利用所选择的存储执行去重复过程,以识别与所述对象相关联的去重复数据;以及
向所选择的存储传送与所述对象相关联的去重复的数据以进行存储。
11.如权利要求10所述的非瞬时计算机可读存储 介质,其中,为了选择所述存储中的一个存储,所述指令可被执行以使得所述计算机:
响应于确定所匹配的哈希的多个计数值超过阈值,确定其匹配的哈希的计数值超过阈值的所述存储中的一个存储是否与紧接的前一个选择的存储相同; 和
响应于确定其中一个存储与紧接的前一个所选择的存储相同,选择紧接的前一个所选择的存储作为当前所选择的存储以存储去重复数据。
12.如权利要求11所述的非瞬时计算机可读存储 介质,其中,为了利用所选择的存储执行去重复过程,所述指令可被执行以使得所述计算机:
将所述多个哈希的剩余哈希发送到所选择的存储,其中所选择的存储将剩余哈希与存储在所选择的存储中的数据的哈希的列表相匹配并生成与在所选择的存储中所存储的哈希相匹配的哈希;
从所选择的存储接收匹配的哈希;
基于所匹配的哈希,把未存储在所选择的存储中的对象的块标识为去重复数据。
13.如权利要求10所述的非瞬时计算机可读存储 介质,其中所述指令可被执行以使得所述计算机:响应于确定从所述存储所接收的所匹配的哈希的计数值中的任何一个都不高于所述阈值,选择所述多个存储中的当前播种存储。
14.如权利要求10所述的非瞬时计算机可读存储 介质,其中所述指令可被执行以使得所述计算机:向未被选择的存储中的每一个传送所述未被选择的存储将不接收去重复数据的指示。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/041379 WO2014185918A1 (en) | 2013-05-16 | 2013-05-16 | Selecting a store for deduplicated data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105339929A CN105339929A (zh) | 2016-02-17 |
CN105339929B true CN105339929B (zh) | 2019-12-03 |
Family
ID=51898730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380076635.3A Expired - Fee Related CN105339929B (zh) | 2013-05-16 | 2013-05-16 | 选择用于取消重复数据的存储 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10592347B2 (zh) |
EP (1) | EP2997497B1 (zh) |
CN (1) | CN105339929B (zh) |
WO (1) | WO2014185918A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014185915A1 (en) | 2013-05-16 | 2014-11-20 | Hewlett-Packard Development Company, L.P. | Reporting degraded state of data retrieved for distributed object |
WO2014185918A1 (en) * | 2013-05-16 | 2014-11-20 | Hewlett-Packard Development Company, L.P. | Selecting a store for deduplicated data |
EP2997496B1 (en) | 2013-05-16 | 2022-01-19 | Hewlett Packard Enterprise Development LP | Selecting a store for deduplicated data |
US10083299B2 (en) * | 2015-12-16 | 2018-09-25 | Carbonite, Inc. | Systems and methods for automatic snapshotting of backups based on malicious modification detection |
US10574751B2 (en) * | 2016-03-22 | 2020-02-25 | International Business Machines Corporation | Identifying data for deduplication in a network storage environment |
US10795859B1 (en) | 2017-04-13 | 2020-10-06 | EMC IP Holding Company LLC | Micro-service based deduplication |
US10795860B1 (en) | 2017-04-13 | 2020-10-06 | EMC IP Holding Company LLC | WAN optimized micro-service based deduplication |
US10860212B1 (en) | 2017-07-21 | 2020-12-08 | EMC IP Holding Company LLC | Method or an apparatus to move perfect de-duplicated unique data from a source to destination storage tier |
US10936543B1 (en) | 2017-07-21 | 2021-03-02 | EMC IP Holding Company LLC | Metadata protected sparse block set for SSD cache space management |
US10949088B1 (en) | 2017-07-21 | 2021-03-16 | EMC IP Holding Company LLC | Method or an apparatus for having perfect deduplication, adapted for saving space in a deduplication file system |
US10459633B1 (en) | 2017-07-21 | 2019-10-29 | EMC IP Holding Company LLC | Method for efficient load balancing in virtual storage systems |
US11461269B2 (en) | 2017-07-21 | 2022-10-04 | EMC IP Holding Company | Metadata separated container format |
US11113153B2 (en) | 2017-07-27 | 2021-09-07 | EMC IP Holding Company LLC | Method and system for sharing pre-calculated fingerprints and data chunks amongst storage systems on a cloud local area network |
US10481813B1 (en) | 2017-07-28 | 2019-11-19 | EMC IP Holding Company LLC | Device and method for extending cache operational lifetime |
US10929382B1 (en) | 2017-07-31 | 2021-02-23 | EMC IP Holding Company LLC | Method and system to verify integrity of a portion of replicated data |
US11093453B1 (en) | 2017-08-31 | 2021-08-17 | EMC IP Holding Company LLC | System and method for asynchronous cleaning of data objects on cloud partition in a file system with deduplication |
US10592149B1 (en) * | 2017-10-06 | 2020-03-17 | EMC IP Holding Company LLC | Dynamic de-duplication methodologies for efficient resource utilization on de-duplication system |
US11308038B2 (en) * | 2018-06-22 | 2022-04-19 | Red Hat, Inc. | Copying container images |
US10592158B1 (en) | 2018-10-30 | 2020-03-17 | EMC IP Holding Company LLC | Method and system for transferring data to a target storage system using perfect hash functions |
US10713217B2 (en) | 2018-10-30 | 2020-07-14 | EMC IP Holding Company LLC | Method and system to managing persistent storage using perfect hashing |
US10977217B2 (en) | 2018-10-31 | 2021-04-13 | EMC IP Holding Company LLC | Method and system to efficiently recovering a consistent view of a file system image from an asynchronously remote system |
US10733158B1 (en) * | 2019-05-03 | 2020-08-04 | EMC IP Holding Company LLC | System and method for hash-based entropy calculation |
US10877931B1 (en) | 2019-09-12 | 2020-12-29 | Hewlett Packard Enterprise Development Lp | Backups of file system instances having subtrees |
US11803525B2 (en) | 2020-09-29 | 2023-10-31 | Hewlett Packard Enterprise Development Lp | Selection and movement of data between nodes of a distributed storage system |
Family Cites Families (151)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0720085A3 (en) | 1994-12-29 | 1997-08-27 | Ibm | Compression monitoring system for controlling physical memory area allocation in a logically mapped data memory |
US5805919A (en) | 1995-10-05 | 1998-09-08 | Micropolis Corporation | Method and system for interleaving the distribution of data segments from different logical volumes on a single physical drive |
US6526418B1 (en) | 1999-12-16 | 2003-02-25 | Livevault Corporation | Systems and methods for backing up data files |
US8156074B1 (en) | 2000-01-26 | 2012-04-10 | Synchronoss Technologies, Inc. | Data transfer and synchronization system |
WO2002033551A1 (en) | 2000-10-18 | 2002-04-25 | Tricord Systems, Inc. | Controller fault recovery system for a distributed file system |
US7827136B1 (en) | 2001-09-20 | 2010-11-02 | Emc Corporation | Management for replication of data stored in a data storage environment including a system and method for failover protection of software agents operating in the environment |
US7213158B2 (en) | 2002-06-28 | 2007-05-01 | Lenovo (Singapore) Pte. Ltd. | Distributed autonomic backup |
WO2004008348A1 (en) | 2002-07-16 | 2004-01-22 | Horn Bruce L | Computer system for automatic organization, indexing and viewing of information from multiple sources |
AU2003278779A1 (en) | 2002-09-10 | 2004-04-30 | Exagrid Systems, Inc. | Primary and remote data backup with nodal failover |
US7206934B2 (en) | 2002-09-26 | 2007-04-17 | Sun Microsystems, Inc. | Distributed indexing of identity information in a peer-to-peer network |
US7007044B1 (en) | 2002-12-26 | 2006-02-28 | Storage Technology Corporation | Storage backup system for backing up data written to a primary storage device to multiple virtual mirrors using a reconciliation process that reflects the changing state of the primary storage device over time |
US7610348B2 (en) | 2003-05-07 | 2009-10-27 | International Business Machines | Distributed file serving architecture system with metadata storage virtualization and data access at the data server connection speed |
US7577806B2 (en) | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Systems and methods for time dependent data storage and recovery |
US7200604B2 (en) | 2004-02-17 | 2007-04-03 | Hewlett-Packard Development Company, L.P. | Data de-duplication |
US20050240558A1 (en) | 2004-04-13 | 2005-10-27 | Reynaldo Gil | Virtual server operating on one or more client devices |
US7558012B2 (en) | 2004-05-28 | 2009-07-07 | Hitachi Global Storage Technologies Netherlands B.V. | Read/write channel embedded on-chip optimization |
US7269689B2 (en) | 2004-06-17 | 2007-09-11 | Hewlett-Packard Development Company, L.P. | System and method for sharing storage resources between multiple files |
US7299376B2 (en) | 2004-08-25 | 2007-11-20 | International Business Machines Corporation | Apparatus, system, and method for verifying backup data |
US7769709B2 (en) | 2004-09-09 | 2010-08-03 | Microsoft Corporation | Method, system, and apparatus for creating an archive routine for protecting data in a data protection system |
US7873782B2 (en) * | 2004-11-05 | 2011-01-18 | Data Robotics, Inc. | Filesystem-aware block storage system, apparatus, and method |
US9043639B2 (en) | 2004-11-05 | 2015-05-26 | Drobo, Inc. | Dynamically expandable and contractible fault-tolerant storage system with virtual hot spare |
GB2423218A (en) | 2005-02-03 | 2006-08-16 | Hewlett Packard Development Co | Data storage system read/write channel optimiser which compares measured metrics of read channel with desired nominal and adjusts channel in response |
US7987158B2 (en) | 2005-02-09 | 2011-07-26 | International Business Machines Corporation | Method, system and article of manufacture for metadata replication and restoration |
US7480238B2 (en) | 2005-04-14 | 2009-01-20 | International Business Machines Corporation | Dynamic packet training |
US7761875B2 (en) | 2005-06-10 | 2010-07-20 | Hewlett-Packard Development Company, L.P. | Weighted proportional-share scheduler that maintains fairness in allocating shares of a resource to competing consumers when weights assigned to the consumers change |
US7558859B2 (en) | 2005-10-17 | 2009-07-07 | Microsoft Corporation | Peer-to-peer auction based data distribution |
US8862841B2 (en) | 2006-04-25 | 2014-10-14 | Hewlett-Packard Development Company, L.P. | Method and system for scaleable, distributed, differential electronic-data backup and archiving |
US8543782B2 (en) | 2006-04-25 | 2013-09-24 | Hewlett-Packard Development Company, L.P. | Content-based, compression-enhancing routing in distributed, differential electronic-data storage systems |
US8190742B2 (en) * | 2006-04-25 | 2012-05-29 | Hewlett-Packard Development Company, L.P. | Distributed differential store with non-distributed objects and compression-enhancing data-object routing |
US7606845B2 (en) | 2006-07-13 | 2009-10-20 | International Business Machines Corporation | Apparatus, systems, and method for concurrent storage to an active data file storage pool, copy pool, and next pool |
JP4870495B2 (ja) | 2006-08-04 | 2012-02-08 | パナソニック株式会社 | データ送信装置 |
US7747584B1 (en) | 2006-08-22 | 2010-06-29 | Netapp, Inc. | System and method for enabling de-duplication in a storage system architecture |
CN100403271C (zh) | 2006-08-23 | 2008-07-16 | 华为技术有限公司 | 备份及恢复数据的方法 |
US20080052327A1 (en) | 2006-08-28 | 2008-02-28 | International Business Machines Corporation | Secondary Backup Replication Technique for Clusters |
US8510859B2 (en) | 2006-09-26 | 2013-08-13 | Intel Corporation | Methods and arrangements to launch trusted, co-existing environments |
GB2446169A (en) | 2006-12-01 | 2008-08-06 | David Irvine | Granular accessibility to data in a distributed and/or corporate network |
US7844581B2 (en) | 2006-12-01 | 2010-11-30 | Nec Laboratories America, Inc. | Methods and systems for data management using multiple selection criteria |
US7827192B2 (en) | 2006-12-29 | 2010-11-02 | Network Appliance, Inc. | Method and system for caching metadata of a storage system |
US7769971B2 (en) | 2007-03-29 | 2010-08-03 | Data Center Technologies | Replication and restoration of single-instance storage pools |
US7827137B2 (en) | 2007-04-19 | 2010-11-02 | Emc Corporation | Seeding replication |
US20080282047A1 (en) | 2007-05-08 | 2008-11-13 | Hitachi, Ltd. | Methods and apparatus to backup and restore data for virtualized storage area |
US8315984B2 (en) | 2007-05-22 | 2012-11-20 | Netapp, Inc. | System and method for on-the-fly elimination of redundant data |
US8099392B2 (en) | 2007-06-08 | 2012-01-17 | Apple Inc. | Electronic backup of applications |
US8060759B1 (en) | 2007-06-29 | 2011-11-15 | Emc Corporation | System and method of managing and optimizing power consumption in a storage system |
US20090063587A1 (en) | 2007-07-12 | 2009-03-05 | Jakob Holger | Method and system for function-specific time-configurable replication of data manipulating functions |
US20090019443A1 (en) | 2007-07-12 | 2009-01-15 | Jakob Holger | Method and system for function-specific time-configurable replication of data manipulating functions |
CN101809559B (zh) * | 2007-09-05 | 2013-10-16 | 伊姆西公司 | 在虚拟化服务器和虚拟化存储环境中的去重复 |
US7873878B2 (en) | 2007-09-24 | 2011-01-18 | International Business Machines Corporation | Data integrity validation in storage systems |
US8782368B2 (en) | 2007-10-25 | 2014-07-15 | Hewlett-Packard Development Company, L.P. | Storing chunks in containers |
US8099573B2 (en) | 2007-10-25 | 2012-01-17 | Hewlett-Packard Development Company, L.P. | Data processing apparatus and method of processing data |
US7870105B2 (en) * | 2007-11-20 | 2011-01-11 | Hitachi, Ltd. | Methods and apparatus for deduplication in storage system |
US20090164529A1 (en) | 2007-12-21 | 2009-06-25 | Mccain Greg | Efficient Backup of a File System Volume to an Online Server |
US7962452B2 (en) | 2007-12-28 | 2011-06-14 | International Business Machines Corporation | Data deduplication by separating data from meta data |
US7979670B2 (en) | 2008-01-24 | 2011-07-12 | Quantum Corporation | Methods and systems for vectored data de-duplication |
US8086565B2 (en) | 2008-02-18 | 2011-12-27 | Microsoft Corporation | File system watcher in the presence of different file systems |
US7539710B1 (en) | 2008-04-11 | 2009-05-26 | International Business Machines Corporation | Method of and system for deduplicating backed up data in a client-server environment |
WO2009131585A1 (en) | 2008-04-25 | 2009-10-29 | Hewlett-Packard Development Company, L.P. | Data processing apparatus and method of processing data |
US8515909B2 (en) | 2008-04-29 | 2013-08-20 | International Business Machines Corporation | Enhanced method and system for assuring integrity of deduplicated data |
US7934066B2 (en) | 2008-04-30 | 2011-04-26 | Netapp, Inc. | Extensible application backup system and method |
US8074049B2 (en) | 2008-08-26 | 2011-12-06 | Nine Technology, Llc | Online backup system with global two staged deduplication without using an indexing database |
US7992037B2 (en) | 2008-09-11 | 2011-08-02 | Nec Laboratories America, Inc. | Scalable secondary storage systems and methods |
US20100082700A1 (en) | 2008-09-22 | 2010-04-01 | Riverbed Technology, Inc. | Storage system for data virtualization and deduplication |
US20100088296A1 (en) | 2008-10-03 | 2010-04-08 | Netapp, Inc. | System and method for organizing data to facilitate data deduplication |
WO2010045262A1 (en) | 2008-10-14 | 2010-04-22 | Wanova Technologies, Ltd. | Storage-network de-duplication |
US8291183B2 (en) | 2009-01-15 | 2012-10-16 | Emc Corporation | Assisted mainframe data de-duplication |
US8108638B2 (en) | 2009-02-06 | 2012-01-31 | International Business Machines Corporation | Backup of deduplicated data |
US8346736B2 (en) | 2009-03-16 | 2013-01-01 | International Business Machines Corporation | Apparatus and method to deduplicate data |
US7979491B2 (en) | 2009-03-27 | 2011-07-12 | Hewlett-Packard Development Company, L.P. | Producing chunks from input data using a plurality of processing elements |
CN102378969B (zh) | 2009-03-30 | 2015-08-05 | 惠普开发有限公司 | 拷贝卷中存储的数据的去重复 |
US20100281077A1 (en) * | 2009-04-30 | 2010-11-04 | Mark David Lillibridge | Batching requests for accessing differential data stores |
US8635184B2 (en) | 2009-06-25 | 2014-01-21 | Emc Corporation | System and method for providing long-term storage for data |
US8612439B2 (en) * | 2009-06-30 | 2013-12-17 | Commvault Systems, Inc. | Performing data storage operations in a cloud storage environment, including searching, encryption and indexing |
DE102009031923A1 (de) | 2009-07-07 | 2011-01-13 | Sones Gmbh | Verfahren zum Verwalten von Datenobjekten |
GB2471715A (en) * | 2009-07-10 | 2011-01-12 | Hewlett Packard Development Co | Determining the data chunks to be used as seed data to restore a database, from manifests of chunks stored in a de-duplicated data chunk store. |
US9058298B2 (en) | 2009-07-16 | 2015-06-16 | International Business Machines Corporation | Integrated approach for deduplicating data in a distributed environment that involves a source and a target |
GB2472072B (en) | 2009-07-24 | 2013-10-16 | Hewlett Packard Development Co | Deduplication of encoded data |
WO2011014167A1 (en) | 2009-07-29 | 2011-02-03 | Hewlett-Packard Development Company, L.P. | Making a physical copy of data at a remote storage device |
US8037349B2 (en) | 2009-08-28 | 2011-10-11 | International Business Machines Corporation | Data replication based on capacity optimization |
US8572137B2 (en) | 2009-09-08 | 2013-10-29 | International Business Machines Corporation | Data de-duplication in a distributed network |
JP5508798B2 (ja) | 2009-09-29 | 2014-06-04 | 株式会社日立製作所 | クラスタを考慮してレプリケーションを管理する管理方法及びシステム |
US8321648B2 (en) | 2009-10-26 | 2012-11-27 | Netapp, Inc | Use of similarity hash to route data for improved deduplication in a storage server cluster |
EP2494453A1 (en) | 2009-10-26 | 2012-09-05 | Hewlett-Packard Development Company, L.P. | Sparse index bidding and auction based storage |
US8311964B1 (en) | 2009-11-12 | 2012-11-13 | Symantec Corporation | Progressive sampling for deduplication indexing |
KR100985169B1 (ko) * | 2009-11-23 | 2010-10-05 | (주)피스페이스 | 분산 저장 시스템에서 파일의 중복을 제거하는 장치 및 방법 |
US8751448B1 (en) | 2009-12-11 | 2014-06-10 | Emc Corporation | State-based directing of segments in a multinode deduplicated storage system |
US8694469B2 (en) | 2009-12-28 | 2014-04-08 | Riverbed Technology, Inc. | Cloud synthetic backups |
US8281105B2 (en) | 2010-01-20 | 2012-10-02 | Hitachi, Ltd. | I/O conversion method and apparatus for storage system |
US8447741B2 (en) | 2010-01-25 | 2013-05-21 | Sepaton, Inc. | System and method for providing data driven de-duplication services |
US8402250B1 (en) | 2010-02-03 | 2013-03-19 | Applied Micro Circuits Corporation | Distributed file system with client-side deduplication capacity |
US8732133B2 (en) * | 2010-03-16 | 2014-05-20 | Commvault Systems, Inc. | Extensible data deduplication system and method |
US8442942B2 (en) | 2010-03-25 | 2013-05-14 | Andrew C. Leppard | Combining hash-based duplication with sub-block differencing to deduplicate data |
US8250325B2 (en) | 2010-04-01 | 2012-08-21 | Oracle International Corporation | Data deduplication dictionary system |
CN101820426B (zh) | 2010-04-22 | 2012-05-23 | 华中科技大学 | 一种在线备份服务软件中的数据压缩方法 |
US8306948B2 (en) | 2010-05-03 | 2012-11-06 | Panzura, Inc. | Global deduplication file system |
US8340039B2 (en) | 2010-05-04 | 2012-12-25 | International Business Machines Corporation | Deduplicated data processing congestion control |
US8935487B2 (en) * | 2010-05-05 | 2015-01-13 | Microsoft Corporation | Fast and low-RAM-footprint indexing for data deduplication |
US9401967B2 (en) * | 2010-06-09 | 2016-07-26 | Brocade Communications Systems, Inc. | Inline wire speed deduplication system |
US8694703B2 (en) | 2010-06-09 | 2014-04-08 | Brocade Communications Systems, Inc. | Hardware-accelerated lossless data compression |
WO2011159322A1 (en) | 2010-06-18 | 2011-12-22 | Hewlett-Packard Development Company, L.P. | Data deduplication |
US9678688B2 (en) | 2010-07-16 | 2017-06-13 | EMC IP Holding Company LLC | System and method for data deduplication for disk storage subsystems |
GB2470497B (en) | 2010-07-19 | 2011-06-15 | Quantum Corp | Collaborative, distributed, data de-duplication |
US8397080B2 (en) | 2010-07-29 | 2013-03-12 | Industrial Technology Research Institute | Scalable segment-based data de-duplication system and method for incremental backups |
US9569134B2 (en) | 2010-08-23 | 2017-02-14 | Quantum Corporation | Sequential access storage and data de-duplication |
CN101908077B (zh) | 2010-08-27 | 2012-11-21 | 华中科技大学 | 一种适用于云备份的重复数据删除方法 |
WO2012032727A1 (en) * | 2010-09-09 | 2012-03-15 | Nec Corporation | Storage system |
US8335771B1 (en) | 2010-09-29 | 2012-12-18 | Emc Corporation | Storage array snapshots for logged access replication in a continuous data protection system |
US8578109B2 (en) | 2010-09-30 | 2013-11-05 | Commvault Systems, Inc. | Systems and methods for retaining and using data block signatures in data protection operations |
KR101429956B1 (ko) | 2010-10-28 | 2014-08-14 | 에스케이텔레콤 주식회사 | 가상 nas를 이용한 클라우드 스토리지 서버, 시스템 및 방법 |
US8280860B2 (en) * | 2010-11-15 | 2012-10-02 | Quantum Corporation | Method for increasing deduplication speed on data streams fragmented by shuffling |
US8788769B2 (en) | 2010-11-16 | 2014-07-22 | Actifio, Inc. | System and method for performing backup or restore operations utilizing difference information and timeline state information |
US8402004B2 (en) | 2010-11-16 | 2013-03-19 | Actifio, Inc. | System and method for creating deduplicated copies of data by tracking temporal relationships among copies and by ingesting difference data |
US8299944B2 (en) | 2010-11-16 | 2012-10-30 | Actifio, Inc. | System and method for creating deduplicated copies of data storing non-lossy encodings of data directly in a content addressable store |
US10394757B2 (en) | 2010-11-18 | 2019-08-27 | Microsoft Technology Licensing, Llc | Scalable chunk store for data deduplication |
US9020900B2 (en) * | 2010-12-14 | 2015-04-28 | Commvault Systems, Inc. | Distributed deduplicated storage system |
US8364641B2 (en) | 2010-12-15 | 2013-01-29 | International Business Machines Corporation | Method and system for deduplicating data |
US20120159098A1 (en) | 2010-12-17 | 2012-06-21 | Microsoft Corporation | Garbage collection and hotspots relief for a data deduplication chunk store |
KR20120072909A (ko) * | 2010-12-24 | 2012-07-04 | 주식회사 케이티 | 내용 기반 중복 방지 기능을 가지는 분산 저장 시스템 및 그 오브젝트 저장 방법 및 컴퓨터에 의하여 독출가능한 저장 매체 |
US9639543B2 (en) * | 2010-12-28 | 2017-05-02 | Microsoft Technology Licensing, Llc | Adaptive index for data deduplication |
US9122639B2 (en) | 2011-01-25 | 2015-09-01 | Sepaton, Inc. | Detection and deduplication of backup sets exhibiting poor locality |
US8589406B2 (en) | 2011-03-03 | 2013-11-19 | Hewlett-Packard Development Company, L.P. | Deduplication while rebuilding indexes |
US9823981B2 (en) | 2011-03-11 | 2017-11-21 | Microsoft Technology Licensing, Llc | Backup and restore strategies for data deduplication |
US8442952B1 (en) * | 2011-03-30 | 2013-05-14 | Emc Corporation | Recovering in deduplication systems |
US10210169B2 (en) | 2011-03-31 | 2019-02-19 | EMC IP Holding Company LLC | System and method for verifying consistent points in file systems |
US9916258B2 (en) | 2011-03-31 | 2018-03-13 | EMC IP Holding Company LLC | Resource efficient scale-out file systems |
CN108664555A (zh) | 2011-06-14 | 2018-10-16 | 慧与发展有限责任合伙企业 | 分布式文件系统中的去重复 |
US8930307B2 (en) | 2011-09-30 | 2015-01-06 | Pure Storage, Inc. | Method for removing duplicate data from a storage array |
WO2013027231A1 (en) | 2011-08-19 | 2013-02-28 | Hitachi, Ltd. | Backup deduplication storage apparatus and additional data writing method |
US8799467B2 (en) | 2011-09-09 | 2014-08-05 | Microsoft Corporation | Storage and communication de-duplication |
US20130311434A1 (en) * | 2011-11-17 | 2013-11-21 | Marc T. Jones | Method, apparatus and system for data deduplication |
US9703796B2 (en) * | 2011-12-06 | 2017-07-11 | Brocade Communications Systems, Inc. | Shared dictionary between devices |
EP2810171B1 (en) | 2012-02-02 | 2019-07-03 | Hewlett-Packard Enterprise Development LP | Systems and methods for data chunk deduplication |
CN104081370A (zh) | 2012-03-15 | 2014-10-01 | 惠普发展公司,有限责任合伙企业 | 访问和复制备份数据对象 |
US9779103B2 (en) * | 2012-04-23 | 2017-10-03 | International Business Machines Corporation | Preserving redundancy in data deduplication systems |
US20150066877A1 (en) * | 2012-05-01 | 2015-03-05 | Mark D. Lillibridge | Segment combining for deduplication |
WO2013165389A1 (en) | 2012-05-01 | 2013-11-07 | Hewlett-Packard Development Company, L.P. | Determining segment boundaries for deduplication |
KR20150021117A (ko) * | 2012-06-18 | 2015-02-27 | 액티피오 인크. | 강화형 데이터 관리 가상화 시스템 |
US9003162B2 (en) * | 2012-06-20 | 2015-04-07 | Microsoft Technology Licensing, Llc | Structuring storage based on latch-free B-trees |
JP5925968B2 (ja) * | 2012-09-19 | 2016-05-25 | ヒタチ データ システムズ エンジニアリング ユーケー リミテッドHitachi Data Systems Engineering Uk Limited | ファイルストレージシステムにおけるチェックポイントを用いて重複排除を管理するシステムおよび方法 |
US9256622B2 (en) * | 2012-12-21 | 2016-02-09 | Commvault Systems, Inc. | Systems and methods to confirm replication data accuracy for data backup in data storage systems |
US9134914B1 (en) | 2012-12-27 | 2015-09-15 | Emc Corporation | Deduplication |
US9317218B1 (en) * | 2013-02-08 | 2016-04-19 | Emc Corporation | Memory efficient sanitization of a deduplicated storage system using a perfect hash function |
US20140244604A1 (en) * | 2013-02-28 | 2014-08-28 | Microsoft Corporation | Predicting data compressibility using data entropy estimation |
US20140281587A1 (en) * | 2013-03-14 | 2014-09-18 | Ologn Technologies Ag | Systems, methods and apparatuses for using a secure non-volatile storage with a computer processor |
WO2014155653A1 (ja) * | 2013-03-29 | 2014-10-02 | 株式会社日立製作所 | データ重複検出システムおよびデータ重複検出システムの制御方法 |
EP2997496B1 (en) | 2013-05-16 | 2022-01-19 | Hewlett Packard Enterprise Development LP | Selecting a store for deduplicated data |
WO2014185918A1 (en) | 2013-05-16 | 2014-11-20 | Hewlett-Packard Development Company, L.P. | Selecting a store for deduplicated data |
CN105324757A (zh) | 2013-05-16 | 2016-02-10 | 惠普发展公司,有限责任合伙企业 | 具有分布式清单的去复制的数据存储系统 |
WO2014185915A1 (en) | 2013-05-16 | 2014-11-20 | Hewlett-Packard Development Company, L.P. | Reporting degraded state of data retrieved for distributed object |
GB2514555A (en) * | 2013-05-28 | 2014-12-03 | Ibm | Deduplication for a storage system |
US9268806B1 (en) * | 2013-07-26 | 2016-02-23 | Google Inc. | Efficient reference counting in content addressable storage |
US10210170B2 (en) * | 2017-01-28 | 2019-02-19 | Microsoft Technology Licensing, Llc | Chunk storage deduplication using graph structures |
-
2013
- 2013-05-16 WO PCT/US2013/041379 patent/WO2014185918A1/en active Application Filing
- 2013-05-16 EP EP13884582.1A patent/EP2997497B1/en active Active
- 2013-05-16 CN CN201380076635.3A patent/CN105339929B/zh not_active Expired - Fee Related
- 2013-05-16 US US14/787,086 patent/US10592347B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP2997497B1 (en) | 2021-10-27 |
WO2014185918A1 (en) | 2014-11-20 |
CN105339929A (zh) | 2016-02-17 |
US20160077924A1 (en) | 2016-03-17 |
EP2997497A4 (en) | 2017-03-22 |
EP2997497A1 (en) | 2016-03-23 |
US10592347B2 (en) | 2020-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105339929B (zh) | 选择用于取消重复数据的存储 | |
CN105324765B (zh) | 选择用于去重复数据的存储区 | |
US11847336B1 (en) | Efficient replication using metadata | |
US20230359644A1 (en) | Cloud-based replication to cloud-external systems | |
US20160170657A1 (en) | Deduplicated data storage system having distributed manifest | |
JP5878548B2 (ja) | 重複排除ストレージ・システム、その内部の合成バックアップを容易にする方法、及び、プログラム | |
EP2784675B1 (en) | Method, device and system for data reconstruction | |
US8712963B1 (en) | Method and apparatus for content-aware resizing of data chunks for replication | |
US8214334B2 (en) | Systems and methods for distributed system scanning | |
US10872017B2 (en) | Restoring a file system object | |
CN110431542A (zh) | 管理存储网络中的i/o操作 | |
US8135918B1 (en) | Data de-duplication for iSCSI | |
US10210188B2 (en) | Multi-tiered data storage in a deduplication system | |
CN109313538A (zh) | 内联去重 | |
US20150032696A1 (en) | Regulating a replication operation | |
US20170199893A1 (en) | Storing data deduplication metadata in a grid of processors | |
CN105359107B (zh) | 报告针对分布式对象取回的数据的降级状态 | |
CN110413444A (zh) | 实现存储卷的一致性组的快照集 | |
CN104899161A (zh) | 一种基于云存储环境的连续数据保护的缓存方法 | |
JP6119327B2 (ja) | 重複データ管理装置、データ転送制御装置、データ転送制御システム、重複データ管理方法、データ転送制御方法、および、コンピュータ・プログラム | |
CN109213746A (zh) | Pb级历史数据和在线数据的实时计算的可视化建模方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20161230 Address after: Texas, USA Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT L.P. Address before: Texas, USA Applicant before: HEWLETT-PACKARD DEVELOPMENT Co.,L.P. |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20191203 |
|
CF01 | Termination of patent right due to non-payment of annual fee |