System and method for storage during virtual machine migration

US11074099B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11074099-B2
Application numberUS-201916715950-A
CountryUS
Kind codeB2
Filing dateDec 16, 2019
Priority dateFeb 6, 2018
Publication dateJul 27, 2021
Grant dateJul 27, 2021

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 system and method receiving a request to transfer first data from a first storage space to a second storage space, receiving a write request to write second data to a location during the transfer of the first data, determining from an access data structure that the location is not in use, writing the second data to the second storage space, and updating a location data structure indicating the location of the second data to be in the second storage space.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving a request to transfer first data from a first storage space to a second storage space; creating an access data structure upon receiving the request to transfer the first data from the first storage space to the second storage space; receiving a write request to write second data to a location during the transfer of the first data; determining from the access data structure that the location is not in use; writing the second data to the second storage space; and updating a location data structure indicating the location of the second data to be in the second storage space. 2. The method of claim 1 further comprising: receiving a read request to read third data; determining from the location data structure whether the third data is located in the first storage space or the second storage space; and reading the third data from the first storage space if the third data is in the first storage space or from the second storage space if the third data is in the second storage space. 3. The method of claim 1 , wherein one of the first storage space or the second storage space is an allocated storage space for a virtual machine. 4. The method of claim 1 , wherein the first storage space and the second storage space is part of a storage pool. 5. The method of claim 1 , further comprising creating the location data structure upon receiving the request to transfer the first data from the first storage space to the second storage space. 6. The method of claim 1 , wherein the first data comprises a plurality of data portions, and wherein for each of the plurality of data portions, the access data structure indicates whether a particular one of the plurality of data portions is in use. 7. The method of claim 1 , wherein the first data comprises a plurality of data portions, and wherein for each of the plurality of data portions, the location data structure indicates whether a particular one of the plurality of data portions is in the first storage space or the second storage space. 8. A method comprising: receiving a request to migrate a virtual machine from a first host machine to a second host machine, wherein the virtual machine comprises data stored in a first storage associated with the first host machine before the migration, and wherein the first storage is not accessible to the second host machine; creating an access data structure upon receiving the request, wherein the access data structure indicates whether the data is in use; transferring the data from the first storage to a shared storage space in response to the request upon determining that the data is not in use, wherein the shared storage space is accessible to both the first host machine and the second host machine; and migrating the virtual machine from the first host machine to the second host machine upon transferring the data to the shared storage space. 9. The method of claim 8 , further comprising, upon migrating the virtual machine to the second host machine, transferring the data from the shared storage space to a second storage associated with the second host machine, wherein the second storage is not accessible to the first host machine. 10. The method of claim 8 , wherein the data comprises a plurality of data portions, and wherein for each of the plurality of data portions, the access data structure indicates whether a particular one of the plurality of data portions is in use. 11. The method of claim 10 , further comprising: determining, from the access data structure, that a first data portion of the plurality of data portions is not in use; annotating the access data structure to indicate that the first data portion is in use in preparation for the transfer; transferring the first data portion from the first storage to the shared storage space; and annotating the access data structure after the transfer is complete to indicate that the first data portion is not in use. 12. The method of claim 8 , further comprising creating a location data structure upon receiving the request, wherein the data comprises a plurality of data portions, and wherein for each of the plurality of data portions, the location data structure indicates whether a particular one of the plurality of data portions is in the first storage or the shared storage space. 13. The method of claim 12 , further comprising: determining, from the location data structure, that a first data portion of the plurality of data portions is in the first storage before the transfer; transferring the first data portion from the first storage to the shared storage space; and annotating the location data structure after the transfer to indicate that the first data portion is in the shared storage space. 14. The method of claim 8 , wherein the shared storage space is part of a storage pool. 15. A non-transitory computer-readable media with computer-executable instructions embodied thereon that cause a processor to perform a process comprising: receiving a request to transfer first data from a shared storage space to a local virtual disk; creating an access data structure for the first data, wherein the access data structure is annotated to indicate that the first data is in use in preparation for the transfer; creating a location data structure for the first data, wherein the location data structure is annotated to indicate that the first data is in the shared storage space before the transfer; transferring the first data from the shared storage space to the local virtual disk; and after the transfer, annotating the access data structure to indicate that the first data is not in use and annotating the location data structure to indicate that the first data is in the local virtual disk. 16. The non-transitory computer-readable media of claim 15 , further comprising: receiving a write request to write second data to a location of the first data; determining from the access data structure that the location is not in use; and writing the second data to the local virtual disk regardless of whether the first data is in the shared storage space or the local virtual disk. 17. The non-transitory computer-readable media of claim 15 , further comprising: receiving a write request to write second data to a location of the first data; determining from the access data structure that the location is not in use; determining from the location data structure that the location is in the shared storage space; and writing the second data to the shared storage space. 18. The non-transitory computer-readable media of claim 15 , further comprising: receiving a write request to write second data to a location of the first data; determining from the access data structure that the location is not in use; determining from the location data structure that the location is in the local virtual disk; and writing the second data to the local virtual disk. 19. The non-transitory computer-readable media of claim 15 , wherein each of the access data structure and the location data structure is a bitmap. 20. The non-transitory computer-readable media of claim 15 , further comprising: receiving a read request to read second data; determining from the location data structure whether the second data is located in the shared storage space or the local virtual disk; and reading the second data from the shared storage space if the second data is in the shared storage space or from the local virtual disk if the second data is in the loca

Assignees

Inventors

Classifications

  • I/O management, e.g. providing access to device drivers or storage · CPC title

  • at device level, e.g. emulation of a storage device or system · CPC title

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

  • G06F3/0647Primary

    Migration mechanisms · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · 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 US11074099B2 cover?
A system and method receiving a request to transfer first data from a first storage space to a second storage space, receiving a write request to write second data to a location during the transfer of the first data, determining from an access data structure that the location is not in use, writing the second data to the second storage space, and updating a location data structure indicating th…
Who is the assignee on this patent?
Nutanix Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0647. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 27 2021 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).