Distributed Storage Latency Assignment for IO Smoothing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed storage systems experience latency spikes during input/output processing intervals, leading to inefficiencies and reduced user experience due to uneven distribution of IO operations, resulting in underutilization of resources and increased latency.
Innovation Solution
The system calculates a target latency for IO operations by determining a target number of IO operations per second and assigning latency to each operation based on the target latency, allowing for even distribution of processing over the IO processing interval, thereby smoothing out latency spikes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If IO operations are processed without latency assignment, then processing speed is maintained, but latency spikes occur and resource utilization becomes uneven
Solution Approach 1:
The system performs preliminary latency assignment to IO operations when they are received, calculating and setting target latencies before the IO processing interval begins. This preliminary action ensures that latency is distributed evenly across all IO operations from the start, preventing latency spikes during processing while maintaining throughput.
2Ease of operation
If IO operations are processed without latency distribution, then immediate processing is achieved, but resource utilization becomes uneven and efficiency decreases
Solution Approach 1:
The system changes the latency parameter of each IO operation individually based on its reception time and the target latency calculation. By adjusting this temporal parameter, the system achieves even distribution of IO operations across the processing interval, maximizing resource utilization efficiency while maintaining operational simplicity through automated parameter adjustment.
3Duration of action of moving object
If latency is not assigned to IO operations, then processing interval is reduced, but latency distribution becomes uneven causing spikes
Solution Approach 1:
The system uses feedback from the target latency calculation to adjust the latency assignment for each incoming IO operation. By continuously monitoring the relationship between reception time and target latency, the system dynamically assigns appropriate latency values, ensuring uniform distribution across the processing interval while maintaining interval duration.
Data Source
AI summary
Systems and methods are described for smoothing-out latency of IO operations processed by a distributed storage system. In some examples, latency is distributed among IO operations to more evenly spread processing of the IO operations over an IO processing interval. A target latency for IO operations for a volume of a distributed storage system is periodically calculated each sample period based on the number of IO operations to be processed during the next IO processing interval for the volume. As IO operations are received for the volume, a latency may be associated with the IO operation based on the target latency and the IO operation may be queued or synchronously processed as appropriate. Responsive to expiration of a time period that is based on at time at which a given IO operation at the head of the queue was received and the assigned latency, the given IO operation is dequeued and processed.


