Using response time objectives in a storage system
US-10268526-B1 · Apr 23, 2019 · US
US10503437B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10503437-B2 |
| Application number | US-201815966542-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 30, 2018 |
| Priority date | Apr 30, 2018 |
| Publication date | Dec 10, 2019 |
| Grant date | Dec 10, 2019 |
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.
Execution of I/O operations for an application is managed to improve consistency of performance for an I/O performance metric for the application. Such control may be achieved by defining a value for a performance resilience objective (PRO) parameter, and applying the PRO value to I/O requests of the application. The PRO value may define a value indicative of an extent to which I/O performance can deviate from a performance objective (e.g., as defined by a service level) over time; i.e., a tolerance for such deviation. Components of a computer network may be configured to apply PRO values to I/O requests for one or more applications. The PRO values of applications may be distributed to one or more components of a data storage system and one or more components of a host system, and these components may be configured to apply the PRO values to I/O requests of the subject applications.
Opening claim text (preview).
What is claimed is: 1. A method of managing an I/O request for a storage system, the method comprising: receiving the I/O request specifying an I/O operation to perform for an application having data stored on the data storage system, the application having an associated first value indicative of a performance objective for a performance metric; and controlling execution of the I/O operation based on the first value associated with the application and a second value indicative of a tolerance of deviation of actual performance from the first value over time, wherein the first value specifies an average response time, and wherein the second value specifies an extent to which an actual response time is allowed to deviate over time from the average response time. 2. The method of claim 1 , wherein controlling execution of the I/O operation includes causing a delay in the performance of the I/O operation based at least in part on the second value. 3. The method of claim 2 , wherein controlling execution of the I/O operation includes determining a current status of the I/O operation, and causing the delay based at least on the first value, the second value and the current status. 4. The method of claim 1 , wherein controlling execution includes accelerating the performance of the I/O operation based at least in part on the second value. 5. The method of claim 1 , wherein controlling execution includes applying the second value on a host system prior to sending the I/O request to the storage system. 6. The method of claim 1 , wherein controlling execution includes applying the second value on the storage system prior to performing the I/O operation on the storage system. 7. The method of claim 1 , wherein controlling execution includes applying the second value on the storage system after performing the I/O operation on the storage system and prior to sending a response to the host system regarding the performing of the I/O operation. 8. The method of claim 1 , further comprising: providing the second value to the storage system and a host system from which the I/O request originates, wherein controlling execution includes applying the second value on the host system and the storage system. 9. The method of claim 1 , wherein the first value corresponds to a service level associated with the application. 10. A system for managing an I/O request for a storage system, the system comprising: one or more processors; and a memory comprising code stored thereon that, when executed, performs a method comprising: receiving an I/O request specifying an I/O operation to perform for an application having data stored on the data storage system, the application having an associated first value indicative of a performance objective for a performance metric; and controlling a performance of the I/O operation based on the first value associated with the application and a second value indicative of a tolerance of deviation of actual performance from the first value over time, wherein the first value specifies an average response time, and wherein the second value specifies an extent to which an actual response time is allowed to deviate over time from the average response time. 11. The system of claim 10 , wherein controlling execution of the I/O operation includes causing a delay in the performance of the I/O operation based at least in part on the second value. 12. The system of claim 11 , wherein controlling execution of the I/O operation includes determining a current status of the I/O operation, and causing the delay based at least on the first value, the second value and the current status. 13. The system of claim 10 , wherein controlling execution includes accelerating the performance of the I/O operation based at least in part on the second value. 14. The system of claim 10 , wherein the method further comprises providing the second value to the storage system and a host system from which the I/O request originates, and wherein controlling execution includes applying the second value on the host system and the storage system. 15. The system of claim 10 , wherein the first value corresponds to a service level associated with the application. 16. A non-transitory computer-readable medium having software stored thereon for managing an I/O request for a storage system, the software comprising: executable code that receives an I/O request specifying an I/O operation to perform for an application having data stored on the data storage system, the application having an associated first value indicative of a performance objective for a performance metric; and executable code that controls a performance of the I/O operation based on the first value associated with the application and a second value indicative of a tolerance of deviation of actual performance from the first value over time, wherein the first value specifies an average response time, and wherein the second value specifies an extent to which an actual response time is allowed to deviate over time from the average response time. 17. The non-transitory computer-readable medium of claim 16 , wherein the executable code that controls execution of the I/O operation includes executable code that causes a delay in the performance of the I/O operation based at least in part on the second value. 18. The non-transitory computer-readable medium of claim 16 , wherein the executable code that controls execution includes executable code that accelerates the performance of the I/O operation based at least in part on the second value. 19. The non-transitory computer-readable medium of claim 16 , wherein the software further comprises: executable code that provides the second value to the storage system and a host system from which the I/O request originates, wherein the executable code that controls execution includes executable code that applies the second value on the host system and the storage system. 20. The non-transitory computer-readable medium of claim 16 , wherein the first value corresponds to a service level associated with the application.
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Disk arrays, e.g. RAID, JBOD · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
Improving I/O performance · CPC title
Improving or facilitating administration, e.g. storage management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.