Burst Throttling via Sequential I/O Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computer systems face challenges in managing workload variations and preventing overload scenarios in multi-tenant block-level data storage services, as they struggle to define a meaningful global threshold for service requests that are unpredictable and vary in rate and intensity.
Innovation Solution
Implementing a burst token bucket model and a global work token bucket mechanism to dynamically allocate and throttle I/O operations, allowing for burst allocation of resources and efficient workload management by using tokens representing I/O credits, which are accumulated and consumed based on workload demands.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a fixed global threshold is used to compare request rates, then service overload can be prevented, but the system cannot adapt to temporal and spatial workload variations
Solution Approach 1:
The patent implements dynamic threshold adjustment by continuously monitoring workload patterns and adapting the threshold accordingly. Instead of using a fixed global threshold, the system dynamically modifies thresholds based on observed temporal and spatial workload variations, allowing the system to maintain reliability while adapting to changing conditions.
Solution Approach 2:
The system changes the parameter of the threshold from a fixed value to a dynamic value that adjusts based on workload characteristics. By monitoring request patterns and modifying the threshold parameter in response to observed variations, the system resolves the contradiction between maintaining a stable threshold for overload prevention and adapting to varying workload conditions.
2Reliability
If service is denied or throttled during overload, then system stability is maintained, but customer satisfaction decreases
Solution Approach 1:
The patent applies preliminary action by proactively adjusting thresholds before overload occurs. By continuously monitoring workload patterns and preemptively modifying thresholds in response to emerging trends, the system prevents overload conditions from developing, thereby maintaining both system stability and customer service quality without needing to deny or throttle service.
3Productivity
If burst allocation is allowed, then peak workload performance is improved, but system overload risk increases
Solution Approach 1:
The patent implements feedback mechanisms that continuously monitor system load and dynamically adjust burst allocation thresholds. When the system detects approaching capacity limits, the feedback loop triggers threshold reductions that prevent overload. This allows the system to safely accommodate burst workloads by adaptively controlling the degree of burst allocation based on real-time system conditions.
Data Source
AI summary
Burst throttling methods may be used manage computing resources of a data storage service. Tokens may represent I/O operations executed by a customer of the data storage service. A global token bucket may contain a set of tokens representing the overall I/O operation capacity of the data storage service. Additionally, a work token bucket may contain a set of tokens for a given logical volume maintained by the data storage service. When I/O request are received the data storage service may determine if the I/O request is a member of a sequence and removed a reduced number for tokens from the work token bucket as a result. Furthermore, if there is sufficient capacity the data storage service may charge a reduced number of tokens to the work token bucket.


