Method and system for managing metadata for a virtualization environment

US9747287B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9747287-B1
Application numberUS-201213564511-A
CountryUS
Kind codeB1
Filing dateAug 1, 2012
Priority dateAug 10, 2011
Publication dateAug 29, 2017
Grant dateAug 29, 2017

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.

Disclosed is an improved approach for managing updates to metadata for a virtualization environment. According to some embodiments, a compare and swap approach is taken to manage updates and to handle possible inconsistencies.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer implemented method for managing metadata in a virtualization system, comprising: identifying metadata to track data within storage devices for the virtualization system, the virtualization system comprising a plurality of nodes that includes at least a first node having a first local storage device and a first service virtual machine and a second node having a second local storage device and a second service virtual machine, the first local storage device and the second local storage device forming part of a global storage pool such that any of the first node and the second node can access virtual disks on both the first local storage device and the second local storage device, with the first node and the second node concurrently accessing the metadata through their respective service virtual machines to manage the virtual disks within the global storage pool the virtual disks being virtual structures implemented by the metadata managed by the first and second service virtual machines; performing a compare and swap operation to manage an update to the metadata maintained by service virtual machines on each of the plurality of nodes in the virtualization system, the compare and swap operation addressing possible data inconsistencies caused by multiple update operations generated by the plurality of nodes when concurrently updating the metadata for the data in the global storage pool having the first local storage device and the second local storage device that are accessible by both the first node and the second node through their respective service virtual machines, wherein validation information for the metadata is processed by the first or second service virtual machines to perform the update; receiving, from a node from among the plurality of nodes, an instruction to perform a read operation; before performing the read operation, determining whether the plurality of nodes comprises a downed node; if the plurality of nodes comprises the downed node, then incrementing a current consensus instance to a new instance count and choosing a value for a prior instance to be associated with the new instance count; and invalidating a write operation for the downed node if the downed node comes back up, wherein the write operation for the downed node is invalidated as a result of a consensus instance corresponding to the write operation being different than the new instance count. 2. The method of claim 1 , wherein the validation information comprises a timestamp or a checksum. 3. The method of claim 1 , wherein the validation information is obtained for the metadata and is checked prior to completion of the update. 4. The method of claim 1 , wherein the compare and swap operation uses a consensus algorithm to manage the update to the metadata maintained on the plurality of nodes. 5. The method of claim 4 , in which the consensus algorithm provides for selection of a value by consensus among the plurality of nodes, wherein a consensus instance is incremented to a new value. 6. The method of claim 1 , in which an inconsistency is identified when a previously downed node that previously made the update has an instance value different from the value associated with the new instance count. 7. The method of claim 6 , in which the update by the previously downed node is invalidated. 8. The method of claim 4 , in which a sequence of updates is identified with an epoch value. 9. The method of claim 8 , in which the epoch value is used to process a deletion of data. 10. The method of claim 1 , in which a race condition is identified and accessing of the metadata is restarted, wherein the race condition is identified because of an inconsistency in the metadata. 11. The method of claim 10 , in which a check is made whether the inconsistency is resolved after accessing of the metadata is restarted, wherein an error condition is identified if the inconsistency is not resolved. 12. The method of claim 1 in which an update operation to an item of metadata is performed such that the item of metadata is confirmed not to have been changed by another entity from a start of the update operation to a conclusion of the update operation. 13. The method of claim 1 , in which a tabular structure is used to maintain entries for metadata values, and an instance count corresponds to the metadata values in the tabular structure, wherein the instance count is increased for updates to the metadata values. 14. The method of claim 13 , in which a consolidated instance count is maintained for multiple entries in the tabular structure, the consolidated instance count corresponding to a collective set of data. 15. The method of claim 14 , in which the consolidated instance count comprises a row instance value for a row of entries. 16. The method of claim 15 , further comprising: determining whether the plurality of nodes comprises a downed node and incrementing the consolidated instance count to a new instance count and setting a delete clock if the plurality of nodes comprises the downed node, wherein the delete clock is maintained for the tabular structure; and invalidating any changes made by the downed node to the tabular structure if the downed node comes back up, wherein a column from the tabular structure associated with a time less than the delete clock is invalidated or deleted. 17. The method of claim 16 , wherein incrementing the consolidated instance count further comprises copying contents of an entire row for the new instance. 18. A computer program product embodied on a non-transitory computer readable medium, the non-transitory computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a method for managing metadata in a virtualization system, the method comprising: identifying metadata to track data within storage devices for the virtualization system, the virtualization system comprising a plurality of nodes that includes at least a first node having a first local storage device and a first service virtual machine and a second node having a second local storage device and a second service virtual machine, the first local storage device and the second local storage device forming part of a global storage pool such that any of the first node and the second node can access virtual disks on both the first local storage device and the second local storage device, with the first node and the second node concurrently accessing the metadata through their respective service virtual machines to manage the virtual disks within the global storage pool the virtual disks being virtual structures implemented by the metadata managed by the first and second service virtual machines; performing a compare and swap operation to manage an update to the metadata maintained by service virtual machines on each of the plurality of nodes in the virtualization system, the compare and swap operation addressing possible data inconsistencies caused by multiple update operations generated by the plurality of nodes when concurrently updating the metadata for the data in the global storage pool having the first local storage device and the second local storage device that are accessible by both the first node and the second node through their respective service virtual machines, wherein validation information for the metadata is processed by the first or second service virtual machines to perform the update; receiving, from a node from among the plurality of nodes, an instruction to perform a read operation;

Assignees

Inventors

Classifications

  • Concurrency control (transaction processing G06F9/466) · CPC title

  • G06F3/0604Primary

    Improving or facilitating administration, e.g. storage management · CPC title

  • Physics · mapped topic

  • Management of space entities, e.g. partitions, extents, pools · CPC title

  • Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · 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 US9747287B1 cover?
Disclosed is an improved approach for managing updates to metadata for a virtualization environment. According to some embodiments, a compare and swap approach is taken to manage updates and to handle possible inconsistencies.
Who is the assignee on this patent?
Bhardwaj Rishi, Guturi Venkata Ranga Radhanikanth, Aron Mohit, and 1 more
What technology area does this patent fall under?
Primary CPC classification G06F16/2308. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 29 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).