Scalable I/O operations on a log-structured merge (LSM) tree

US11675745B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11675745-B2
Application numberUS-202017097473-A
CountryUS
Kind codeB2
Filing dateNov 13, 2020
Priority dateNov 13, 2020
Publication dateJun 13, 2023
Grant dateJun 13, 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 method for managing data associated with objects stored in a cloud storage is provided. The method receives, at a first compute node, first data associated with an object stored in the cloud storage, the first compute node being one of a plurality of compute nodes that store data associated with different objects as storage objects in a log-structured merging (LSM) tree data structure. The method then assigns a first unique name to a first storage object associated with the first data, the first unique name comprising a combination of at least an identifier identifying the first compute node and a first incremental local value. The method stores the first storage object in a first level (L0) of the LSM tree data structure.

First claim

Opening claim text (preview).

We claim: 1. A method for managing data associated with objects stored in a cloud storage, comprising: receiving, at a first compute node, first data associated with an object stored in the cloud storage, the first compute node being one of a plurality of compute nodes that store data associated with different objects as storage objects in a log-structured merging (LSM) tree data structure; assigning, by the first compute node, a first unique name to a first storage object associated with the first data, the first unique name comprising a combination of at least an identifier identifying the first compute node and a first incremental local value; storing the first storage object in a first level (LO) of the LSM tree data structure; receiving, at the first compute node, second data associated with the object; assigning, by the first compute node, a second unique name to a second storage object associated with the second data, the second unique name comprising a combination of at least the identifier identifying the first compute node and a second incremental local value that is equal to the first incremental local value incremented; and storing the second storage object in the LO of the LSM tree data structure. 2. The method of claim 1 , wherein a storage object comprises a sorted string table (SSTable) having at least one key that maps to a value, wherein each compute node in the plurality of compute nodes is assigned a different range of keys to store in SSTables of the LSM tree data structure. 3. The method of claim 1 , wherein a second compute node in the plurality of compute nodes stores a third storage object in the LSM tree data structure by: assigning a third unique name to the third storage object, the third unique name comprising a combination of at least a second identifier identifying the second compute node and a third incremental local value; and storing the third storage object in the L0 of the LSM tree data structure. 4. The method of claim 1 , wherein when a size of the LO reaches a threshold, a merging entity moves a plurality of storage objects stored in the LO, including the first and second storage objects, to a second level (L1) of the LSM tree data structure to make the LO available for storing additional data, the moving comprising: determining that the first and second storage objects share the identifier indentifying the first compute node in their respective first and second unique names; based on the determining, merging the first and second storage objects into a merged storage object; and moving the merged storage object to the L1 of the LSM tree. 5. The method of claim 4 , wherein the plurality of storage objects in the L0 further comprises a third storage object and a fourth storage object, wherein the first and second storage objects are within a first shard of a plurality of shards, and the third and fourth storage objects are within a second shard of the plurality of shards, and wherein when the size of the L0 reaches the threshold, the merging entity merges and moves storage objects that are within the first shard to the L1, and a second merging entity merges and moves storage objects that are within the second shard to the L1. 6. The method of claim 5 , wherein the merging entity is assigned a first range of keys to merge and move to lower levels of the LSM tree data structure and the second merging entity is assigned a second range of keys to merge and move to the lower levels, and wherein at least one of the first and second ranges of keys is readjusted when a total size of data storage objects within a corresponding shard exceeds a threshold. 7. The method of claim 1 , wherein the object comprises a virtual disk of a virtual machine and the first data associated with the object comprises metadata associated with the virtual disk, wherein the virtual disk is stored in the cloud storage in a log-structured file system (LFS) data structure, while the metadata is stored in the same or different cloud storage in the LSM tree data structure. 8. The method of claim 1 , wherein receiving the first data associated with the object comprises receiving the first data from an uploader agent residing in a host machine of a datacenter, wherein the object comprises a virtual disk of a virtual machine executing on the host machine. 9. The method of claim 8 , wherein a second datacenter retrieves data of the virtual disk from the cloud storage and the first storage object from the LSM tree data structure to recover and run the virtual machine in case of a failure in the datacenter. 10. A non-transitory computer readable medium comprising instructions that, when executed by one or more processors of a computing system, cause the computing system to perform a method for managing data associated with objects stored in a cloud storage, the method comprising: receiving, at a first compute node, first data associated with an object stored in the cloud storage, the first compute node being one of a plurality of compute nodes that store data associated with different objects as storage objects in a log-structured merging (LSM) tree data structure; assigning, by the first compute node, a first unique name to a first storage object associated with the first data, the first unique name comprising a combination of at least an identifier identifying the first compute node and a first incremental local value; storing the first storage object in a first level (LO) of the LSM tree data structure; receiving, at the first compute node, second data associated with the object; assigning, by the first compute node, a second unique name to a second storage object associated with the second data, the second unique name comprising a combination of at least the identifier identifying the first compute node and a second incremental local value that is equal to the first incremental local value incremented; and storing the second storage object in the LO of the LSM tree data structure. 11. The non-transitory computer readable medium of claim 10 , wherein a storage object comprises a sorted string table (SSTable) having at least one key that maps to a value, wherein each compute node in the plurality of compute nodes is assigned a different range of keys to store in SSTables of the LSM tree data structure. 12. The non-transitory computer readable medium of claim 10 , wherein when a size of the LO reaches a threshold, a merging entity moves a plurality of storage objects stored in the LO, including the first and second storage objects, to a second level (L1) of the LSM tree data structure to make the LO available for storing additional data, the moving comprising: determining that the first and second storage objects share the identifier identifying the first compute node in their respective first and second unique names; based on the determining, merging the first and second storage objects into a merged storage object; and moving the merged storage object to the L1 of the LSM tree. 13. The non-transitory computer readable medium of claim 12 , wherein the plurality of storage objects in the L0 further comprises a third storage object and a fourth storage object, wherein the first and second storage objects are within a first shard of a plurality of shards, and the third and fourth storage objects are within a second shard of the plurality of shards, and wherein when the size of the L0 reaches the threshold, the merging entity merges and moves storage objects that are within the first shard to the L1, and a second merging entity merges and moves storage objects that are within the second shard to the L1. 14. A computer

Assignees

Inventors

Classifications

  • 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

  • Hypervisor-specific management and integration aspects · CPC title

  • involving virtual machines · CPC title

  • by selection of backup contents · CPC title

  • Append-only file systems, e.g. using logs or journals to store data · 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 US11675745B2 cover?
A method for managing data associated with objects stored in a cloud storage is provided. The method receives, at a first compute node, first data associated with an object stored in the cloud storage, the first compute node being one of a plurality of compute nodes that store data associated with different objects as storage objects in a log-structured merging (LSM) tree data structure. The me…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/1805. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 13 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).