Deduplicated merged indexed object storage file system

US11599507B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11599507-B2
Application numberUS-202117546524-A
CountryUS
Kind codeB2
Filing dateDec 9, 2021
Priority dateOct 26, 2017
Publication dateMar 7, 2023
Grant dateMar 7, 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.

A file system may include an object storage, a merged index, and a distributed database. When a file is stored in the file system, the file may be converted to an object and be stored in the object storage. The deduplication index of the file may be stored in the distributed database. The namespace metadata of the file may be stored in the merged index. The merged index generates namespace entries of the file when the file is created, deleted, and/or modified. A namespace entry may be associated with a specific file and may include a creation version and a deletion version. When a file is deleted or modified, instead of modifying the existing namespace entries, new entries associated with different versions and including different creation or deletion versions are created. The status of a file may be monitored by one or more entries associated with a file.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for operating a file system, the method comprising: generating, responsive to a creation of a first version of a file captured in a first snapshot, a first namespace entry associated with the first version, the first namespace entry comprising a first creation version corresponding to the first snapshot; generating, responsive to a modification of the file from the first version to a second version captured in a second snapshot, a second namespace entry associated with the first version, the second namespace entry comprising a second creation version corresponding to the first snapshot and a second deletion version corresponding to the second snapshot; and generating a third namespace entry associated with the second version, the third namespace entry comprising a third creation version corresponding to the second snapshot and a third deletion version corresponding to no snapshot. 2. The method of claim 1 , wherein the first namespace entry is included in a first object that is stored in an object storage and the second namespace entry is included in a second object that is stored in the object storage, the second object being different from the first object. 3. The method of claim 2 , further comprising: merging the first object and the second object to generate a third object, the third object comprising at least one namespace entry copied from the first object and at least one namespace entry copied from the second object. 4. The method of claim 1 , further comprising: generating a fourth namespace entry is created by merging the first and second namespace entries, the fourth namespace entry a fourth creation version corresponding to the first snapshot and a fourth deletion version corresponding to the second snapshot. 5. The method of claim 1 , further comprising: providing, responsive to a request to list the second snapshot, a response indicating the first version of the file is not in the second snapshot based on the second deletion version in the second namespace entry. 6. The method of claim 1 , further comprising: removing the first snapshot as an active snapshot; and compacting at least the first namespace entry and the second namespace entry. 7. The method of claim 1 , further comprising: accessing a plurality of namespace entries that are associated with the file; and creating a merged namespace entry comprising a creation version selected from a first of the plurality of namespace entries and a deletion version selected from a second of the plurality of namespace entries. 8. A non-transitory computer-readable medium configured to store computer code comprising instructions, the instructions, when executed by one or more processors, causes the one or more processors to: generate, responsive to a creation of a first version of a file captured in a first snapshot, a first namespace entry associated with the first version, the first namespace entry comprising a first creation version corresponding to the first snapshot; generate, responsive to a modification of the file from the first version to a second version captured in a second snapshot, a second namespace entry associated with the first version, the second namespace entry comprising a second creation version corresponding to the first snapshot and a second deletion version corresponding to the second snapshot; and generate a third namespace entry associated with the second version, the third namespace entry comprising a third creation version corresponding to the second snapshot and a third deletion version corresponding to no snapshot. 9. The non-transitory computer-readable medium of claim 8 , wherein the first namespace entry is included in a first object that is stored in an object storage and the second namespace entry is included in a second object that is stored in the object storage, the second object being different from the first object. 10. The non-transitory computer-readable medium of claim 9 , wherein the instructions, when executed, further cause the one or more processors to: merge the first object and the second object to generate a third object, the third object comprising at least one namespace entry copied from the first object and at least one namespace entry copied from the second object. 11. The non-transitory computer-readable medium of claim 8 , wherein the instructions, when executed, further cause the one or more processors to: generate a fourth namespace entry is created by merging the first and second namespace entries, the fourth namespace entry a fourth creation version corresponding to the first snapshot and a fourth deletion version corresponding to the second snapshot. 12. The non-transitory computer-readable medium of claim 8 , wherein the instructions, when executed, further cause the one or more processors to: provide, responsive to a request to list the second snapshot, a response indicating the first version of the file is not in the second snapshot based on the second deletion version in the second namespace entry. 13. The non-transitory computer-readable medium of claim 8 , wherein the instructions, when executed, further cause the one or more processors to: remove the first snapshot as an active snapshot; and compact at least the first namespace entry and the second namespace entry. 14. The non-transitory computer-readable medium of claim 8 , wherein the instructions, when executed, further cause the one or more processors to: access a plurality of namespace entries that are associated with the file; and create a merged namespace entry comprising a creation version selected from a first of the plurality of namespace entries and a deletion version selected from a second of the plurality of namespace entries. 15. A system comprising: a client device configured to store a file; and an index system in communication with the client device, the index system comprising memory and one or more processors, the memory configured to store computer code comprising instructions, the instructions, when executed by the one or more processors, cause the one or more processors to: generate, responsive to a creation of a first version of the file captured in a first snapshot, a first namespace entry associated with the first version, the first namespace entry comprising a first creation version corresponding to the first snapshot; generate, responsive to a modification of the file from the first version to a second version captured in a second snapshot, a second namespace entry associated with the first version, the second namespace entry comprising a second creation version corresponding to the first snapshot and a second deletion version corresponding to the second snapshot; and generate a third namespace entry associated with the second version, the third namespace entry comprising a third creation version corresponding to the second snapshot and a third deletion version corresponding to no snapshot. 16. The system of claim 15 , wherein the first namespace entry is included in a first object that is stored in an object storage and the second namespace entry is included in a second object that is stored in the object storage, the second object being different from the first object. 17. The system of claim 16 , wherein the instructions, when executed, further cause the one or more processors to: merge the first object and the second object to generate a third object, the third object comprising at least one namespace entry copied from the first object and at least one namespace entry copied from the second object.

Assignees

Inventors

Classifications

  • 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

  • File access structures, e.g. distributed indices (arrangements of input from, or output to, record carriers G06F3/06) · CPC title

  • Versioning file systems, temporal file systems, e.g. file system supporting different historic versions of files · CPC title

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • using management policies (point-in-time backing up or restoration of persistent data G06F11/1446; file migration policies for HSM systems G06F16/185) · 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 US11599507B2 cover?
A file system may include an object storage, a merged index, and a distributed database. When a file is stored in the file system, the file may be converted to an object and be stored in the object storage. The deduplication index of the file may be stored in the distributed database. The namespace metadata of the file may be stored in the merged index. The merged index generates namespace entr…
Who is the assignee on this patent?
Druva Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/128. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 07 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).