Fetching Query Results Through Cloud Object Stores
US-2024394271-A1 · Nov 28, 2024 · US
US9778847B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9778847-B2 |
| Application number | US-201514919379-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 21, 2015 |
| Priority date | Jan 23, 2013 |
| Publication date | Oct 3, 2017 |
| Grant date | Oct 3, 2017 |
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.
Techniques for surfacing host-side flash storage capacity to a plurality of VMs running on a host system are provided. In one embodiment, the host system creates, for each VM in the plurality of VMs, a flash storage space allocation in a flash storage device that is locally attached to the host system. The host system then causes the flash storage space allocation to be readable and writable by the VM as a virtual flash memory device.
Opening claim text (preview).
What is claimed is: 1. A method for surfacing host-side flash storage capacity to a virtual machine (VM) configured to run on a host system, the method comprising: creating, for the VM, a flash storage space allocation in a flash storage device that is locally attached to the host system; causing, by the host system, the flash storage space allocation to be accessible to the VM as a virtual flash memory device; receiving, by the host system, a request to suspend, or create a snapshot of, the VM; in response to the request to suspend, or create the snapshot of, the VM: saving data in the flash storage space allocation to a backend storage device; and freeing the flash storage space allocation; receiving, by the host system, a request to resume operation of the VM; and in response to the request to resume operation of the VM: creating, for the VM, a new flash storage space allocation in the flash storage device, the new flash storage space allocation having substantially the same size as the freed flash storage space allocation; copying the data saved in the backend storage device to the new flash storage space allocation; and subsequently to the copying, resuming the VM. 2. The method of claim 1 wherein the freeing comprises reclaiming storage space in the flash storage device corresponding to the flash storage space allocation for use by another VM. 3. The method of claim 1 further comprising, prior to creating the new flash storage space allocation: determining whether the flash storage device has sufficient free storage space to accommodate the new flash storage space allocation; and if the flash storage device does not have sufficient free storage space, migrating the VM to another host system that is determined to have sufficient free storage space within its locally-attached flash storage to accommodate the new flash storage space allocation. 4. The method of claim 1 wherein the virtual flash memory device is configured to act as a volatile memory device. 5. The method of claim 4 further comprising: receiving a request to power-off the VM; and in response to the request to power-off the VM, freeing the flash storage space allocation without saving the data in the flash storage space allocation to the backend storage device. 6. The method of claim 4 wherein the virtual flash memory device is configured to act as a volatile memory device based on a parameter that is defined by a user at a time of provisioning the VM. 7. A non-transitory computer readable medium having stored thereon program code executable by a processor of a host system, the program code embodying a method for surfacing host-side flash storage capacity to a virtual machine (VM) configured to run on the host system, the method comprising: creating, for the VM, a flash storage space allocation in a flash storage device that is locally attached to the host system; causing the flash storage space allocation to be accessible to the VM as a virtual flash memory device; receiving a request to suspend, or create a snapshot of, the VM; in response to the request to suspend, or create the snapshot of, the VM: saving data in the flash storage space allocation to a backend storage device; and freeing the flash storage space allocation; receiving a request to resume operation of the VM; and in response to the request to resume operation of the VM: creating, for the VM, a new flash storage space allocation in the flash storage device, the new flash storage space allocation having substantially the same size as the freed flash storage space allocation; copying the data saved in the backend storage device to the new flash storage space allocation; and subsequently to the copying, resuming the VM. 8. The non-transitory computer readable medium of claim 7 wherein the freeing comprises reclaiming storage space in the flash storage device corresponding to the flash storage space allocation for use by another VM. 9. The non-transitory computer readable medium of claim 8 wherein the method further comprises, prior to creating the new flash storage space allocation: determining whether the flash storage device has sufficient free storage space to accommodate the new flash storage space allocation; and if the flash storage device does not have sufficient free storage space, migrating the VM to another host system that is determined to have sufficient free storage space within its locally-attached flash storage to accommodate the new flash storage space allocation. 10. The non-transitory computer readable medium of claim 7 wherein the virtual flash memory device is configured to act as a volatile memory device. 11. The non-transitory computer readable medium of claim 10 wherein the method further comprises: receiving a request to power-off the VM; and in response to the request to power-off the VM, freeing the flash storage space allocation without saving the data in the flash storage space allocation to the backend storage device. 12. The non-transitory computer readable medium of claim 10 wherein the virtual flash memory device is configured to act as a volatile memory device based on a parameter that is defined by a user at a time of provisioning the VM. 13. A host system comprising: a processor; a locally-attached flash storage device; and a non-transitory computer readable storage medium having stored thereon program code that, when run by the processor, causes the processor to: create, for a virtual machine (VM) configured to run on the host system, a flash storage space allocation in the locally-attached flash storage device; make the flash storage space allocation accessible to the VM as a virtual flash memory device; receive a request to suspend, or create a snapshot of, the VM; in response to the request to suspend, or create the snapshot of, the VM: save data in the flash storage space allocation to a backend storage device; and free the flash storage space allocation; receive a request to resume operation of the VM; and in response to the request to resume operation of the VM: create, for the VM, a new flash storage space allocation in the flash storage device, the new flash storage space allocation having substantially the same size as the freed flash storage space allocation; copy the data saved in the backend storage device to the new flash storage space allocation; and subsequently to the copying, resume the VM. 14. The host system of claim 13 wherein the program code that causes the processor to free the flash storage space allocation comprises program code that causes the processor to reclaim storage space in the locally-attached flash storage device corresponding to the flash storage space allocation for use by another VM. 15. The computer system of claim 13 wherein the program code further causes the processor to, prior to creating the new flash storage space allocation: determine whether the locally-attached flash storage device has sufficient free storage space to accommodate the new flash storage space allocation; and if the locally-attached flash storage device does not have sufficient free storage space, migrate the VM to another host system that is determined to have sufficient free storage space within its locally-attached flash storage to accommodate the new flash storage space allocation. 16. The computer system of claim 13 wherein the virtual flash memory device is configured to act as a volatile memory device. 17. The computer system of claim 16 wherein the program code further causes the processor to: receive
for multiprocessing or multitasking · CPC title
Free address space management · CPC title
by facilitating the interaction with a user or administrator · CPC title
Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket · CPC title
Saving storage space on storage systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.