Backoff-based scheduling of storage object deletions
US-9063946-B1 · Jun 23, 2015 · US
US9785643B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9785643-B1 |
| Application number | US-201314019971-A |
| Country | US |
| Kind code | B1 |
| Filing date | Sep 6, 2013 |
| Priority date | Sep 6, 2013 |
| Publication date | Oct 10, 2017 |
| Grant date | Oct 10, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computer-implemented method for reclaiming storage space in deduplicating data systems may include (1) storing at least one non-synthesized backup image within a deduplicating data system by storing at least one data segment of the non-synthesized backup image within a container of deduplicated data segments that is used by the deduplicating data system, (2) storing at least one synthesized backup image within the deduplicating data system by referencing at least one previously stored data segment within the container that is also referenced by a previous backup image within the deduplicating data system, (3) determining that no non-synthesized backup images still reference the container, and (4) removing the data segment of the non-synthesized backup image from the container of deduplicated data segments in response to determining that no non-synthesized backup images still reference the container. Various other methods, systems, and computer-readable media are also disclosed.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method for reclaiming storage space in deduplicating data systems, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising: storing at least one non-synthesized backup image within a deduplicating data system by storing at least one data segment of the non-synthesized backup image within a container of deduplicated data segments that is used by the deduplicating data system, wherein storing the non-synthesized backup image within the deduplicating data system comprises storing the non-synthesized backup within the deduplicating data system before the container no longer accepts new deduplicated data segments; storing at least one synthesized backup image within the deduplicating data system by referencing at least one previously stored data segment within the container that is also referenced by a previous backup image within the deduplicating data system, wherein the synthesized backup image was derived from a plurality of existing backup images comprising the previous backup image, wherein storing the synthesized backup image within the deduplicating data system comprises storing the synthesized backup image within the deduplicating data system after the container no longer accepts new deduplicated data segments: determining that no non-synthesized backup images still reference the container; removing the data segment of the non-synthesized backup image from the container of deduplicated data segments in response to determining that no non-synthesized backup images still reference the container and determining that no synthesized backup image references the data segment. 2. The computer-implemented method of claim 1 , wherein storing the synthesized backup image within the deduplicating data system comprises storing an indication of an initial location within the container of the previously stored data segment in a container map. 3. The computer-implemented method of claim 2 , wherein removing the data segment of the non-synthesized backup image from the container comprises: compacting the container by moving the previously stored data segment to a new location within the container; storing an indication of the new location within the container of the previously stored data segment in the container map. 4. The computer-implemented method of claim 1 , wherein: storing the non-synthesized backup image comprises incrementing a non-synthesized reference count for the container; storing the synthesized backup image comprises incrementing a synthesized reference count for the container; determining that no non-synthesized backup images still reference the container comprises determining that the non-synthesized reference count for the container is at zero. 5. The computer-implemented method of claim 1 , wherein the container expires at a predetermined time, before which the container accepts new deduplicated data segments and after which the container no longer accepts new deduplicated data segments. 6. The computer-implemented method of claim 1 , further comprising restoring the synthesized backup image by retrieving a current location within the container of the previously stored data segment from a container map that corresponds to the container. 7. A system for reclaiming storage space in deduplicating data systems, the system comprising: a storing module that stores at least one non-synthesized backup image within a deduplicating data system by storing at least one data segment of the non-synthesized backup image within a container of deduplicated data segments that is used by the deduplicating data system, wherein storing the non-synthesized backup image within the deduplicating data system comprises storing the non-synthesized backup within the deduplicating data system before the container no longer accepts new deduplicated data segments; a synthesizing module that stores at least one synthesized backup image within the deduplicating data system by referencing at least one previously stored data segment within the container that is also referenced by a previous backup image within the deduplicating data system, wherein the synthesized backup image was derived from a plurality of existing backup images comprising the previous backup image, wherein storing the synthesized backup image within the deduplicating data system comprises storing the synthesized backup image within the deduplicating data system after the container no longer accepts new deduplicated data segments; a determination module that determines that no non-synthesized backup images still reference the container; a removing module that removes the data segment of the non-synthesized backup image from the container of deduplicated data segments in response to determining that no non-synthesized backup images still reference the container and determining that no synthesized backup image references the data segment; at least one processor configured to execute the storing module, the synthesizing module, the determination module, and the removing module. 8. The system of claim 7 , wherein the synthesizing module stores the synthesized backup image within the deduplicating data system by storing an indication of an initial location within the container of the previously stored data segment in a container map. 9. The system of claim 8 , wherein the removing module removes the data segment of the non-synthesized backup from the container by: compacting the container by moving the previously stored data segment to a new location within the container; storing an indication of the new location within the container of the previously stored data segment in the container map. 10. The system of claim 7 , wherein: the storing module stores the non-synthesized backup image by incrementing a non-synthesized reference count for the container; the synthesizing module stores the synthesized backup image by incrementing a synthesized reference count for the container; the determination module determines that no non-synthesized backup images still reference the container by determining that the non-synthesized reference count for the container is at zero. 11. The system of claim 7 , wherein the container expires at a predetermined time, before which the container accepts new deduplicated data segments and after which the container no longer accepts new deduplicated data segments. 12. The system of claim 7 , further comprising a restoring module that restores the synthesized backup image by retrieving a current location within the container of the previously stored data segment from a container map that corresponds to the container. 13. A non-transitory computer-readable-storage medium comprising one or more computer-readable instructions that, when executed by at least one processor of a computing device, cause the computing device to: store at least one non-synthesized backup image within a deduplicating data system by storing at least one data segment of the non-synthesized backup image within a container of deduplicated data segments that is used by the deduplicating data system, wherein storing the non-synthesized backup image within the deduplicating data system comprises storing the non-synthesized backup within the deduplicating data system before the container no longer accepts new deduplicated data segments; store at least one synthesized backup image within the deduplicating data system by referencing at least one previously stored data segment within the container that is also referenced by a previous backup image within the deduplicating data system, wherein the synthesized
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Using snapshots, i.e. a logical point-in-time copy of the data · CPC title
De-duplication techniques · CPC title
De-duplication implemented within the file system, e.g. based on file segments (de-duplication techniques in storage systems for the management of data blocks G06F3/0641) · CPC title
using de-duplication of the data · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.