CPC G06F 3/0613 (2013.01) [G06F 3/064 (2013.01); G06F 3/067 (2013.01); G06F 3/0611 (2013.01); G06F 3/0635 (2013.01)] | 20 Claims |
1. A method performed by a processing resource of a distributed storage system, the method comprising:
calculating a target latency for input/output (IO) operations for a volume of a plurality of volumes of the distributed storage system by:
monitoring and calculating one or more system metrics for the distributed storage system as a whole, wherein the one or more system metrics include one or both of a measure of load on the distributed storage system and a measure of fullness of block storage available within the distributed storage system;
determining a target number of IO operations per second (target IOPS) to be processed during an IO processing interval for the volume based on the one or more system metrics; and
determining the target latency by dividing the IO processing interval by the target number of IO operations;
responsive to receipt of an IO operation for the volume at a particular time, assigning a latency to the IO operation based on the target latency; and
responsive to expiration of a time period based on the particular time and the latency, processing the IO operation.
|