Global non-volatile solid-state cache in a network storage system
US-9372825-B1 · Jun 21, 2016 · US
US10114564B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10114564-B2 |
| Application number | US-201514628010-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 20, 2015 |
| Priority date | Nov 4, 2014 |
| Publication date | Oct 30, 2018 |
| Grant date | Oct 30, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods and systems for managing, storing, and serving data within a virtualized environment are described. In some embodiments, a data management system may manage the extraction and storage of virtual machine snapshots, provide near instantaneous restoration of a virtual machine or one or more files located on the virtual machine, and enable secondary workloads to directly use the data management system as a primary storage target to read or modify past versions of data. The data management system may allow a virtual machine snapshot of a virtual machine stored within the system to be directly mounted to enable substantially instantaneous virtual machine recovery of the virtual machine.
Opening claim text (preview).
What is claimed is: 1. A method for operating a data management system, comprising: acquiring a set of files corresponding with a plurality of versions of a virtual machine; determining a first version of the plurality of versions associated with a base file of the set of files; determining a second version of the plurality of versions associated with a new base file to be generated, the first version of the virtual machine corresponds with a first state of the virtual machine at a first point in time, the second version of the virtual machine corresponds with a second state of the virtual machine at a second point in time subsequent to the first point in time; generating the new base file corresponding with the second version of the virtual machine, the generating the new base file includes patching the base file with one or more forward incremental files of the set of files, the one or more forward incremental files correspond with the second version and one or more versions of the virtual machine between the first version and the second version, the generating the new base file includes concurrently reading the base file from a magnetic storage device while reading the one or more forward incremental files from a solid-state storage device different from the magnetic storage device, the one or more forward incremental files comprise a plurality of incremental files; generating a set of reverse incremental files corresponding with the first version and the one or more versions of the virtual machine between the first version and the second version; storing the new base file corresponding with the second version of the virtual machine using the magnetic storage device, the second version of the virtual machine comprises a more recent version of the virtual machine than the first version of the virtual machine; storing the set of reverse incremental files using the solid-state storage device different from the magnetic storage device; acquiring a merged file associated with the second version of the virtual machine, the merged file includes a first pointer to the new base file stored using the magnetic storage device and a second set of pointers to the set of reverse incremental files stored using the solid-state storage device; and generating the second version of the virtual machine, the generating the second version of the virtual machine includes concurrently reading the new base file pointed to by the first pointer from the magnetic storage device while reading the set of reverse incremental files pointed to by the second set of pointers from the solid-state storage device. 2. The method of claim 1 , wherein: the second version of the virtual machine comprises the most recent version of the virtual machine. 3. The method of claim 1 , further comprising: detecting that a number of forward incremental files that need to be patched to the base file in order to generate the second version is greater than a threshold number of forward incremental files; and performing the generating the new base file and the generating the set of reverse incremental files in response to detecting that the number of forward incremental files that need to be patched to generate the second version is greater than the threshold number of forward incremental files. 4. The method of claim 1 , wherein: the generating the new base file includes reading a first file of the set of files from a distributed file system, detecting a data error in the first file using a checksum comparison, and correcting the data error in the first file in response to detecting the data error. 5. The method of claim 1 , further comprising: updating a set of merged files to reference the new base file, the set of merged files corresponds with merged files for the first version, the second version, and the one or more versions of the virtual machine between the first version and the second version, the set of merged files includes the merged file. 6. The method of claim 1 , further comprising: acquiring a backup policy associated with the virtual machine; identifying a second set of reverse incremental files associated with versions of the virtual machine that are older than the first version based on the backup policy; and transferring the second set of reverse incremental files from the solid-state storage device to the magnetic storage device. 7. The method of claim 1 , further comprising: acquiring a backup policy associated with the virtual machine, the backup policy specifies a maximum number of snapshots allowed for the virtual machine for a particular time period; identifying a second set of reverse incremental files based on the backup policy; and consolidating the second set of reverse incremental files. 8. The method of claim 1 , wherein: the magnetic storage device has a first read speed; and the solid-state storage device has a second read speed that is faster than the first read speed. 9. The method of claim 1 , further comprising: detecting that a rate of change in a number of forward incremental files for the virtual machine is greater than a threshold; and performing the generating the new base file and the generating the set of reverse incremental files in response to detecting that the rate of change in the number of forward incremental files for the virtual machine is greater than the threshold. 10. The method of claim 1 , further comprising: detecting that there is no dependency on the set of files; and deleting the set of files in response to detecting that there is no dependency on the set of files. 11. The method of claim 10 , wherein: the detecting that there is no dependency on the set of files includes detecting that no merged files stored within the data management system include a pointer to any of the set of files. 12. A data management system, comprising: a first storage device configured to store a base file associated with a first version of a virtual machine; a second storage device configured to store one or more forward incremental files associated with one or more versions of the virtual machine; and one or more processors in communication with the first storage device and the second storage device, the one or more processors configured to determine a second version of the one or more versions associated with a new base file to be generated, the one or more forward incremental files correspond with the second version and one or more versions of the virtual machine between the first version and the second version, the one or more forward incremental files comprise a plurality of incremental files, the one or more processors configured to concurrently read the base file from the first storage device and the one or more forward incremental files from the second storage device and configured to generate the new base file corresponding with the second version of the virtual machine using the base file and the one or more forward incremental files, the one or more processors configured to generate a set of reverse incremental files corresponding with the first version and the one or more versions of the virtual machine between the first version and the second version and configured to cause the new base file to be stored using the first storage device and the set of reverse incremental files to be stored using the second storage device, the one or more processors configured to acquire a merged file associated with the second version of the virtual machine, the merged file includes a first pointer to the new base file stored using the first storage device and a second set of pointers to the set of reverse incremental files stored using the second storage devi
Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title
Mapping; Conversion · CPC title
Details of archiving (lifecycle management in storage systems G06F3/0649; point-in-time backing up or restoration of persistent data G06F11/1446) · CPC title
Distribution of virtual machine instances; Migration and load balancing · CPC title
De-duplication techniques · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.