US 11,861,176 B2
Processing of input/ouput operations by a distributed storage system based on latencies assigned thereto at the time of receipt
Austino Longo, Lafayette, CO (US); and Randolph W. Sterns, Arvada, CO (US)
Assigned to NetApp, Inc., San Jose, CA (US)
Filed by NetApp, Inc., Sunnyvale, CA (US)
Filed on Apr. 23, 2021, as Appl. No. 17/239,209.
Prior Publication US 2022/0342559 A1, Oct. 27, 2022
Int. Cl. G06F 3/06 (2006.01)
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
OG exemplary drawing
 
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.