CPC G06F 3/0613 (2013.01) [G06F 3/0659 (2013.01); G06F 3/0683 (2013.01)] | 23 Claims |
1. A method comprising:
receiving an I/O operation targeting a volume of a distributed storage system implementing a resource saturation based quality of service policy used to throttle and shape I/O operations based upon resource saturation;
evaluating the I/O operation using a set of credit pools of a rate bucket assigned to the volume to determine whether the rate bucket indicates a resource saturation condition;
in response to the rate bucket indicating that there is no resource saturation condition, routing the I/O operation to a file system of the distributed storage system;
in response to the rate bucket indicating that there is the resource saturation condition, queuing the I/O operation as part of I/O throttling defined by the quality of service policy, wherein the I/O operation is queued into a queue selected from a set of queues based upon the volume being assigned to a priority band of the queue; and
selectively removing and processing queued I/O operations from the set of queues.
|