Mechanism for performing lockless rolling upgrade of nosql database

US2016203166A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016203166-A1
Application numberUS-201414251165-A
CountryUS
Kind codeA1
Filing dateApr 11, 2014
Priority dateApr 11, 2014
Publication dateJul 14, 2016
Grant date

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 performing lockless lookups during a rolling upgrade of a column family from an old column family version to a new column family version in a NoSQL database.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method for performing lockless lookups during a rolling upgrade of a column family from an old column family version to a new column family version in a NoSQL database, comprising: receiving a request to perform a lookup of the column family in the NoSQL database; returning data read from the new column family version if it is determined to be available in the new column family version; returning data read from the old column family version if it is determined to be unavailable in the new column family version; attempting to update the new column family version with data read from the old column family version when data read from the old column family version is returned; updating the new column family version with data read from the old column family version when the request is a first lookup request on the column family during the rolling upgrade; and returning a lookup timeout when the request is subsequent or concurrent with the first lookup request on the column family during the rolling upgrade. 2 . The method of claim 1 , further comprising marking the old column family version after the new column family version has been updated with data read from the old column family version. 3 . The method of claim 1 , wherein the NoSQL database is shared by a plurality of controller virtual machines, each residing at a node in a networked virtualization environment. 4 . The method of claim 3 , wherein each controller virtual machine of the plurality of controller virtual machines provides storage management functionality to a set of user virtual machines residing in its corresponding node. 5 . The method of claim 4 , wherein the NoSQL database is utilized to maintain metadata used by each of the plurality of controller virtual machines to provide storage management functionality to its corresponding set of user virtual machines. 6 . The method of claim 1 , wherein the column family is in a pre-migrating state, a migrating state, a migrated state, or a migration complete state. 7 . The method of claim 6 , wherein the column family is in the pre-migrating state when the rolling upgrade of the column family has not yet begun and data accesses directed at the column family are directed at the old column family version. 8 . The method of claim 6 , wherein the column family is in the migrating state when the rolling upgrade of the column family has begun but not yet completed. 9 . The method of claim 6 , wherein the column family is in the migrated state when the rolling upgrade of the column family has completed but one or more controller VMs utilizing the NoSQL database is not yet notified that the column family has completed migration. 10 . The method of claim 16 , wherein the column family is in the migration complete state when the rolling upgrade of the column family has completed and all controller VMs utilizing the NoSQL database are notified that the column family has completed migration. 11 . A computer program product embodied on a computer readable medium, the computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a method for performing lockless lookups during a rolling upgrade of a column family from an old column family version to a new column family version in a NoSQL database, comprising: receiving a request to perform a lookup of the column family in the NoSQL database; returning data read from the new column family version if it is determined to be available in the new column family version; returning data read from the old column family version if it is determined to be unavailable in the new column family version; attempting to update the new column family version with data read from the old column family version when data read from the old column family version is returned; updating the new column family version with data read from the old column family version when the request is a first lookup request on the column family during the rolling upgrade; and returning a lookup timeout when the request is subsequent or concurrent with the first lookup request on the column family during the rolling upgrade. 12 . The computer program product of claim 11 , further comprising marking the old column family version after the new column family version has been updated with data read from the old column family version. 13 . The computer program product of claim 11 , wherein the NoSQL database is shared by a plurality of controller virtual machines, each residing at a node in a networked virtualization environment. 14 . The computer program product of claim 13 , wherein each controller virtual machine of the plurality of controller virtual machines provides storage management functionality to a set of user virtual machines residing in its corresponding node. 15 . The computer program product of claim 14 , wherein the NoSQL database is utilized to maintain metadata used by each of the plurality of controller virtual machines to provide storage management functionality to its corresponding set of user virtual machines. 16 . The computer program product of claim 11 , wherein the column family is in a pre-migrating state, a migrating state, a migrated state, or a migration complete state. 17 . The computer program product of claim 16 , wherein the column family is in the pre-migrating state when the rolling upgrade of the column family has not yet begun and data accesses directed at the column family are directed at the old column family version. 18 . The computer program product of claim 16 , wherein the column family is in the migrating state when the rolling upgrade of the column family has begun but not yet completed. 19 . The computer program product of claim 16 , wherein the column family is in the migrated state when the rolling upgrade of the column family has completed but one or more controller VMs utilizing the NoSQL database is not yet notified that the column family has completed migration. 20 . The computer program product of claim 16 , wherein the column family is in the migration complete state when the rolling upgrade of the column family has completed and all controller VMs utilizing the NoSQL database are notified that the column family has completed migration. 21 . A method for performing lockless modifications during a rolling upgrade of a column family from an old column family version to a new column family version in a NoSQL database, comprising: receiving a request to perform a modification of the column family in the NoSQL database; determining whether the old column family version is marked; returning a notification of an unsuccessful modification when the old column family version is not marked; and fulfilling the request to perform the modification of the column family by modifying the new column family version when the old column family version is marked. 22 . The method of claim 21 , wherein the NoSQL database is shared by a plurality of controller virtual machines, each residing at a node in a networked virtualization environment. 23 . The method of claim 22 , wherein each controller virtual machine of the plurality of controller virtual machines provides storage management functionality to a set of user virtual machines residing in its corresponding node. 24 . The method of claim 23 , wherein the NoSQL database is utilized to maintain metadat

Assignees

Inventors

Classifications

  • Change logging, detection, and notification (replication G06F16/27) · CPC title

  • Managing data history or versioning (querying versioned data G06F16/2474; querying temporal data G06F16/2477) · CPC title

  • Design, administration or maintenance of databases · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • G06F16/86Primary

    Mapping to a database · 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 US2016203166A1 cover?
A method for performing lockless lookups during a rolling upgrade of a column family from an old column family version to a new column family version in a NoSQL database.
Who is the assignee on this patent?
Nutanix Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/86. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jul 14 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).