Dynamic Storage Tiering for I/O Performance and Cost Tradeoffs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional input/output (I/O) request servicing systems fail to efficiently manage data storage across different tiers of storage devices, as they do not adequately consider both data usage patterns and quality of service parameters, leading to suboptimal performance and resource utilization.
Innovation Solution
Data objects are grouped into storage volumes and classified across different storage tiers based on calculated ranks that combine data usage patterns and quality of service parameters, allowing for dynamic promotion or demotion between tiers to optimize storage performance and resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is stored on higher performance storage tiers, then I/O performance is improved, but storage cost increases
Solution Approach 1:
The patent implements dynamic storage tiering where data objects are automatically moved between storage tiers based on changing access patterns and QoS requirements. The system continuously monitors data usage and adjusts storage placement dynamically, transitioning data from high-performance (expensive) tiers to lower-performance (cheaper) tiers when performance demands decrease, and vice versa when performance demands increase. This dynamic adaptation resolves the contradiction by optimizing the balance between performance and cost over time rather than using a static placement strategy.
Solution Approach 2:
The system changes the storage tier parameter based on calculated ranks that combine data usage patterns (frequency and recency of access) with QoS parameters. By monitoring changes in access frequency, access recency, and QoS requirements, the system adjusts the storage tier assignment parameter to achieve optimal performance-cost tradeoff. Data objects with high ranks (frequently accessed or with strict QoS requirements) are placed on higher performance tiers, while those with low ranks are placed on lower performance tiers.
2Productivity
If data is moved frequently between storage tiers, then storage performance is optimized, but system complexity increases
Solution Approach 1:
The patent implements self-service automated storage tiering where the system autonomously monitors data access patterns, calculates ranks, and performs data migration without manual intervention. The system automatically detects when data should be promoted or demoted between tiers based on usage patterns and QoS requirements, eliminating the need for complex manual management while maintaining optimized storage performance. This automation handles the complexity internally while presenting a simplified interface to users.
Solution Approach 2:
The system employs feedback mechanisms by continuously monitoring data usage patterns (access frequency and recency) and QoS parameter changes, then using this feedback to adjust storage tier assignments. The feedback loop involves collecting access statistics, calculating updated ranks, comparing current tier placement with optimal placement, and executing migrations when beneficial. This closed-loop feedback system optimizes storage performance automatically while managing complexity through structured monitoring and decision-making processes.
Data Source
AI summary
Data objects are stored on storage devices, taking into account service level agreements or other quality of service parameters. In one aspect, data objects grouped into storage volumes. In addition, the storage devices are classified into different level storage tiers, where higher level storage tiers have higher performance and lower level storage tiers have lower performance. Ranks for the data objects are calculated, based on both a data usage pattern for the data object (e.g., recency and frequency) and on quality of service (QOS) parameters for the storage volume containing the data object. Examples of QOS parameters include service level agreements, priority, minimum and maximum input/output operations per second. The data objects are then stored on storage devices, based on the data objects' ranks and the storage devices' storage tiers.


