Service plan based flow control
US-2016134544-A1 · May 12, 2016 · US
US9760392B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9760392-B1 |
| Application number | US-201514840627-A |
| Country | US |
| Kind code | B1 |
| Filing date | Aug 31, 2015 |
| Priority date | Aug 31, 2015 |
| Publication date | Sep 12, 2017 |
| Grant date | Sep 12, 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.
Various systems, methods, and processes to perform adaptive throttling of write operations in hybrid storage environments are disclosed. A credit value is assigned to a virtual machine. Input/output (I/O) operations generated by an application executing on the virtual machine are throttled based on the credit value assigned to the virtual machine. The credit value is assigned to the virtual machine in proportion to static measures and dynamic conditions. The static measures and the dynamic conditions are used to calculate a quality of service provided to the virtual machine by a storage system.
Opening claim text (preview).
What is claimed is: 1. A method comprising: performing adaptive throttling of input/output (I/O) operations in a hybrid storage system by: assigning a credit value to a virtual machine of a plurality of virtual machines, wherein the credit value is assigned to the virtual machine in proportion to one or more static measures and one or more dynamic conditions, wherein the one or more static measures indicate a priority level of the virtual machine, wherein the one or more dynamic conditions indicate a demand level of the virtual machine, and wherein the one or more static measures and the one or more dynamic conditions are used to calculate a quality of service; calculating the quality of service by comparing the priority level and the demand level of the virtual machine, and another priority level and another demand level of another virtual machine of the plurality of virtual machines, wherein the quality of service is a level of storage service provided to the virtual machine by a storage system; executing an application on the virtual machine to generate the input/output (I/O) operations to the storage system; and throttling the input/output (I/O) operations based, at least in part, on the credit value. 2. The method of claim 1 , further comprising: receiving an input comprising information indicative of the quality of service; and based on the input, performing the assigning of the credit value to the virtual machine. 3. The method of claim 2 , wherein the storage system is a multi-layer storage device, the multi-layer storage device comprises a plurality of storage layers, and the plurality of storage layers represent a hierarchy of storage layers, wherein a first storage layer in the hierarchy of storage layers receives the input/output (I/O) operations prior to another storage layer in the hierarchy of storage layers, the first storage layer comprises a front end log, the another storage layer is a backing data store, the input/output (I/O) operations are not permanently stored on the first storage layer, and the first storage layer comprises a first storage device that serves the input/output (I/O) operations faster but is smaller in size than another storage device in the another storage layer. 4. The method of claim 3 , wherein the application executing on the virtual machine performs the input/output (I/O) operations, wherein the input/output (I/O) operations are executed on the first storage layer, the input/output (I/O) operations comprise write operations, the write operations are written to the front end log maintained in the first storage layer, and data written by the write operations to the front end log is transferred from the first storage layer to the another storage layer for backup. 5. The method of claim 3 , wherein the priority level of the virtual machine is based on a service level agreement with which the virtual machine is associated, and the demand level of the virtual machine is based on a first set of device characteristics of the first storage layer, and another set of device characteristics of the another storage layer respectively, and a first set of operational characteristics of the first storage layer, and another set of operational characteristics of the another storage layer, respectively. 6. The method of claim 5 , wherein the first set of operational characteristics comprises, at least in part, a first latency associated with the first storage layer, and the another set of operational characteristics comprises, at least in part, another latency associated with the another storage layer. 7. The method of claim 5 , wherein a performance of the throttling does not negatively impact the service level agreement with which the virtual machine is associated, and as a result of the throttling, the virtual machine is able to meet the one or more static measures in the service level agreement. 8. The method of claim 3 , wherein the throttling is performed based, at least in part, on the credit value assigned to the virtual machine, and one or more watermark levels associated with the front end log. 9. The method of claim 3 , wherein the priority level of the virtual machine is based on a service level agreement with which the virtual machine is associated, the demand level of the virtual machine is based on a first set of device characteristics of the first storage layer, and another set of device characteristics of the another storage layer respectively; and a first set of operational characteristics of the first storage layer, and another set of operational characteristics of the another storage layer, respectively, the first set of operational characteristics comprises, at least in part, a first latency associated with the first storage layer, and the another set of operational characteristics comprises, at least in part, another latency associated with the another storage layer. 10. The method of claim 1 , further comprising: as a result of the comparing, assigning another credit value to the another virtual machine, wherein the credit value and the another credit value are different. 11. The method of claim 10 , wherein another application executing on the another virtual machine generates other I/O operations to the storage system, and as a result of the assigning the another credit value, the other I/O operations are throttled based on the another credit value. 12. The method of claim 6 , wherein a sum of the input/output (I/O) operations generated by one or more applications executing on the plurality of virtual machines does not exceed a bandwidth of the another storage layer. 13. A non-transitory computer readable storage medium comprising program instructions executable to: perform adaptive throttling of input/output (I/O) operations in a hybrid storage system by: assigning a credit value to a virtual machine of a plurality of virtual machines, wherein the credit value is assigned to the virtual machine in proportion to one or more static measures and one or more dynamic conditions, wherein the one or more static measures indicate a priority level of the virtual machine, wherein the one or more dynamic conditions indicate a demand level of the virtual machine, and wherein the one or more static measures and the one or more dynamic conditions are used to calculate a quality of service; calculating the quality of service by comparing the priority level and the demand level of the virtual machine, and another priority level and another demand level of another virtual machine of the plurality of virtual machines, wherein the quality of service is a level of storage service provided to the virtual machine by a storage system; executing an application on the virtual machine to generate the input/output (I/O) operations to the storage system; and throttling the input/output (I/O) operations based, at least in part, on the credit value. 14. The non-transitory computer readable storage medium of claim 13 , further comprising: as a result of the comparing, assigning another credit value to the another virtual machine, wherein the credit value and the another credit value are different, another application executing on the another virtual machine generates other I/O operations to the storage system, and as a result of the assigning the another credit value, the other I/O operations are throttled based on the another credit value. 15. The non-transitory computer readable storage medium of claim 14 , wherein the storage system is a multi-layer storage device, the multi-layer storage device comprises a plurality of storage layers, and the plurality of storage layers represent a hierarchy
for access to input/output bus · CPC title
Hypervisor-specific management and integration aspects · CPC title
I/O management, e.g. providing access to device drivers or storage · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.