Methods for managing snapshots in a distributed de-duplication system and devices thereof

US11860739B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11860739-B2
Application numberUS-202217816457-A
CountryUS
Kind codeB2
Filing dateAug 1, 2022
Priority dateAug 10, 2016
Publication dateJan 2, 2024
Grant dateJan 2, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods, non-transitory computer readable media, and devices that more effectively manage snapshots by creating a namespace including files described by stored file recipe objects and each comprising fragments, directories described by metadata in the file recipe objects and each comprising one or more of the files, and snapshots described by stored snapshot request objects. Content of one of the directories are identified based on an identification of corresponding ones of the file recipe objects that existed within the namespace at a specified time. At least one of the files, included in the identified content and existing within the namespace at the specified time, is accessed in response to one or more received requests. A garbage collection operation is periodically performed to delete the recipe objects that are marked for deletion by tombstone objects and are unreferenced by any of the snapshots as determined based on the snapshot request objects.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: identifying, by a computing device, one or more file recipe objects that existed at a time at which at least a portion of a namespace is to be restored, wherein the portion of the namespace comprises one or more directories and the time is included in a received snapshot access request; determining, by the computing device, from the file recipe objects one or more directory names for one or more of the directories that existed at the time, wherein the file recipe objects each comprise metadata that describes one of the directories and comprises one of the directory names; identifying, by the computing device, content of the one or more of the directories based on the determined directory names; and returning, by the computing device, one or more files, included in the identified content and existing within the namespace at the time, in response to the snapshot access request in order to facilitate restoration of the portion of the namespace. 2. The method as set forth in claim 1 , further comprising periodically performing, by the computing device, a garbage collection operation to delete one or more of the file recipe objects that are marked for deletion by one or more stored tombstone objects. 3. The method as set forth in claim 2 , further comprising identifying, by the computing device, a snapshot request object based on the time, wherein the snapshot request object defines a plurality of snapshot parameters including a time range for a snapshot associated with the snapshot request object and each of the file recipe objects intersects with the time range. 4. The method as set forth in claim 3 , further comprising marking, by the computing device, the one or more file recipe objects for deletion by the one or more stored tombstone objects when the one or more of the file recipe objects are outside of the time range. 5. The method as set forth in claim 1 , wherein one of the file recipe objects comprises an ordered list of hash values for fragment objects that collectively comprise one of the files and the method further comprises obtaining, by the computing device, each of the fragment objects from one or more storage repositories using the hash values. 6. The method as set forth in claim 5 , further comprising reassembling, by the computing device, the fragment objects to form the file before returning the file in response to the snapshot access request. 7. A non-transitory machine readable medium having stored thereon instructions for managing snapshots comprising machine executable code which when executed by a machine, causes the machine to: identify one or more file recipe objects that existed at a time at which at least a portion of a namespace is to be restored, wherein the portion of the namespace comprises one or more directories and the time is included in a received snapshot access request; determine from the file recipe objects one or more directory names for one or more of the directories that existed at the time, wherein the file recipe objects each comprise metadata that describes one of the directories and comprises one of the directory names; identify content of the one or more of the directories based on the determined directory names, wherein the content comprises one or more files existing within the namespace at the time; and return the one or more files in response to the snapshot access request in order to facilitate restoration of the portion of the namespace. 8. The non-transitory machine readable medium as set forth in claim 7 , wherein the machine executable code, when executed by the machine, further causes the machine to periodically perform garbage collection operation to delete one or more of the file recipe objects that are marked for deletion by one or more stored tombstone objects. 9. The non-transitory machine readable medium as set forth in claim 8 , wherein the machine executable code, when executed by the machine, further causes the machine to identify a snapshot request object based on the time, wherein the snapshot request object defines a plurality of snapshot parameters including a time range for a snapshot associated with the snapshot request object and each of the file recipe objects intersects with the time range. 10. The non-transitory machine readable medium as set forth in claim 9 , wherein the machine executable code, when executed by the machine, further causes the machine to mark the one or more file recipe objects for deletion by the one or more stored tombstone objects when the one or more of the file recipe objects are outside of the time range. 11. The non-transitory machine readable medium as set forth in claim 7 , wherein the of the file recipe objects comprises an ordered list of hash values for fragment objects that collectively comprise one of the files and the machine executable code, when executed by the machine, further causes the machine to obtain each of the fragment objects from one or more storage repositories using the hash values. 12. The non-transitory machine readable medium as set forth in claim 11 , wherein the machine executable code, when executed by the machine, further causes the machine to reassemble the fragment objects to form the file before returning the file in response to the snapshot access request. 13. A computing device comprising: a memory containing a machine readable medium comprising machine executable code having stored thereon instructions for managing snapshots; and a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to: identify a file recipe object that existed at a time at which a namespace is to be restored, wherein the namespace comprises a directory and the time is included in a received snapshot access request; determine from the file recipe object a directory name for the directory, wherein the file recipe object comprises metadata that describes the directory and comprises the directory name; identify content of the directory based on the directory name; and return one or more files, included in the identified content and existing within the namespace at the time, in response to the snapshot access request. 14. The computing device as set forth in claim 13 , wherein the processor is further configured to execute the machine executable code to cause the processor to periodically perform garbage collection operation to delete one or more file recipe objects that are marked for deletion by one or more stored tombstone objects. 15. The computing device as set forth in claim 14 , wherein the processor is further configured to execute the machine executable code to cause the processor to identify a snapshot request object based on the time, wherein the snapshot request object defines a plurality of snapshot parameters including a time range for a snapshot associated with the snapshot request object and each of the one or more file recipe objects intersects with the time range. 16. The computing device as set forth in claim 15 , wherein the processor is further configured to execute the machine executable code to cause the processor to mark the one or more file recipe objects for deletion by the one or more stored tombstone objects when the one or more file recipe objects are outside of the time range. 17. The computing device as set forth in claim 13 , wherein the file recipe object comprises an ordered list of hash values for fragment objects that collectively comprise the file and the processor is further configured to execute the machine executable code to cause

Assignees

Inventors

Classifications

  • Management of the data involved in backup or backup restore · CPC title

  • using file system or storage system metadata · CPC title

  • Garbage collection, i.e. reclamation of unreferenced memory · CPC title

  • Details of de-fragmentation performed by the file system (saving storage space on storage systems G06F3/0608; management of blocks in storage devices G06F3/064) · CPC title

  • implemented using Network-attached Storage [NAS] architecture (distributed or networked storage systems G06F3/067; protocols for distributed storage of data in a network H04L67/1097) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11860739B2 cover?
Methods, non-transitory computer readable media, and devices that more effectively manage snapshots by creating a namespace including files described by stored file recipe objects and each comprising fragments, directories described by metadata in the file recipe objects and each comprising one or more of the files, and snapshots described by stored snapshot request objects. Content of one of t…
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/1448. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 02 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).