CN101707884A - 播种复制 - Google Patents
播种复制 Download PDFInfo
- Publication number
- CN101707884A CN101707884A CN200880012226A CN200880012226A CN101707884A CN 101707884 A CN101707884 A CN 101707884A CN 200880012226 A CN200880012226 A CN 200880012226A CN 200880012226 A CN200880012226 A CN 200880012226A CN 101707884 A CN101707884 A CN 101707884A
- Authority
- CN
- China
- Prior art keywords
- section
- data structure
- stored
- duplicate
- candidate segment
- 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
- 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/178—Techniques for file synchronisation in file systems
-
- 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/18—File system types
- G06F16/182—Distributed file systems
- G06F16/184—Distributed file systems implemented as replicated file system
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种播种复制方法。选择存储在重复删除的存储***上要被复制的一个或多个而非所有文件。确定由所选择的一个或多个而非所有文件所涉及的一个或多个段。创建用于指示至少所述一个或多个段要被复制的数据结构。如果至少部分地基于所述数据结构的指示指示了存储在所述重复删除存储***上的候选段要被复制,则复制所述候选段。
Description
本申请要求于2007年4月19日提交的、题目为SEEDINGREPLICATION(播种复制)的美国临时专利申请号60/925,624(代理人文案号DDOMP022+)的优先权,为了所有目的在此将其引入以供参考。
背景技术
副本***(replica system)存储与源***(originating system)相同的数据或相同的数据的一部分。副本***可以被用于当在源***中的数据损坏或丢失时恢复数据。为了高效存储,副本***和源***都可以是重复删除***(deduplicating system),在该重复删除***中,进入数据被分成段,并且如果该段已经存储在该***中,则存储对该已存储段的引用,而不是再次存储该段。重复删除典型地在该***存储数据所需要的空间量上导致了相当大的(例如,10×)减少。
当首先开始从一个***到另一个的复制时,如果副本是存储与源***相同的数据的全部,那么任务是明确的:从头至尾传输所有的数据。由于仅使得文件重建能够实现的引用和被重复删除的段需要被发送,所以对于重复删除***来说这是高效的。然而,如果副本是只存储起源者***(originator system)上数据的一部分,那么所存储的段中的哪些需要被发送给副本就不是显而易见的。一种简单的解决方案是匆匆查阅针对要被存储在副本上的那部分数据的段的引用列表,并且询问副本***涉及的段是否已经被存储。如果该段还未存储到副本***上,于是该段才会被传送。然而,对于列表中的每个引用而言这需要来回流量(traffic),以及对于段的每个引用而言这需要由副本***来检查。通过重复删除,可能有比实际数据段多很多倍的这样的引用。能够在不产生流量和检查段的每个引用的情况下,对存储在重复删除的***中的部分数据进行种子复制会是有益的。
当将存储在一个重复删除的***上的部分数据一次性拷贝到第二重复删除的***上时存在相似的情形。正被拷贝的那部分数据所引用的所有段都需要被发送到该第二***。然而,如上所述,检查每个引用以看看相应的段是否要被发送到第二***,对于需要检查的每个引用引用而言这会在这两个***之间产生相当大的流量。能够在不产生流量和检查段的每个引用的情况下将存储在重复删除的***上的部分数据进行拷贝会是有益的。
附图说明
在以下的详细说明和附图中公开了本发明的各种实施例。
图1是图示用于播种复制的***的实施例的框图。
图2A是图示一部分数据流或数据块的实施例的框图。
图2B是图示对一部分数据流或数据块进行分段的实施例的框图。
图3是图示文件引用的实施例的框图。
图4A是图示数据结构的实施例的框图。
图4B是图示数据结构的实施例的框图。
图4C是图示数据结构的实施例的框图。
图5是图示用于播种复制的过程的实施例的流程图。
图6是图示用于确定引用的段的过程的实施例的流程图。
图7A是图示用于向数据结构中进行添加的过程的实施例的流程图。
图7B是图示用于向数据结构中进行添加的过程的实施例的流程图。
图7C是图示用于向数据结构中进行添加的过程的实施例的流程图。
图8A是图示用于对段进行复制的过程的实施例的流程图。
图8B是图示用于对段进行复制的过程的实施例的流程图。
具体实施方式
本发明能够以众多种方式予以实现,包括实现为过程、设备、***、物质的组成、诸如计算机可读存储介质之类的计算机可读介质或者计算机网络,其中程序指令在光或通信链路上被发送。在此说明书中,这些实现方式,或者本发明可以采取的任何其他形式,可以被称为技术。诸如处理器或存储器之类的被描述为配置成执行任务的元件,包括在给定时间临时被配置为执行该任务的通用元件或者被制造成执行该任务的特定元件这两者。总的来说,在本发明的范围之内,可以改变所公开的过程中步骤的次序。
下面连同图示本发明原理的附图提供了对本发明的一个或多个实施例的详细描述。本发明是结合这样的实施例予以描述的,但不限于任何实施例。本发明的范围仅由权利要求限定且本发明包括众多可替换例、修改和等价物。为了提供对本发明的透彻理解,在下面的描述中阐述了众多特定细节。提供这些细节是出于举例的目的,并且本发明在没有这些特定细节中的一些或者全部的情况下可以根据权利要求予以实践。为清楚起见,对在本发明有关技术领域中已知的技术资料未进行详细的描述,以便本发明不会被不必要地混淆。
公开了播种复制。在重复删除的***中,针对源***上共享公共段池的数据的一部分的播种复制,要求确定使得这部分数据的重建得以实现的所引用的段。可以生成包含关于被引用段的信息的列表或数据结构。对于起源者***上所存储的唯一段而言,可以使用该列表或数据结构对每个进行检查以看看是否该段已经被该部分数据引用。如果该段已经被引用,则将该段发送到副本***。这允许源***和副本***之间来回的通信被减少到段级而不是引用级。再者,就数据结构来说,对存储器的高效使用是可能的,这是因为向量(vector)大大小于唯一的被引用段的列表。另外,在未与该副本***进行任何通信的情况下在起源者***上生成该列表或数据结构,从而节省了起源者***和副本***之间的通信带宽。
在一些实施例中,多个文件将涉及相同的存储段,这是因为在这些不同的文件中的段的内容是相同的。这与在相同***中存储了相同文件的多个版本的情况(例如,当在一个***上存储了***的多个快照时)形成对比,其中该相同文件的多个版本中的每一个涉及相同段。文件可以实现文件***中的文件、逻辑块设备、虚拟磁带盒、数据库表,或者数据存储***可以存储的任何其它种类的数据对象或这样的数据对象的一部分。
图1是图示用于播种复制的***的实施例的框图.在所示的实例中,存储***100为图1中由客户端112和客户端108所表示的客户端存储数据.客户端除本地存储器外还可以具有本地存储设备.例如,客户端108具有存储110,而客户端112不具有本地存储设备.存储***100或者使用内部存储设备102或者使用附连的外部存储设备104来存储数据.
存储***100经由网络106与客户端通信。网络106包括下述中的一个或多个:局域网、广域网、有线网络、无线网络、因特网、光纤网络,或能够实现通信的任何其他适当网络。存储***100也经由网络106与副本***120通信。副本***120包含内部存储设备122,并连接到外部存储设备124。
副本***120存储在存储***100上所存储的数据的全部或者一部分。最初,存储***100上所存储的数据的全部或一部分通过经由网络106发送适当的数据而被复制到副本***120上。在最初的播种之后,副本***120通过从存储***100发送新的数据而被更新。更新可以是持续的,,当数据量超过一定大小时,或在其他适当的时间时,定期一阵(in bursts)发送。就数据拷贝来说,最初的播种完成了该任务并且没有后续更新。
在各种实施例中,存储设备102,104,122和124包括单个存储设备、多个存储设备、诸如图书馆***或者网络附连的存储***之类的用于存储的***或者任何其它适当的存储设备或者***,所述单个存储设备诸如硬盘、磁带机、半导体存储器,所述多个存储设备诸如冗余阵列***(例如独立磁盘冗余阵列(redundant array of independent disk,RAID))。
图2A是图示数据流或数据块的一部分的实施例的框图。在所示的实例中,示出了数据流或数据块的一部分200。数据流或数据块的一部分200被诸如图1的存储***100之类的存储***接收并存储在其上。数据流或数据块的一部分200是从诸如图1的客户端108或112之类的一个或者多个客户端发送的。
图2B是图示对数据流或数据块的一部分进行分段的实施例的框图。在所示的实例中,数据流或数据块的该部分被分段成多个分段,在图2B中由202,204和206表示。通过从该数据流或数据块创建可以被用于重建该数据流或数据块的多个段而对该数据流或数据块进行分段。当段被用于重建该数据流或数据块时,段可以是重叠的、非重叠的或者是重叠和非重叠的组合。使用文件边界、目录边界、字节计数、基于内容的边界(例如,当窗口中数据的哈希值等于一值时)或确定边界的任何其他适当方法可以确定段边界。数据块、数据流、文件或目录的重建包括使用原始构成该该数据块、数据流、文件或目录的一个或者多个段的引用。诸如202、204和206之类的段被存储在存储设备210中,例如,像分别存储的段212、214和216。
图3是图示文件引用的实施例的框图。在一些实施例中,文件引用可被用来从存储在诸如存储设备210之类的存储设备中的段重建文件。如所示的实例中,文件300可以使用段引用302、304、306和308予以重建。文件310可以使用段引用312、314、316和318予以重建。存储偏移量以使得在存在重叠或者在文件的重建中仅段引用的一部分被使用的情况下使用段引用能够实现文件的重建。对于数据块、数据流、目录或使得使用所存储的段能够实现它们的重建的任何其他数据单元而言,可以使用相似的引用结构。在各种实施例中,段引用包含基于内容的引用、非基于内容的引用、指纹或段的任何其他适当的引用。
图4A是图示数据结构的实施例的框图.在一些实施例中,图4的数据结构被用于指示是否段被引用以确定该段是否应当被复制.在所示的实例中,数据结构400包含由401、402、404、406、408和410所表示的多个比特位.所述比特位被初始化为“0”.对于被引用的段,计算该段引用的多个哈希-例如,在图4A中,该段引用的多个哈希由Hash(SegRef)412,414,416和418来表示.哈希的值用于指向数据结构400中的比特位.所指向的比特位变为“1”.为了检查段是否被指示要复制,计算对该段的引用的相同哈希,并且如果所述哈希所指向的所有比特位都已经被设为“1”,那么假定该段要被引用并且因此应当被复制.在一些情况下,段可能看起来要被引用,这是因为所有比特位都已经被设为“1”,即使对该段的引用未被指示也是如此.当所指示的其他段的组合碰巧将所有位都设为“1”时,这样的冲突就会出现.选择数据结构的长度和哈希函数的数目来平衡数据结构所需的空间、哈希函数所需的计算量和对于段的数据结构中可容忍的冲突数目.想要的是数据结构400能够相当精确地指示给定分段是否已经被引用,以使几乎没有不需要复制的段被复制.在各种实施例中,数据结构400包括布隆(Bloom)过滤器或类似的基于哈希的数据结构.
图4B是图示数据结构的实施例的框图。在所示的实例中,数据结构420可以用于确定对段的不精确引用的列表。多个缩短的引用在图4B中由422和424表示。缩短的引用422是从段引用430创建的并置于数据结构420中。缩短的引用424是从段引用432创建的并置于数据结构420中。例如,缩短的指纹,诸如m(例如24)字节段引用中的n(例如4)字节,可被用作不精确引用,其中m小于n。具有与该数据结构的任何缩短的指纹的n个字节相匹配的具有引用的段被加入到要从起源者***发送到副本***的段列表中。n字节匹配的使用确保了必要的段被复制。可能存在一些附加段也被传输。另一方面,与全部(例如24字节)比较相对照,使用缩短的比较(例如4字节)减少了存储器空间。
图4C是图示数据结构的实施例的框图。在所示的实例中,数据结构440可以用于确定对段的精确引用的列表。在图4C中由442和444来表示多个引用。引用442从段引用450创建,并被置于数据结构440中。引用444从段引用452创建并置于数据结构440中。精确的段引用的数据结构可被用于在副本中进行播种复制的过程中。
图5是图示用于播种复制的过程的实施例的流程图.在一些实施例中,图5的过程被用于对诸如图1的副本***120之类的副本***进行播种.在一些实施例中,图5的过程被用于从一个***向另一***拷贝数据集.在所示的示例中,在500中,选择要复制的(一个或者多个)文件.在各种实施例中,通过下述来选择(一个或者多个)文件:使用图形用户界面中对一个或多个文件的选择、使用文件列表、通过在窗口中点击、通过选择目录、通过选择多个目录、使用目录列表或者选择文件的任何其他适当方法.在各种实施例中,为了负载平衡、满足服务目标的质量或其他原因可以由***自动确定(一个或者多个)文件.在各种实施例中,要传输的文件可以实现逻辑块设备、虚拟磁带机或其他类型的数据集或这样的数据集的各部分.在502中,对所选文件的文件元数据和段引用进行复制,并且将段引用加入到用于指示至少所确定段要被复制的数据结构中.在一些实施例中,比那些用于(一个或多个)所选定文件的重建所必须的段更多的段被指示为要复制.在506中,选择存储在重复删除***上的第一候选段.在508中,确定数据结构是否指示所选候选段要被复制.如果所选候选段要被复制,则在510中,复制所选候选段并且控制行进到512,如果不是,则控制行进到512.在512中,确定是否存在更多的候选段.如果存在,则在514中,选择下一个候选段,并且控制行进到508.在一些实施例中,为了高效访问,当可能时,在514中选择的下一个候选段是存储(例如,在重复删除存储***中)的与先前段极接近的一个段.在512中,如果没有更多的段了,则过程结束.在一些实施例中,存储在重复删除存储***中的每个段都是用于复制的候选段.在一些实施例中,候选段基本上以他们在重复删除存储***中所处位置的次序被处理的.这可以通过减少访问段所花费的时间来获得效率(例如,成批地存取段或在下一个段存取之前不要求大量探求(seek)).
图6是图示用于确定被引用段的过程的实施例的流程图。在一些实施例中,图6的过程被用于实现图5中的502。在所示的实例中,在600中,选择第一文件。在601中,复制所选文件的元数据(例如,文件名,文件大小,文件创建日期等)。在602中,选择所选文件的第一引用。在604中,复制该引用。在606中,将段引用添加到用于指示至少确定的段要复制的数据结构中。在608中,确定是否存在更多的引用,如果有,则在610中,选择下一个引用并将控制行进到604,如果没有,则在612中,确定是否还有更多文件。如果有,则在614,选择下一个文件并将控制行进到602。如果没有则过程结束。
图7A是图示用于向数据结构中进行添加的过程的实施例的流程图。在一些实施例中,图7A的过程被用于实现图6中的606。在所示的实例中,在700中,确定是否所选引用所涉及的段已经在精确列表中。如果已经存在,则过程结束。如果还没有,则在702中,将该段添加到该精确列表中。该精确列表包含对段的明确引用的列表。例如,段指纹或其他类型的引用的列表。在各种实施例中,以下述方式生成该列表:消除或不消除在该列表中出现的重复段,和/或在当在起源者存储***上存储原文件时的时间或以后需要的时间。在一些实施例中,该列表是按段引用来分类的。在一些实施例中,该列表是按存储位置来分类的。
图7B是图示用于向数据结构进行添加的过程的实施例的流程图。在一些实施例中,图7B的过程被用于实现图6的606。在所示的实例中,在710中,计算所选引用的多个哈希。在712中,如果适当,使用多个哈希中的每一个来改变数据结构。如果该位已经被改变(例如,设为“1”),则不改变该位。在一些实施例中,哈希值被用于确定数据结构中的比特位设为值“1”。数据结构可用于确定段是否被引用。
图7C是图示用于向数据结构进行添加的过程的实施例的流程图。在一些实施例中,图7C的过程被用于实现图6的606。在所示的实例中,在720中,创建缩短的引用。在722中,将该缩短的引用添加到该数据结构中。在一些实施例中,该数据结构是缩短的引用的长列表。该数据结构可用于确定段是否可能被引用了。
在一些实施例中,该数据结构包括如图6的过程所生成的要复制的段的列表。
图8A是图示用于复制段的过程的实施例的流程图。在一些实施例中,图8A的过程被用于实现图5的510。在所示的实例中,在800中,向副本***发送段。在这个例子中,操作假设是该副本***还未具有该段的拷贝,和该段成功到达该副本***。在一些实施例中,接收到确认,该确认指示已经收到该段和/或已经将该段存储在该副本***上(未示出)。
图8B是图示用于复制段的过程的实施例的流程图。在一些实施例中,图8B的过程被用于实现图5的510。在所示的实例中,在810中,向副本***发送段标识器。在812中,接收该段是否被存储在副本***上的指示。在814中,确定是否该指示指示了该段被存储在该副本***上。如果是,则过程结束。如果不是,则在816中,将该段发送给该副本***。在一些实施例中,接收到确认,其指示该段已经被接收和/或已经存储在副本***上(未示出)。
虽然为了清楚理解的目的,前述实施例已经描述了一些细节,但本发明不限于所提供的细节。存在很多实现本发明的可替换方法。所公开的实施例是举例说明性的而非限制性的。
Claims (26)
1.一种播种复制的方法,包括:
选择存储在重复删除的存储***上要复制的一个或多个而非所有文件;
确定由所选择的一个或多个而非所有文件所涉及的一个或多个段;
创建被用于指示至少所述一个或多个段是要被复制的数据结构;以及
如果至少部分地基于所述数据结构的指示指示了存储在所述重复删除存储***上的候选段是要复制的,则复制所述候选段。
2.如权利要求1所述的方法,其中,使用基于内容的引用来涉及所述一个或多个段。
3.如权利要求1所述的方法,其中,使用非基于内容的引用来涉及所述一个或多个段。
4.如权利要求1所述的方法,其中,使用指纹来涉及所述一个或多个段。
5.如权利要求1所述的方法,其中,所述数据结构包括段的精确列表。
6.如权利要求5所述的方法,其中,对段的所述精确列表进行重复删除。
7.如权利要求5所述的方法,其中,对段的所述精确列表进行分类。
8.如权利要求1所述的方法,其中,所述数据结构包括概率数据结构。
9.如权利要求8所述的方法,其中,所述概率数据结构包括段的不精确列表。
10.如权利要求8所述的方法,其中,所述概率数据结构包括布隆过滤器。
11.如权利要求8所述的方法,其中,所述概率数据结构指示段一定没被所选择的一个或多个而非所有文件引用。
12.如权利要求8所述的方法,其中,所述概率数据结构指示段可能被所选择的一个或多个而非所有文件引用。
13.如权利要求1所述的方法,其中,创建所述数据结构包括使用哈希函数。
14.如权利要求1所述的方法,其中,所述数据结构如段被存储在所述重复删除存储***上那样被构建。
15.如权利要求1所述的方法,其中,所述数据结构响应于播种副本***的请求而被构建。
16.如权利要求1所述的方法,其中,复制所述候选段包括将所述段发送给副本***。
17.如权利要求1所述的方法,其中,复制所述候选段包括接收所述段被收到或被存储在副本***上的确认。
18.如权利要求1所述的方法,其中,复制所述候选段包括向副本***发送引用以看看所述引用所涉及的段是否已存储在所述副本***上。
19.如权利要求1所述的方法,其中,复制所述候选段包括如果所述段被指示为还未被存储在副本***则发送所述段。
20.如权利要求1所述的方法,还包括复制由所述一个或多个而非所有文件的一个或多个引用。
21.如权利要求20所述的方法,其中,可以至少部分地基于所述一个或多个引用,重建所述一个或多个而非所有文件。
22.如权利要求1所述的方法,其中,存储在所述重复删除存储***中的每个段都是用于复制的候选。
23.如权利要求1所述的方法,还包括以次序处理候选段使得所处理的至少两连续段极接近地存储在所述重复删除存储***中。
24.如权利要求1所述的方法,还包括基本上以所述候选段在所述重复删除存储***中的位置的次序处理所述候选段。
25.一种用于播种复制的计算机程序产品,所述计算机程序产品被包括在计算机可读介质中,并且包括用于下述的计算机指令:
选择存储在重复删除的存储***上要复制的一个或多个而非所有文件;
确定由所选择的一个或多个而非所有文件所涉及的一个或多个段;
创建用于指示至少所述一个或多个段要被复制的数据结构;
如果至少部分地基于所述数据结构的指示指示了存储在所述重复删除存储***上的候选段要复制,则复制所述候选段。
26.一种用于播种复制的***,包括:
处理器;以及
与所述处理器耦合的存储器,其中,所述存储器被配置为向所述处理器提供指令,当所述指令执行时促使所述处理器:
选择存储在重复删除的存储***上要复制的一个或多个而非所有文件;
确定由所选择的一个或多个而非所有文件所涉及的一个或多个段;
创建用于指示至少所述一个或多个段要被复制的数据结构;
如果至少部分地基于所述数据结构的指示指示了存储在所述重复删除存储***上的候选段要被复制,则复制所述候选段。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US92562407P | 2007-04-19 | 2007-04-19 | |
US60/925,624 | 2007-04-19 | ||
US11/807,204 | 2007-05-24 | ||
US11/807,204 US7827137B2 (en) | 2007-04-19 | 2007-05-24 | Seeding replication |
PCT/US2008/004560 WO2008130504A1 (en) | 2007-04-19 | 2008-04-09 | Seeding replication |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101707884A true CN101707884A (zh) | 2010-05-12 |
CN101707884B CN101707884B (zh) | 2013-11-06 |
Family
ID=39873305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800122266A Active CN101707884B (zh) | 2007-04-19 | 2008-04-09 | 播种复制 |
Country Status (4)
Country | Link |
---|---|
US (3) | US7827137B2 (zh) |
EP (1) | EP2147437B1 (zh) |
CN (1) | CN101707884B (zh) |
WO (1) | WO2008130504A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103229172A (zh) * | 2010-12-13 | 2013-07-31 | 国际商业机器公司 | 复制数据 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7882138B1 (en) * | 2008-03-27 | 2011-02-01 | Sonoa Networks India (PVT) Ltd. | Progressive evaluation of predicate expressions in streaming XPath processor |
US8108446B1 (en) * | 2008-06-27 | 2012-01-31 | Symantec Corporation | Methods and systems for managing deduplicated data using unilateral referencing |
US8046329B2 (en) * | 2008-06-30 | 2011-10-25 | Symantec Operating Corporation | Incremental backup of database for non-archive logged servers |
US9419801B2 (en) * | 2009-05-12 | 2016-08-16 | Infrascale Inc. | System and method for transmitting needed portions of a data file between networked computers |
US8635184B2 (en) | 2009-06-25 | 2014-01-21 | Emc Corporation | System and method for providing long-term storage for data |
US8296536B2 (en) | 2009-08-11 | 2012-10-23 | International Business Machines Corporation | Synchronization of replicated sequential access storage components |
US8356017B2 (en) | 2009-08-11 | 2013-01-15 | International Business Machines Corporation | Replication of deduplicated data |
US8385192B2 (en) | 2009-08-11 | 2013-02-26 | International Business Machines Corporation | Deduplicated data processing rate control |
US8453031B2 (en) | 2010-03-24 | 2013-05-28 | International Business Machines Corporation | Data deduplication using CRC-seed differentiation between data and stubs |
US8825972B1 (en) | 2010-11-19 | 2014-09-02 | Symantec Corporation | Method and system of producing a full backup image using an incremental backup method |
US8635187B2 (en) | 2011-01-07 | 2014-01-21 | Symantec Corporation | Method and system of performing incremental SQL server database backups |
US8909657B2 (en) | 2011-01-14 | 2014-12-09 | Apple Inc. | Content based file chunking |
US9047304B2 (en) | 2011-11-28 | 2015-06-02 | International Business Machines Corporation | Optimization of fingerprint-based deduplication |
US9779103B2 (en) * | 2012-04-23 | 2017-10-03 | International Business Machines Corporation | Preserving redundancy in data deduplication systems |
US8682870B1 (en) | 2013-03-01 | 2014-03-25 | Storagecraft Technology Corporation | Defragmentation during multiphase deduplication |
US20140250077A1 (en) * | 2013-03-01 | 2014-09-04 | Storagecraft Technology Corporation | Deduplication vault storage seeding |
US8874527B2 (en) * | 2013-03-01 | 2014-10-28 | Storagecraft Technology Corporation | Local seeding of a restore storage for restoring a backup from a remote deduplication vault storage |
US8738577B1 (en) | 2013-03-01 | 2014-05-27 | Storagecraft Technology Corporation | Change tracking for multiphase deduplication |
US8732135B1 (en) | 2013-03-01 | 2014-05-20 | Storagecraft Technology Corporation | Restoring a backup from a deduplication vault storage |
WO2014185915A1 (en) | 2013-05-16 | 2014-11-20 | Hewlett-Packard Development Company, L.P. | Reporting degraded state of data retrieved for distributed object |
EP2997497B1 (en) | 2013-05-16 | 2021-10-27 | Hewlett Packard Enterprise Development LP | Selecting a store for deduplicated data |
US10496490B2 (en) | 2013-05-16 | 2019-12-03 | Hewlett Packard Enterprise Development Lp | Selecting a store for deduplicated data |
US9336076B2 (en) | 2013-08-23 | 2016-05-10 | Globalfoundries Inc. | System and method for controlling a redundancy parity encoding amount based on deduplication indications of activity |
US8751454B1 (en) | 2014-01-28 | 2014-06-10 | Storagecraft Technology Corporation | Virtual defragmentation in a deduplication vault |
US10223377B1 (en) * | 2015-03-23 | 2019-03-05 | EMC IP Holding Company LLC | Efficiently seeding small files with certain localities |
US9977716B1 (en) | 2015-06-29 | 2018-05-22 | Veritas Technologies Llc | Incremental backup system |
US11630735B2 (en) | 2016-08-26 | 2023-04-18 | International Business Machines Corporation | Advanced object replication using reduced metadata in object storage environments |
US10802922B2 (en) * | 2016-08-26 | 2020-10-13 | International Business Machines Corporation | Accelerated deduplication block replication |
US11176097B2 (en) | 2016-08-26 | 2021-11-16 | International Business Machines Corporation | Accelerated deduplication block replication |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1147803C (zh) * | 1999-12-29 | 2004-04-28 | 上海龙林通信技术有限公司 | Ip网络设备的热备份方法 |
US7120666B2 (en) * | 2002-10-30 | 2006-10-10 | Riverbed Technology, Inc. | Transaction accelerator for client-server communication systems |
US6928526B1 (en) * | 2002-12-20 | 2005-08-09 | Datadomain, Inc. | Efficient data storage system |
CN1302411C (zh) * | 2002-12-31 | 2007-02-28 | 联想(北京)有限公司 | 大型机群***的集中控制方法 |
WO2005050383A2 (en) * | 2003-11-13 | 2005-06-02 | Commvault Systems, Inc. | Combining data streams in storage network |
US7373451B2 (en) * | 2003-12-08 | 2008-05-13 | The Board Of Trustees Of The Leland Stanford Junior University | Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers |
US8375181B1 (en) * | 2004-10-28 | 2013-02-12 | Symantec Operating Corporation | System and method for performing replication based on change tracking information |
US8347088B2 (en) | 2005-02-01 | 2013-01-01 | Newsilike Media Group, Inc | Security systems and methods for use with structured and unstructured data |
US7814129B2 (en) | 2005-03-11 | 2010-10-12 | Ross Neil Williams | Method and apparatus for storing data with reduced redundancy using data clusters |
JP4153918B2 (ja) | 2005-03-22 | 2008-09-24 | 株式会社東芝 | 無線タグリーダ、無線タグシステム、プログラムおよび無線通信方法 |
US7392235B2 (en) * | 2005-04-15 | 2008-06-24 | Emc Corporation | Methods and apparatus for retrieval of content units in a time-based directory structure |
US7984018B2 (en) * | 2005-04-18 | 2011-07-19 | Microsoft Corporation | Efficient point-to-multipoint data reconciliation |
US7577786B2 (en) * | 2005-12-08 | 2009-08-18 | Quality Systems Associates, Inc. | Restore accelerator for serial media backup systems |
US7478113B1 (en) * | 2006-04-13 | 2009-01-13 | Symantec Operating Corporation | Boundaries |
US7885988B2 (en) * | 2006-08-24 | 2011-02-08 | Dell Products L.P. | Methods and apparatus for reducing storage size |
US7844977B2 (en) * | 2007-02-20 | 2010-11-30 | International Business Machines Corporation | Identifying unnecessary synchronization objects in software applications |
US7769971B2 (en) * | 2007-03-29 | 2010-08-03 | Data Center Technologies | Replication and restoration of single-instance storage pools |
-
2007
- 2007-05-24 US US11/807,204 patent/US7827137B2/en active Active
-
2008
- 2008-04-09 WO PCT/US2008/004560 patent/WO2008130504A1/en active Application Filing
- 2008-04-09 EP EP08727318.1A patent/EP2147437B1/en active Active
- 2008-04-09 CN CN2008800122266A patent/CN101707884B/zh active Active
-
2010
- 2010-09-26 US US12/890,688 patent/US8527455B2/en active Active
-
2013
- 2013-07-31 US US13/956,010 patent/US9208166B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103229172A (zh) * | 2010-12-13 | 2013-07-31 | 国际商业机器公司 | 复制数据 |
CN103229172B (zh) * | 2010-12-13 | 2017-07-11 | 国际商业机器公司 | 复制数据 |
Also Published As
Publication number | Publication date |
---|---|
US20140040192A1 (en) | 2014-02-06 |
US7827137B2 (en) | 2010-11-02 |
US9208166B2 (en) | 2015-12-08 |
EP2147437A4 (en) | 2015-01-14 |
WO2008130504A1 (en) | 2008-10-30 |
EP2147437A1 (en) | 2010-01-27 |
US20110016083A1 (en) | 2011-01-20 |
CN101707884B (zh) | 2013-11-06 |
US20080263109A1 (en) | 2008-10-23 |
US8527455B2 (en) | 2013-09-03 |
EP2147437B1 (en) | 2021-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101707884B (zh) | 播种复制 | |
US20200341651A1 (en) | Writing data in a distributed data storage system | |
CN104641365B (zh) | 在文件存储***中使用检查点管理去复制的***和方法 | |
US9465695B2 (en) | Efficient backup replication | |
US9633065B2 (en) | Efficient data rehydration | |
CN101061467B (zh) | 远程存储数据副本 | |
CN102004690B (zh) | 用于帮助重复数据删除产品测试的方法及其装置 | |
JP6152484B2 (ja) | ファイルサーバ装置、方法、及び、計算機システム | |
US9569311B2 (en) | Computer system for backing up data | |
EP3333730A1 (en) | Data processing device, data processing program and data processing method | |
US20150012709A1 (en) | Progressive virtual lun | |
CN104714756A (zh) | 用于在双向同步镜像环境中进行本地锁定的方法和计算机*** | |
US20190370127A1 (en) | Image recovery from volume image files | |
JP6413792B2 (ja) | ストレージシステム | |
US7984085B1 (en) | Rate of change of data using on-the-fly accounting | |
JP6955588B2 (ja) | データ分析を支援するシステム及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |