CN101878471A - 数据存储空间恢复系统和方法 - Google Patents

数据存储空间恢复系统和方法 Download PDF

Info

Publication number
CN101878471A
CN101878471A CN2008801039980A CN200880103998A CN101878471A CN 101878471 A CN101878471 A CN 101878471A CN 2008801039980 A CN2008801039980 A CN 2008801039980A CN 200880103998 A CN200880103998 A CN 200880103998A CN 101878471 A CN101878471 A CN 101878471A
Authority
CN
China
Prior art keywords
pitc
page
space
storage
data
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
Application number
CN2008801039980A
Other languages
English (en)
Other versions
CN101878471B (zh
Inventor
L·E·阿什曼
M·J·克莱姆
M·H·皮特尔科
M·D·奥尔森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DELL International Ltd
Original Assignee
Compellent Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Compellent Technologies Inc filed Critical Compellent Technologies Inc
Publication of CN101878471A publication Critical patent/CN101878471A/zh
Application granted granted Critical
Publication of CN101878471B publication Critical patent/CN101878471B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1727Details of free space management performed by the file system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Abstract

提供了通过使用由主机计算机系统提供的知道在查询时哪些被分配的空间当前正在被使用的信息确定带有隐性分配的数据空间的计算机数据存储系统中明显空闲的数据空间的方法。在一个实施例中,文件系统(“FS”)被要求用来标识不再被使用的簇,该簇接着被映射到对操作系统(“OS”)可见的物理盘片。该物理盘片被映射到由存储子系统呈现的模拟/虚拟的卷。通过使用关于FS的服务器信息,对于不再被使用的那些页面,时间点拷贝(“PITC”)页面被标记用于今后的PITC并且将不被向前合并,从而节省可观的存储。

Description

数据存储空间恢复系统和方法
相关申请的交叉引用
[001]本申请要求题为“Data Storage Space Recovery System andMethod(数据存储空间恢复系统和方法)”、2007年6月22日提交的、序列号为11/767,049的美国专利申请的权益,并且涉及题为“VirtualDisk Drive System and Method(虚拟盘片驱动系统和方法)”、2004年8月13日提交的、序列号为10/918,329的共同待定的美国专利申请;这两个申请都通过引用而被并入本文。
技术领域
[002]本发明涉及通过使用由主机计算机系统提供的知道在查询时哪些被分配的空间当前正在被使用的信息确定带有隐性分配的数据空间的计算机数据存储系统中的明显空闲的数据空间。通过减少所要求的存储总量,在任何给定数据的存在期可以实现可观的成本节省。
背景技术
[003]为了各种目的每年要求存储和传输日益增加的数据量,包括为了商业惯例以及顺应各种法律。在其上记录该数据的介质具有以美金计算的获得价格、以人力时间计算的管理价格、以及提供诸如动力和散热和/或其他要素的基础设施的价格。所希望的是减少所有这些要素的成本。普遍认为管理和提供这种基础设施的成本是获得存储介质的成本的倍数。通过减少介质的量,其他基础设施成本可以被进一步减少。本发明提供通过其可以节约、循环利用、或者再次使用数据存储和有关的介质,从而减少拥有数据存储的总成本的方法。
[004]先前已经证明是有可能构建在其中所有物理存储初始地被分配到池(pool)的存储子系统,其示例在题为“Virtual Disk Drive System andMethod(虚拟盘片驱动系统和方法)”、2004年8月13日提交的、序列号10/918,329的共同待定的美国专利申请中被论述。然后该池可以根据需要被分配到计算实体可存取的其他实体以便将该实体用于数据存储。在本发明的领域中从池到计算实体的存储分配通常被称为“自动精简配置(thin provisioning)”。仅根据需要分配存储的这种方法利用了这样的含意:存储正在被计算实体使用,因为如果计算实体写入数据,其旨在于存储该数据用于稍后取回。通过仅分配由这些特定操作标识的存储,没有被常规的存储子系统使用并且可能从未被常规的存储子系统使用的可观的存储量可能作为整体被从系统中省略,从而减少获得、维护等成本。
[005]然而,在标准协议中,计算实体不可能向存储子系统传达先前已经有数据被存储到其的特定区域不再被使用并且现在可以被再次使用或者以其他方式被释放。该数据空间可以已经被用于临时存储,或者可以仅仅是不再有足够价值为进一步的应用而保留。由于没有方法可用来只从存储子系统的角度标识不再被使用的区域,存储子系统继续维护数据空间。换句话说,没有隐含的方法可以逻辑上存在,通过该方法不用检查数据本身而毫无疑义地确定腾出(free)先前隐性分配的存储。同样地,对于存储子系统,检查计算实体所存储的所有数据的内容是十分耗费计算资源的。因而,在试图紧跟操作或者文件系统中的技术变化以及可以使用存储子系统的所有可能的应用的同时,存储系统遭受非常严重的性能影响。
[006]总的来说,所希望的是准确地知道对于任何操作系统和任何类型的文件系统来说哪些块正在被使用,以及哪些块不是正在被使用以有助于使自动精简配置尽可能有效。对于块存储的用户,不存在标准向存储单元指示块“没有正在被使用”。对于常规的存储设备,该信息已经完全无关紧要,因为一个物理块通过物理表示被映射到存储设备上每个可寻址块。在包含多于一个盘片(disk)设备的几乎所有存储系统中,任何给定的可寻址块实际上可以被映射到一个或多个物理盘片设备上的几乎任何(以及有时多于一个)物理块。利用完全虚拟化的、自动精简配置的存储系统,只关于哪些块正在被使用的信息被隐性地收集—如果块被写入,其被假定为正在被使用。这是本质上安全的假设。在自动精简配置的情况下,基于用户写入到给定的可寻址块,物理块被分配用来基于需要而映射到用户可寻址块。“读取”从来没有被写的块可以返回空数据(dummy data),通常是由全0构成的以及具有所要求的总长度的数据。在这个实施例中使块可以被释放用于再次使用的仅有的方法是如果产生PITC,以及给定的逻辑可寻址块再一次被写入,并且先前的PITC期满。再次地,这隐性地指示先前被分配的块对于可寻址存储的完整性不再必要并且如有需要可以被重新分配,可能地被分配到其他卷。
[007]某些条件可以导致任何FS中大量未使用的可寻址块。这种情况的极端例子可能是产生包含几乎整个卷的单个非常大的文件,接着删除该文件。存储子系统将隐性地分配对于文件系统进行的每次写入所要求的存储,在这种情况下为包含整个卷的那些。在该文件被删除后,由存储子系统分配的空间中的大部分不再被需要,但是存储空间不能隐性地被释放,从而消耗资源。随着时间逝去,应用或者文件系统层面的小型分配以及重新分配可能导致相同的结果。
[008]因而,现有的数据存储系统中的自动精简配置方法受操作系统的文件系统操作束缚。这些文件系统不重新分配被腾出的空间,而是将先前未使用的空间分配给新文件写入,即新文件写入操作。该操作方法给定分区中造成先前已经被写入的大量空间,该给定分区实际上不再存储对于文件系统可用的数据。因为数据存储系统没有办法知道哪些逻辑块地址(“LBA”)不再被文件系统使用,该文件系统根据由数据存储系统提供的块存储分层,随着时间逝去这些现在未使用的块将累积。这种累积将最终要求得到的每个时间点拷贝(“PITC”,point in timecopy)将访问(refer to)页面池中先前的页面,尽管那个存储实际上不再被使用。
[009]因为越来越多的页面被宣告为“正在被使用”,而实际上没有正在被使用,诸如拷贝(copy)、复制(replication)以及其他数据移动的操作将占用更多的时间,并且将消耗更多的存储空间(可能在所有层级),从而使自动精简配置的许多空间优势无效。一个示例为lgb的文件被写入以及相应的新的卷被分配,接着该lgb的文件被删除。在存储子系统中,lgb页面仍然被分配在有效PITC(active PITC)中并且将被带到下一个PITC中诸如此类。页面可以在稍后的PITC中被替换,然而在现有的系统中,没有释放文件系统已经宣告其不再被使用的页面的方法。结果是如果该据推测为空的卷通过使用内部工具被拷贝,在新的拷贝中lgb的页面将被消耗,即使该卷为空。
[010]因此,确定何时隐性分配的存储不再被计算实体使用并且可以被腾出用于其它应用的方法是所希望的。
发明内容
[011]本发明提供通过使用由主机计算机系统提供的知道在查询时哪些被分配的空间当前正在被使用的信息确定带有隐性分配的数据空间的计算机数据存储系统中的明显空闲的数据空间的系统和方法。通过减少所要求的存储总量,在任何给定数据的存在期可以实现可观的成本节省。
[012]在本发明的一个实施例中,提供用来确定何时隐性分配的存储不再被计算实体使用并且可以被腾出用于其他应用的方法。本发明的优点之一是其减少所要求的数据存储总量,这减少其他资源,诸如要求用来将数据从一个实体拷贝到另一个实体、存储数据的另外的拷贝的带宽,并且相应地减少使用起支持作用的基础设施,包括输送和管理存储的空间、时间,以及提供给存储设备的动力和其他可能有用的资源。
[013]如其将会实现地那样,本发明的实施例能够在各个显而易见的方面进行改动,而都不脱离本发明的实质和范围。因此,附图和详细的说明应被认为本质上是示意性的而不是限制性的。
附图说明
[014]图1示出根据本发明的原理的数据存储空间恢复的一个示例性方法的流程图。
[015]图2示出根据本发明的原理的到计算机数据存储系统中明显空闲数据空间的页面池映射方法的一个示例性文件系统单元/扇区/簇。
具体实施方式
[016]图1和2示出确定通过使用由主机计算机系统提供的知道在查询时哪些被分配的空间当前正在被使用的信息确定带有隐性分配的数据空间的计算机数据存储系统中明显空闲的数据空间的方法。
[017]本发明的主机计算机系统可以包括一个或多个计算实体(有时称为主机或者服务器),该计算实体通过诸如光纤信道、SCSI或者其他标准存储协议的方式连接到一个或多个数据存储子系统,每个数据存储子系统模拟或者映射到一个或多个物理存储卷。数据存储子系统的一个实施例在题为“Virtual Disk Drive System and Method(虚拟盘片驱动系统和方法)”、2004年8月13日提交的、序列号为10/918,329的共同待定的美国专利申请中论述,其主题通过引用被并入。主机或者服务器包括操作系统(“OS”),其部分被称为文件系统(“FS”),该文件系统具有多个单元/扇区/簇,如图2所示。
[018]主机或者服务器通常没有办法确定被限制在单个物理盘片中的常规存储卷和模拟/虚拟卷之间的区别。数据存储子系统将主机或者服务器所查看的存储单元扇区之间的抽象(abstraction)提供给被用于通过使用诸如RAID的冗余存储或者其他非冗余方法跨多个盘片被扩展的数据存储的那些存储单元扇区。存储子系统抽象化(abstract)经RAID方法被分配到被称为页面的单元的存储,该页面包含多个扇区。该抽象允许对虚拟卷和实际盘片存储之间的数据分配的简化的内部管理,并且详细的实现在题为“Virtual Disk Drive System and Method(虚拟盘片驱动系统和方法)”、2004年8月13日提交的、序列号为10/918,329的共同待定的美国专利申请中论述。
[019]因此,在图1中,确定带有隐性分配的数据空间的计算机数据存储系统中明显空闲的数据空间的方法100从标识FS分配单元/扇区/簇的步骤102开始。在步骤104中FS单元/扇区/簇被分配和映射有OS物理盘片单元/扇区(the FS units/sectors/clusters are allocated andmapped with OS physical disk units/sectors in a step 104)。在步骤106中,明显空闲区域的未使用的块的列表被输送到存储子系统。在到达存储子系统时,未使用的块被调整为仅包括整个页面。页面必须完全未使用以使其有资格被腾出。在步骤108中,控制器(未示出)可以修改有效PITC,该有效PITC在给定的时间期间中跟踪卷的变化。在步骤108中,控制器(未示出)确定未使用的块的列表中的每个块是在有效时间点拷贝(“PITC”)中还是在历史PITC中,其中有效PITC是已经被使用并且没有被正在使用的存储区域或者页面,而历史PITC是已经被使用并且在PITC期满时将可能被腾出的存储区域或者页面。如果未使用的块的列表中的块是有效PITC,则控制器在步骤110中将页面送回空闲列表。图2中的页面池210示出存储空间的空闲列表。图2中的页面池212示出页面被送回之后的空闲列表。
[020]如果空闲列表中的块是历史PITC,则控制器在步骤112中将有效PITC中的页面标记为可用以在拥有该页面的被冻结的PITC期满成为带有被标记的页面的PITC时被腾出(即稍后的PITC可以含有可能已经与该页面重叠的新的数据,所以该页面无论如何可以已经被隐性地腾出),从而在历史PITC期满时该页面将被腾出。历史PITC内的数据是只读的并且可以在存在期不被更改。这包括到将I/O写入数据页面,以及将页面送回空闲列表。一旦历史PITC期满,其页面可能被送回到空闲列表。接下来,控制器确定列表中是否有另一个块。如果是,方法100返回步骤108依此类推。如果列表中没有块,方法100结束。图2中的页面池212示出PITC B和C从系统中期满之后的空闲页面列表。在PITC B和C从系统中期满时页面E和N被腾出。只要PITC存在并且提供有效的恢复点,其需要保留其全部的页面。
[021]在没有本发明的上述方法100的典型情况中,PITC A中的页面6、PITC B中的页面1、PITC C中的页面1、2,如图2所示,可以在先前已经被访问(reference),因而它们必须被带向前作为PITC合并,并且它们是隐性的空闲的空间而服务器或者主机没法知道。如图2所示,FS不再使用如FS簇映射202所指示的这些存储区域,即簇2、4、5、6不再被使用,其仅是被浪费的空间。
[022]为了释放或者腾出这些空间,FS被要求用来标识在簇映射202中示出的没有正在被使用以及正在被使用的簇。这将簇2、4、5、6标识为不再被使用。
[023]接着,FS被要求用来将没有正在被使用的簇(2、4、5、6)映射到对OS可见的盘片。这提供簇2到盘片0上的扇区3、4、簇4到盘片0上的扇区7、8、簇5到盘片1上的扇区18和19、以及簇6到盘片1上的扇区1和2的映射。应当理解的是在此使用的扇区号是为了示意的目的。
[024]因为通过设计OS所查看的物理盘片与由存储子系统呈现的模拟/虚拟卷一致,盘片的OS视角(view)204和存储子系统卷206之间有一对一的扇区映射。
[025]被标识为没有被正在使用的扇区的扇区地址现在可以被解析到数据从其被映射的相应的PITC,即208中的PITC A、PITC B、以及PITC C。每个PITC页面通常含有非常多的扇区-有时数千个,而在这个示例中为了示意的目的,每个页面含有两个扇区。因此,卷0的扇区3和4被映射到PITC B的页面1,卷0的扇区7和8被映射到PITCA的页面6依此类推。在该点处,由于页面的其他部分正在被使用而不能被腾出的页面也可以被解析。举例来说,在图2中,卷1的扇区19被映射到PITC C的页面5,其也并且仍然正在被卷1的扇区3使用。在这种情况下,PITC C的页面5在该点处没有被腾出。
[026]通过使用关于FS的服务器信息,在208中示出的PITC页面被标记为对于今后的PITC为不再被使用并且将不被向前合并超过空间恢复的点,因而节省可观的存储。
[027]注意到的是上述示例没有示出从来没有被使用的FS簇怎样被映射到“零数据”。应当理解的是尽管本发明的方法标识和解析先前已经含有数据并且不再含有数据的(例如删除或者移动文件等等)簇,可以实现被用来标识和解析包括从来没有被使用的一些簇的簇的步骤。
[028]总的来说,通过检查FS,某些被标识的页面可以从稍后的PITC中去除,在今后的操作中将某些页面送回存储页面池。在本发明中,FS可以自由地将由FS使用的任何分配单元以其所希望的任何方式映射到扇区和物理盘片。因而恢复不再被使用的空间的关键之一是查询FS以确定哪个空间实际上正在被使用以及处于哪个物理位置。在知道该信息的情况下,可以执行从FS分配单元到虚拟存储子系统卷的映射,并且从那里,到页面的映射。隐性地被标识为正在被使用的页面可以明显地被确定为被空闲。该信息可以被用来在合适的PITC中优化空间使用。

Claims (3)

1.确定计算机数据存储系统中明显空闲的数据空间的方法,其包含以下步骤:
询问哪些被分配的空间正在被使用以及没有正在被使用;
通过使用由主机计算机系统提供的信息来提供隐性分配的数据空间;以及
将所述被分配的空间从物理盘片映射到虚拟卷,以及映射到时间点拷贝(“PITC”)页面,其中不再被使用的空间被标识在PITC页面中并且将不被向前合并并且在页面池列表中被腾出。
2.确定带有隐性分配的数据空间的计算机数据存储系统中明显空闲的数据空间的方法,其包含以下步骤:
标识文件系统(“FS”)分配单元/扇区/簇,其中所述FS分配单元/扇区/簇被分配和映射有操作系统(“OS”)物理盘片单元/扇区;
将明显空闲区域的未使用的块的列表输送到存储子系统;
将明显空闲区域的所述未使用的块的列表调整为仅包括所述存储子系统中完整的页面;
确定所述未使用的块的列表中的每个块是在有效时间点拷贝(“PITC”)中还是在历史PITC中,其中所述有效PITC是已经被使用过并且没有正在被使用的存储区域或者页面,而所述历史PITC是已经被使用过并且在所述有效PITC期满时将可能被腾出的存储区域或者页面,其中,
如果所述未使用的块的列表中的块是所述有效PITC,则将所述页面送回空闲列表;以及
如果所述未使用的块的列表中的块是历史PITC,则将所述有效PITC中的页面标记为可用以在拥有相应页面的PITC期满时被腾出。
3.如权利要求2所述的方法,其还包含修改有效PITC的步骤,所述有效PITC在给定的时间期间中跟踪虚拟存储空间的卷的变化。
CN2008801039980A 2007-06-22 2008-06-23 数据存储空间恢复系统和方法 Active CN101878471B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/767,049 US8601035B2 (en) 2007-06-22 2007-06-22 Data storage space recovery system and method
US11/767049 2007-06-22
PCT/US2008/067905 WO2009002934A1 (en) 2007-06-22 2008-06-23 Data storage space recovery system and method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201310316822.6A Division CN103500164A (zh) 2007-06-22 2008-06-23 数据存储空间恢复系统和方法

Publications (2)

Publication Number Publication Date
CN101878471A true CN101878471A (zh) 2010-11-03
CN101878471B CN101878471B (zh) 2013-08-28

Family

ID=40137617

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201310316822.6A Pending CN103500164A (zh) 2007-06-22 2008-06-23 数据存储空间恢复系统和方法
CN2008801039980A Active CN101878471B (zh) 2007-06-22 2008-06-23 数据存储空间恢复系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201310316822.6A Pending CN103500164A (zh) 2007-06-22 2008-06-23 数据存储空间恢复系统和方法

Country Status (6)

Country Link
US (2) US8601035B2 (zh)
EP (2) EP2160684A4 (zh)
JP (2) JP2010531029A (zh)
CN (2) CN103500164A (zh)
HK (1) HK1150250A1 (zh)
WO (1) WO2009002934A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109871209A (zh) * 2018-12-30 2019-06-11 贝壳技术有限公司 列表页面状态恢复方法及装置

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311420B2 (en) * 2007-06-20 2016-04-12 International Business Machines Corporation Customizing web 2.0 application behavior based on relationships between a content creator and a content requester
US8694563B1 (en) * 2009-04-18 2014-04-08 Hewlett-Packard Development Company, L.P. Space recovery for thin-provisioned storage volumes
US20100306253A1 (en) * 2009-05-28 2010-12-02 Hewlett-Packard Development Company, L.P. Tiered Managed Storage Services
US8639876B2 (en) * 2010-01-27 2014-01-28 International Business Machines Corporation Extent allocation in thinly provisioned storage environment
US9965224B2 (en) * 2010-02-24 2018-05-08 Veritas Technologies Llc Systems and methods for enabling replication targets to reclaim unused storage space on thin-provisioned storage systems
US8380961B2 (en) 2010-08-18 2013-02-19 International Business Machines Corporation Methods and systems for formatting storage volumes
US8392653B2 (en) 2010-08-18 2013-03-05 International Business Machines Corporation Methods and systems for releasing and re-allocating storage segments in a storage volume
US9411517B2 (en) * 2010-08-30 2016-08-09 Vmware, Inc. System software interfaces for space-optimized block devices
CN101976223B (zh) * 2010-10-09 2012-12-12 成都市华为赛门铁克科技有限公司 自动精简配置方法和装置
US9348819B1 (en) * 2011-12-31 2016-05-24 Parallels IP Holdings GmbH Method and system for file data management in virtual environment
KR101791855B1 (ko) * 2016-03-24 2017-10-31 주식회사 디에이아이오 스토리지 장치 및 이의 공간 재수거 방법
US10761743B1 (en) 2017-07-17 2020-09-01 EMC IP Holding Company LLC Establishing data reliability groups within a geographically distributed data storage environment
US10817388B1 (en) 2017-07-21 2020-10-27 EMC IP Holding Company LLC Recovery of tree data in a geographically distributed environment
US10684780B1 (en) * 2017-07-27 2020-06-16 EMC IP Holding Company LLC Time sensitive data convolution and de-convolution
US10880040B1 (en) 2017-10-23 2020-12-29 EMC IP Holding Company LLC Scale-out distributed erasure coding
US10528260B1 (en) 2017-10-26 2020-01-07 EMC IP Holding Company LLC Opportunistic ‘XOR’ of data for geographically diverse storage
US10382554B1 (en) 2018-01-04 2019-08-13 Emc Corporation Handling deletes with distributed erasure coding
US10817374B2 (en) 2018-04-12 2020-10-27 EMC IP Holding Company LLC Meta chunks
US10579297B2 (en) 2018-04-27 2020-03-03 EMC IP Holding Company LLC Scaling-in for geographically diverse storage
US11023130B2 (en) 2018-06-15 2021-06-01 EMC IP Holding Company LLC Deleting data in a geographically diverse storage construct
US10936196B2 (en) 2018-06-15 2021-03-02 EMC IP Holding Company LLC Data convolution for geographically diverse storage
US10719250B2 (en) 2018-06-29 2020-07-21 EMC IP Holding Company LLC System and method for combining erasure-coded protection sets
US11436203B2 (en) 2018-11-02 2022-09-06 EMC IP Holding Company LLC Scaling out geographically diverse storage
US10901635B2 (en) 2018-12-04 2021-01-26 EMC IP Holding Company LLC Mapped redundant array of independent nodes for data storage with high performance using logical columns of the nodes with different widths and different positioning patterns
US10931777B2 (en) 2018-12-20 2021-02-23 EMC IP Holding Company LLC Network efficient geographically diverse data storage system employing degraded chunks
US11119683B2 (en) 2018-12-20 2021-09-14 EMC IP Holding Company LLC Logical compaction of a degraded chunk in a geographically diverse data storage system
US10892782B2 (en) 2018-12-21 2021-01-12 EMC IP Holding Company LLC Flexible system and method for combining erasure-coded protection sets
US11023331B2 (en) 2019-01-04 2021-06-01 EMC IP Holding Company LLC Fast recovery of data in a geographically distributed storage environment
US10768840B2 (en) 2019-01-04 2020-09-08 EMC IP Holding Company LLC Updating protection sets in a geographically distributed storage environment
US10942827B2 (en) 2019-01-22 2021-03-09 EMC IP Holding Company LLC Replication of data in a geographically distributed storage environment
US10846003B2 (en) 2019-01-29 2020-11-24 EMC IP Holding Company LLC Doubly mapped redundant array of independent nodes for data storage
US10936239B2 (en) 2019-01-29 2021-03-02 EMC IP Holding Company LLC Cluster contraction of a mapped redundant array of independent nodes
US10866766B2 (en) 2019-01-29 2020-12-15 EMC IP Holding Company LLC Affinity sensitive data convolution for data storage systems
US10942825B2 (en) 2019-01-29 2021-03-09 EMC IP Holding Company LLC Mitigating real node failure in a mapped redundant array of independent nodes
US10944826B2 (en) 2019-04-03 2021-03-09 EMC IP Holding Company LLC Selective instantiation of a storage service for a mapped redundant array of independent nodes
US11029865B2 (en) 2019-04-03 2021-06-08 EMC IP Holding Company LLC Affinity sensitive storage of data corresponding to a mapped redundant array of independent nodes
US11113146B2 (en) 2019-04-30 2021-09-07 EMC IP Holding Company LLC Chunk segment recovery via hierarchical erasure coding in a geographically diverse data storage system
US11121727B2 (en) 2019-04-30 2021-09-14 EMC IP Holding Company LLC Adaptive data storing for data storage systems employing erasure coding
US11119686B2 (en) 2019-04-30 2021-09-14 EMC IP Holding Company LLC Preservation of data during scaling of a geographically diverse data storage system
US11748004B2 (en) 2019-05-03 2023-09-05 EMC IP Holding Company LLC Data replication using active and passive data storage modes
US11209996B2 (en) 2019-07-15 2021-12-28 EMC IP Holding Company LLC Mapped cluster stretching for increasing workload in a data storage system
US11449399B2 (en) 2019-07-30 2022-09-20 EMC IP Holding Company LLC Mitigating real node failure of a doubly mapped redundant array of independent nodes
US11023145B2 (en) 2019-07-30 2021-06-01 EMC IP Holding Company LLC Hybrid mapped clusters for data storage
US11228322B2 (en) 2019-09-13 2022-01-18 EMC IP Holding Company LLC Rebalancing in a geographically diverse storage system employing erasure coding
US11449248B2 (en) 2019-09-26 2022-09-20 EMC IP Holding Company LLC Mapped redundant array of independent data storage regions
US11288139B2 (en) 2019-10-31 2022-03-29 EMC IP Holding Company LLC Two-step recovery employing erasure coding in a geographically diverse data storage system
US11435910B2 (en) 2019-10-31 2022-09-06 EMC IP Holding Company LLC Heterogeneous mapped redundant array of independent nodes for data storage
US11119690B2 (en) 2019-10-31 2021-09-14 EMC IP Holding Company LLC Consolidation of protection sets in a geographically diverse data storage environment
US11435957B2 (en) 2019-11-27 2022-09-06 EMC IP Holding Company LLC Selective instantiation of a storage service for a doubly mapped redundant array of independent nodes
US11144220B2 (en) 2019-12-24 2021-10-12 EMC IP Holding Company LLC Affinity sensitive storage of data corresponding to a doubly mapped redundant array of independent nodes
US11231860B2 (en) 2020-01-17 2022-01-25 EMC IP Holding Company LLC Doubly mapped redundant array of independent nodes for data storage with high performance
US11507308B2 (en) 2020-03-30 2022-11-22 EMC IP Holding Company LLC Disk access event control for mapped nodes supported by a real cluster storage system
US11288229B2 (en) 2020-05-29 2022-03-29 EMC IP Holding Company LLC Verifiable intra-cluster migration for a chunk storage system
US11693983B2 (en) 2020-10-28 2023-07-04 EMC IP Holding Company LLC Data protection via commutative erasure coding in a geographically diverse data storage system
US11847141B2 (en) 2021-01-19 2023-12-19 EMC IP Holding Company LLC Mapped redundant array of independent nodes employing mapped reliability groups for data storage
US11625174B2 (en) 2021-01-20 2023-04-11 EMC IP Holding Company LLC Parity allocation for a virtual redundant array of independent disks
US11354191B1 (en) 2021-05-28 2022-06-07 EMC IP Holding Company LLC Erasure coding in a large geographically diverse data storage system
US11449234B1 (en) 2021-05-28 2022-09-20 EMC IP Holding Company LLC Efficient data access operations via a mapping layer instance for a doubly mapped redundant array of independent nodes

Family Cites Families (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE36462E (en) * 1986-01-16 1999-12-21 International Business Machines Corporation Method to control paging subsystem processing in virtual memory data processing system during execution of critical code sections
US5287496A (en) 1991-02-25 1994-02-15 International Business Machines Corporation Dynamic, finite versioning for concurrent transaction and query processing
US5278838A (en) * 1991-06-18 1994-01-11 Ibm Corp. Recovery from errors in a redundant array of disk drives
US5371882A (en) * 1992-01-14 1994-12-06 Storage Technology Corporation Spare disk drive replacement scheduling system for a disk drive array data storage subsystem
US5331646A (en) * 1992-05-08 1994-07-19 Compaq Computer Corporation Error correcting code technique for improving reliablility of a disk array
US5963962A (en) * 1995-05-31 1999-10-05 Network Appliance, Inc. Write anywhere file-system layout
JP2735479B2 (ja) 1993-12-29 1998-04-02 株式会社東芝 メモリ・スナップショット方法及びメモリ・スナップショット機能を持つ情報処理装置
US5572661A (en) * 1994-10-05 1996-11-05 Hewlett-Packard Company Methods and system for detecting data loss in a hierarchic data storage system
JPH0944381A (ja) 1995-07-31 1997-02-14 Toshiba Corp データ格納方法およびデータ格納装置
US5809224A (en) * 1995-10-13 1998-09-15 Compaq Computer Corporation On-line disk array reconfiguration
KR100208801B1 (ko) * 1996-09-16 1999-07-15 윤종용 데이타 입/출력 성능을 향상시키기 위한 기억장치 시스템 및 그에 따른 데이타 복구정보 캐시구현방법
KR100275900B1 (ko) * 1996-09-21 2000-12-15 윤종용 알에이아이디 서브시스템에 있어서 분할패러티 예비 디스크 구현방법
US5950218A (en) * 1996-11-04 1999-09-07 Storage Technology Corporation Method and system for storage and retrieval of data on a tape medium
US6275897B1 (en) * 1997-06-17 2001-08-14 Emc Corporation Remote cache utilization for mirrored mass storage subsystem
US6192444B1 (en) * 1998-01-05 2001-02-20 International Business Machines Corporation Method and system for providing additional addressable functional space on a disk for use with a virtual data storage subsystem
US6212531B1 (en) * 1998-01-13 2001-04-03 International Business Machines Corporation Method for implementing point-in-time copy using a snapshot function
US6078932A (en) * 1998-01-13 2000-06-20 International Business Machines Corporation Point-in-time backup utilizing multiple copy technologies
US6421711B1 (en) 1998-06-29 2002-07-16 Emc Corporation Virtual ports for data transferring of a data storage system
US6366987B1 (en) * 1998-08-13 2002-04-02 Emc Corporation Computer data storage physical backup and logical restore
US6353878B1 (en) * 1998-08-13 2002-03-05 Emc Corporation Remote control of backup media in a secondary storage subsystem through access to a primary storage subsystem
US6269431B1 (en) * 1998-08-13 2001-07-31 Emc Corporation Virtual storage and block level direct access of secondary storage for recovery of backup data
DE59902293D1 (de) 1998-09-01 2002-09-12 Siemens Ag Verfahren zum speichern von daten auf einem speichermedium mit begrenzter speicherkapazitaet
US6311251B1 (en) * 1998-11-23 2001-10-30 Storage Technology Corporation System for optimizing data storage in a RAID system
US6611897B2 (en) * 1999-03-22 2003-08-26 Hitachi, Ltd. Method and apparatus for implementing redundancy on data stored in a disk array subsystem based on use frequency or importance of the data
US6415296B1 (en) * 1999-03-31 2002-07-02 International Business Machines Corporation Method and system for more efficiently providing a copy in a raid data storage system
US7000069B2 (en) 1999-04-05 2006-02-14 Hewlett-Packard Development Company, L.P. Apparatus and method for providing very large virtual storage volumes using redundant arrays of disks
US6904599B1 (en) * 1999-11-29 2005-06-07 Microsoft Corporation Storage management system having abstracted volume providers
US6560615B1 (en) * 1999-12-17 2003-05-06 Novell, Inc. Method and apparatus for implementing a highly efficient, robust modified files list (MFL) for a storage system volume
US6839827B1 (en) * 2000-01-18 2005-01-04 International Business Machines Corporation Method, system, program, and data structures for mapping logical blocks to physical blocks
US6779095B2 (en) * 2000-06-19 2004-08-17 Storage Technology Corporation Apparatus and method for instant copy of data using pointers to new and original data in a data location
US7072916B1 (en) * 2000-08-18 2006-07-04 Network Appliance, Inc. Instant snapshot
US6618794B1 (en) * 2000-10-31 2003-09-09 Hewlett-Packard Development Company, L.P. System for generating a point-in-time copy of data in a data storage system
US6799258B1 (en) * 2001-01-10 2004-09-28 Datacore Software Corporation Methods and apparatus for point-in-time volumes
WO2002065275A1 (en) * 2001-01-11 2002-08-22 Yottayotta, Inc. Storage virtualization system and methods
US6990667B2 (en) * 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US7058788B2 (en) 2001-02-23 2006-06-06 Falconstor Software, Inc. Dynamic allocation of computer memory
US6862609B2 (en) * 2001-03-07 2005-03-01 Canopy Group, Inc. Redundant storage for multiple processors in a ring network
US6510500B2 (en) * 2001-03-09 2003-01-21 International Business Machines Corporation System and method for minimizing message transactions for fault-tolerant snapshots in a dual-controller environment
US6915241B2 (en) 2001-04-20 2005-07-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method for segmentation and identification of nonstationary time series
JP4175788B2 (ja) * 2001-07-05 2008-11-05 株式会社日立製作所 ボリューム制御装置
US6948038B2 (en) 2001-07-24 2005-09-20 Microsoft Corporation System and method for backing up and restoring data
KR100392382B1 (ko) * 2001-07-27 2003-07-23 한국전자통신연구원 동적 크기 변경 및 메타 데이터 양의 최소화를 위한 논리볼륨 관리 방법
US6636778B2 (en) * 2001-09-10 2003-10-21 International Business Machines Corporation Allocation of data storage drives of an automated data storage library
US6823436B2 (en) * 2001-10-02 2004-11-23 International Business Machines Corporation System for conserving metadata about data snapshots
US6877109B2 (en) * 2001-11-19 2005-04-05 Lsi Logic Corporation Method for the acceleration and simplification of file system logging techniques using storage device snapshots
IL147073A0 (en) * 2001-12-10 2002-08-14 Monosphere Ltd Method for managing the storage resources attached to a data network
US7173929B1 (en) * 2001-12-10 2007-02-06 Incipient, Inc. Fast path for performing data operations
US7237075B2 (en) * 2002-01-22 2007-06-26 Columbia Data Products, Inc. Persistent snapshot methods
US20030220948A1 (en) * 2002-01-22 2003-11-27 Columbia Data Products, Inc. Managing snapshot/backup collections in finite data storage
US6829617B2 (en) * 2002-02-15 2004-12-07 International Business Machines Corporation Providing a snapshot of a subset of a file system
US7254813B2 (en) * 2002-03-21 2007-08-07 Network Appliance, Inc. Method and apparatus for resource allocation in a raid system
US7085956B2 (en) 2002-04-29 2006-08-01 International Business Machines Corporation System and method for concurrent logical device swapping
US6732171B2 (en) * 2002-05-31 2004-05-04 Lefthand Networks, Inc. Distributed network storage system with virtualization
US6938123B2 (en) 2002-07-19 2005-08-30 Storage Technology Corporation System and method for raid striping
US6957362B2 (en) * 2002-08-06 2005-10-18 Emc Corporation Instantaneous restoration of a production copy from a snapshot copy in a data storage system
US7107385B2 (en) * 2002-08-09 2006-09-12 Network Appliance, Inc. Storage virtualization by layering virtual disk objects on a file system
US7107417B2 (en) 2002-08-29 2006-09-12 International Business Machines Corporation System, method and apparatus for logical volume duplexing in a virtual tape system
US7191304B1 (en) 2002-09-06 2007-03-13 3Pardata, Inc. Efficient and reliable virtual volume mapping
US7089395B2 (en) 2002-10-03 2006-08-08 Hewlett-Packard Development Company, L.P. Computer systems, virtual storage systems and virtual storage system operational methods
US6857057B2 (en) * 2002-10-03 2005-02-15 Hewlett-Packard Development Company, L.P. Virtual storage systems and virtual storage system operational methods
US6952794B2 (en) 2002-10-10 2005-10-04 Ching-Hung Lu Method, system and apparatus for scanning newly added disk drives and automatically updating RAID configuration and rebuilding RAID data
US6981114B1 (en) 2002-10-16 2005-12-27 Veritas Operating Corporation Snapshot reconstruction from an existing snapshot and one or more modification logs
KR100439675B1 (ko) 2002-10-24 2004-07-14 한국전자통신연구원 대용량 공유 저장장치를 위한 효율적인 스냅샷 수행방법
US6957294B1 (en) 2002-11-15 2005-10-18 Unisys Corporation Disk volume virtualization block-level caching
US7284016B2 (en) * 2002-12-03 2007-10-16 Emc Corporation Client-server protocol for directory access of snapshot file systems in a storage system
US7263582B2 (en) * 2003-01-07 2007-08-28 Dell Products L.P. System and method for raid configuration
JP4283004B2 (ja) * 2003-02-04 2009-06-24 株式会社日立製作所 ディスク制御装置およびディスク制御装置の制御方法
US7231544B2 (en) * 2003-02-27 2007-06-12 Hewlett-Packard Development Company, L.P. Restoring data from point-in-time representations of the data
US7111147B1 (en) 2003-03-21 2006-09-19 Network Appliance, Inc. Location-independent RAID group virtual block management
JP2004348193A (ja) 2003-05-20 2004-12-09 Hitachi Ltd 情報処理システムおよびそのバックアップ方法
US7379954B2 (en) * 2003-07-08 2008-05-27 Pillar Data Systems, Inc. Management of file system snapshots
US6959313B2 (en) * 2003-07-08 2005-10-25 Pillar Data Systems, Inc. Snapshots of file systems in data storage systems
US20050010731A1 (en) * 2003-07-08 2005-01-13 Zalewski Stephen H. Method and apparatus for protecting data against any category of disruptions
JP4321705B2 (ja) 2003-07-29 2009-08-26 株式会社日立製作所 スナップショットの取得を制御するための装置及び記憶システム
WO2005017737A2 (en) 2003-08-14 2005-02-24 Compellent Technologies Virtual disk drive system and method
CN101566930B (zh) * 2003-08-14 2013-10-16 克姆佩棱特科技公司 虚拟磁盘驱动系统和方法
DE10348500B4 (de) * 2003-10-18 2009-07-30 Inos Automationssoftware Gmbh Verfahren und Vorrichtung zum Erfassen eines Spaltmaßes und/oder eines Versatzes zwischen einer Klappe eines Fahrzeugs und der übrigen Fahrzeugkarosserie
US7133884B1 (en) 2003-11-26 2006-11-07 Bmc Software, Inc. Unobtrusive point-in-time consistent copies
JP4681249B2 (ja) 2004-04-09 2011-05-11 株式会社日立製作所 ディスクアレイ装置
US7409518B2 (en) * 2004-05-21 2008-08-05 International Business Machines Corporation Method for improving disk space allocation
US7603532B2 (en) * 2004-10-15 2009-10-13 Netapp, Inc. System and method for reclaiming unused space from a thinly provisioned data container
US7873782B2 (en) * 2004-11-05 2011-01-18 Data Robotics, Inc. Filesystem-aware block storage system, apparatus, and method
JP4749112B2 (ja) 2005-10-07 2011-08-17 株式会社日立製作所 記憶制御システム及び方法
US8095641B2 (en) 2005-10-27 2012-01-10 International Business Machines Corporation Method and system for virtualized health monitoring of resources
JP4694350B2 (ja) 2005-11-08 2011-06-08 株式会社日立製作所 ストレージ装置の起動可能なディスクグループ数の管理
US7653832B2 (en) * 2006-05-08 2010-01-26 Emc Corporation Storage array virtualization using a storage block mapping protocol client and server
US7676514B2 (en) * 2006-05-08 2010-03-09 Emc Corporation Distributed maintenance of snapshot copies by a primary processor managing metadata and a secondary processor providing read-write access to a production dataset
US7702662B2 (en) * 2007-05-16 2010-04-20 International Business Machines Corporation Method and system for handling reallocated blocks in a file system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109871209A (zh) * 2018-12-30 2019-06-11 贝壳技术有限公司 列表页面状态恢复方法及装置

Also Published As

Publication number Publication date
US20140089628A1 (en) 2014-03-27
US20080320061A1 (en) 2008-12-25
US8601035B2 (en) 2013-12-03
WO2009002934A1 (en) 2008-12-31
HK1150250A1 (en) 2011-11-11
JP5608251B2 (ja) 2014-10-15
EP2160684A4 (en) 2011-09-07
JP2010531029A (ja) 2010-09-16
EP3361384A1 (en) 2018-08-15
EP2160684A1 (en) 2010-03-10
US9251049B2 (en) 2016-02-02
JP2013080527A (ja) 2013-05-02
CN101878471B (zh) 2013-08-28
CN103500164A (zh) 2014-01-08

Similar Documents

Publication Publication Date Title
CN101878471B (zh) 数据存储空间恢复系统和方法
US9436390B2 (en) Virtual disk drive system and method
US20120124285A1 (en) Virtual disk drive system and method with cloud-based storage media
CN101566929B (zh) 虚拟磁盘驱动系统和方法
CN101477446B (zh) 磁盘阵列系统及其降级或重建状态下的逻辑资源处理方法
EP2385458A2 (en) Virtual disk drive system and method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1150250

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1150250

Country of ref document: HK

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160505

Address after: American Texas

Patentee after: DELL International Ltd

Address before: American Minnesota

Patentee before: Compellent Technologies