Storage Control Layer SLA-Based Pending Request Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage systems, physical disk drives handle internal queues in a FIFO manner without awareness of upper-layer priorities, leading to inefficient resource allocation among logical volumes with different Service-Level Agreements (SLAs) for performance metrics like response time, IOPS, and throughput.
Innovation Solution
A method where the control layer monitors actual performance, calculates actual-to-required performance ratios for logical volumes, allocates allowable pending access requests based on these ratios, and adjusts allocations dynamically to ensure compliance with SLAs by prioritizing underperforming volumes and reducing resources for overperforming ones.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If physical disk drives handle internal queues in a FIFO manner, then the system is simple to operate, but the resource allocation does not reflect SLA-defined performance requirements
Solution Approach 1:
The patent introduces a control layer as an intermediary between the upper layers (logical volumes with SLAs) and the permanent storage layer (physical disk drives with FIFO queues). This control layer monitors actual performance, calculates actual-to-required relationships, and dynamically allocates allowable amounts of pending access requests to different logical volumes, thereby enabling SLA-compliant resource allocation without modifying the simple FIFO operation of physical disk drives
Solution Approach 2:
The patent segments the storage system into distinct layers: the control layer that handles SLA management and dynamic allocation, and the permanent storage layer that maintains simple FIFO queue handling. This segmentation allows each layer to operate independently with its own optimization strategy, resolving the contradiction between operational simplicity and allocation efficiency
2Reliability
If the control layer dynamically allocates pending access requests based on actual-to-required relationships, then SLA compliance is improved, but the device complexity increases
Solution Approach 1:
The control layer continuously monitors actual performance of logical volumes and uses this feedback to dynamically adjust the allocation of pending access requests. By calculating actual-to-required relationships and adjusting allocations in real-time, the system maintains SLA compliance through a closed-loop control mechanism that adapts to changing conditions without requiring complex manual intervention
Solution Approach 2:
The control layer automatically performs monitoring, calculation, and allocation adjustments without external intervention. The system self-regulates resource allocation based on observed performance, reducing the need for complex external management while maintaining SLA compliance through automated decision-making
3Speed
If allowable amounts of pending access requests are increased for underperforming logical volumes, then performance is improved, but the loss of time for other volumes increases
Solution Approach 1:
The patent implements dynamic allocation of pending access requests where the allowable amounts are continuously adjusted based on actual performance monitoring. When a logical volume underperforms, its allocation is increased; when it overperforms, its allocation is reduced. This dynamic adjustment optimizes the trade-off between improving underperforming volumes and minimizing impact on others, rather than using static allocation
Data Source
AI summary
A method for service level agreement allocation of permanent storage layer resources of a storage system, the method may include monitoring, by a control layer of the storage system, actual performances of the storage system that are related to multiple logical volumes; calculating actual-to-required relationships between the actual performances and service level agreement defined performances of the multiple logical volumes; allocating, for different logical volumes of the multiple logical volumes, allowable amounts of pending access requests; wherein the allocating is based on, at least, the actual-to-required relationships; receiving, by the control layer, received access requests aimed to one or more logical volumes of the logical volumes; and sending to the permanent storage layer requests to serve at least some of the received access requests, based on the allowable amounts of pending access requests.


