Garbage collection for objects within object store

US11630807B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11630807-B2
Application numberUS-202117321546-A
CountryUS
Kind codeB2
Filing dateMay 17, 2021
Priority dateMar 8, 2019
Publication dateApr 18, 2023
Grant dateApr 18, 2023

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.

Techniques are provided for managing objects within an object store. An object is maintained within an object store. The object is used to store data of a snapshot of a file system hosted by a remote computing device. A determination is made that the snapshot was deleted by the remote computing device. Bitmaps describing objects within the object store that are related to snapshots of the file system are evaluated to determine that the object is unique to the deleted snapshot. The object is freed from storage within the object store.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: maintaining an object, comprising a plurality of slots, within an object store, wherein the object comprises an object header used to store metadata for each slot, and wherein the object is used to store data of a storage system hosted by a remote computing device; determining that the storage system no longer references the data; and freeing at least a portion of the object identified using the metadata within the object header based upon the storage system no longer referencing the data. 2. The method of claim 1 , wherein the freeing comprises: deleting the object from the object store. 3. The method of claim 1 , wherein the freeing comprises: freeing the object based upon a determination that a file system and snapshots managed by the storage system no longer reference the data. 4. The method of claim 1 , wherein the freeing comprises: freeing a first subset of the plurality of slots that comprise the data. 5. The method of claim 4 , comprising: retaining a second subset of the plurality of slots that do not comprise the data. 6. The method of claim 1 , wherein the free comprises: identifying a set of cloud block numbers associated with the data; and utilizing the set of cloud block numbers to free one or more slots of the object comprising the data. 7. The method of claim 6 , comprising: invoking a garbage collector to evaluate mapping metadata to identify the set of cloud block numbers. 8. A non-transitory machine readable medium comprising instructions for performing a method, which when executed by a machine, causes the machine to: maintain an object, comprising a plurality of slots, within an object store, wherein the object comprises an object header used to store metadata for each slot, and wherein the object is used to store data of a storage system hosted by a remote computing device; determine that the storage system no longer references the data; and free at least a portion of the object identified using the metadata within the object header based upon the storage system no longer referencing the data. 9. The non-transitory machine readable medium of claim 8 , wherein the instructions cause the machine to: delete the object from the object store. 10. The non-transitory machine readable medium of claim 8 , wherein the instructions cause the machine to: free the object based upon a determination that a file system and snapshots managed by the storage system no longer reference the data. 11. The non-transitory machine readable medium of claim 8 , wherein the instructions cause the machine to: free a first subset of the plurality of slots that comprise the data. 12. The non-transitory machine readable medium of claim 11 , wherein the instructions cause the machine to: retain a second subset of the plurality of slots that do not comprise the data. 13. The non-transitory machine readable medium of claim 8 , wherein the instructions cause the machine to: identify a set of cloud block numbers associated with the data; and utilize the set of cloud block numbers to free one or more slots of the object comprising the data. 14. The non-transitory machine readable medium of claim 13 , wherein the instructions cause the machine to: invoke a garbage collector to evaluate mapping metadata to identify the set of cloud block numbers. 15. A computing device comprising: a memory comprising machine executable code; and a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to: maintain an object, comprising a plurality of slots, within an object store, wherein the object comprises an object header used to store metadata for each slot, and wherein the object is used to store data of a storage system hosted by a remote computing device; determine that the storage system no longer references the data; and free at least a portion of the object identified using the metadata within the object header based upon the storage system no longer referencing the data. 16. The computing device of claim 15 , wherein the machine executable code cause the processor to: delete the object from the object store. 17. The computing device of claim 15 , wherein the machine executable code cause the processor to: free the object based upon a determination that a file system and snapshots managed by the storage system no longer reference the data. 18. The computing device of claim 15 , wherein the machine executable code cause the processor to: free a first subset of the plurality of slots that comprise the data. 19. The computing device of claim 18 , wherein the machine executable code cause the processor to: retain a second subset of the plurality of slots that do not comprise the data. 20. The computing device of claim 15 , wherein the machine executable code cause the processor to: identify a set of cloud block numbers associated with the data; and utilize the set of cloud block numbers to free one or more slots of the object comprising the data.

Assignees

Inventors

Classifications

  • G06F16/178Primary

    Techniques for file synchronisation in file systems · CPC title

  • G06F16/128Primary

    Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16) · CPC title

  • Delete operations (erasing in storage systems G06F3/0652) · 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 US11630807B2 cover?
Techniques are provided for managing objects within an object store. An object is maintained within an object store. The object is used to store data of a snapshot of a file system hosted by a remote computing device. A determination is made that the snapshot was deleted by the remote computing device. Bitmaps describing objects within the object store that are related to snapshots of the file …
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/178. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 18 2023 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).