Scheduling proportional storage share for storage systems
First Claim
1. A method, comprising:
- receiving a plurality of IO (input/output) requests for a storage system;
tagging each of the plurality of IO requests with a ranking value;
propagating a first IO request of the plurality of IO requests to at least one storage device of the storage system for processing when the ranking value of the first IO request is at least one of higher or equal to the ranking value of other IO requests of the plurality of IO requests;
storing a second IO request of the plurality of IO requests in a buffer when the ranking value of the second IO request is lower than the ranking value of at least one other IO request of the plurality of IO requests; and
scheduling the second IO request for propagation to at least one storage device of the storage system for processing when the ranking value of the second IO request is at least one of higher or equal to the ranking value of other IO requests of the plurality of IO requests.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for scheduling proportional sharing of storage shares includes one or more hosts which are IO attached to storage system including a storage coordinator, a buffer, and one or more storage devices which are provided as one or more storage shares. A storage share scheduler of the storage coordinator propagates an IO request to the one or more storage devices when a ranking value tagged to the IO request is higher than and/or equal to that of other IO requests. The storage share scheduler stores an IO request in the buffer when the ranking value of the IO request is lower than that of at least one other IO request. The storage share scheduler schedules the IO request stored in the buffer to be propagated when the ranking value is higher than and/or equal to the ranking value of the other IO requests.
-
Citations
21 Claims
-
1. A method, comprising:
-
receiving a plurality of IO (input/output) requests for a storage system; tagging each of the plurality of IO requests with a ranking value; propagating a first IO request of the plurality of IO requests to at least one storage device of the storage system for processing when the ranking value of the first IO request is at least one of higher or equal to the ranking value of other IO requests of the plurality of IO requests; storing a second IO request of the plurality of IO requests in a buffer when the ranking value of the second IO request is lower than the ranking value of at least one other IO request of the plurality of IO requests; and scheduling the second IO request for propagation to at least one storage device of the storage system for processing when the ranking value of the second IO request is at least one of higher or equal to the ranking value of other IO requests of the plurality of IO requests. - View Dependent Claims (2)
-
- 3. The method of claim 3, wherein the ranking value of the IO attached host is based on a type of application running on the IO attached host.
-
8. A system, comprising:
-
a plurality of hosts; a storage system, communicatively coupled to the plurality of hosts, comprising; at least one storage device; a buffer; and a storage share coordinator that receives a plurality IO (input/output) requests from the plurality of hosts, tags each of the plurality of IO requests with a ranking value, and propagates the IO requests to the at least one storage device utilizing a storage share scheduler, wherein the storage share scheduler propagates an IO request of the plurality of IO requests when the ranking value of the IO request is at least one of higher or equal to the ranking value of other IO requests of the plurality of IO requests, the storage share scheduler stores the IO request of the plurality of IO requests in the buffer when the ranking value of the IO request is lower than the ranking value of at least one other IO request of the plurality of IO requests, and the storage share scheduler schedules the IO request stored in the buffer for propagation when the ranking value of the stored IO request is at least one of higher or equal to the ranking value of other IO requests in the plurality of IO requests. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product for scheduling proportional storage share, the computer program product comprising:
a tangible computer usable medium having computer usable code tangibly embodied therewith, the computer usable program code comprising; computer usable program code configured to receive a plurality of IO (input/output) requests for a storage system; computer usable program code configured to tag each of the plurality of IO requests with a ranking value; computer usable program code configured to propagate a first IO request of the plurality of IO requests to at least one storage device of the storage system for processing when the ranking value of the first IO request is at least one of higher or equal to the ranking value of other IO requests of the plurality of IO requests; computer usable program code configured to store a second IO request of the plurality of IO requests in a buffer when the ranking value of the second IO request is lower than the ranking value of at least one other IO request of the plurality of IO requests; and computer usable program code configured to schedule the second IO request for propagation to at least one storage device of the storage system for processing when the ranking value of the second IO request is at least one of higher or equal to the ranking value of other IO requests of the plurality of IO requests. - View Dependent Claims (16, 17, 18, 19, 20, 21)
Specification