Adaptive Storage Garbage Collection via Workload Thresholds
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage device garbage collection methods are inefficient as they do not adapt to varying workloads, leading to performance issues during high I/O request periods and suboptimal data storage capacity utilization during low workload periods.
Innovation Solution
The system determines the workload threshold to selectively choose between different portions of the storage device for garbage collection, prioritizing speed during high workloads and data storage capacity during low workloads, using a controller that monitors I/O requests and performs adaptive garbage collection based on the storage device's conditions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional garbage collection is performed without workload adaptation, then the storage device can maintain basic functionality, but performance deteriorates during high I/O request periods and data storage capacity utilization is suboptimal during low workload periods
Solution Approach 1:
The garbage collection process is made dynamic by continuously monitoring workload characteristics and adapting the selection of storage portions accordingly. During high workloads, the system dynamically selects portions with fewer valid data blocks to minimize collection time, while during low workloads, it selects portions that will yield maximum data storage capacity recovery, thus resolving the contradiction between productivity and adaptability
Solution Approach 2:
The system changes the selection parameters for garbage collection based on workload conditions. When workload is high, the parameter shifts to prioritize speed (selecting portions with fewer valid blocks). When workload is low, the parameter shifts to prioritize capacity optimization (selecting portions with more valid blocks). This parameter adaptation resolves the contradiction by allowing the system to optimize for different objectives under different conditions
2Loss of time
If garbage collection prioritizes speed during high workloads by selecting portions with fewer valid data blocks, then garbage collection time is reduced, but data storage capacity utilization deteriorates
Solution Approach 1:
The system dynamically adjusts the garbage collection strategy based on real-time workload monitoring. During high workload periods, it temporarily adopts a speed-optimized strategy selecting portions with fewer valid blocks, accepting reduced capacity utilization. During low workload periods, it switches to a capacity-optimized strategy selecting portions with more valid blocks, thereby recovering more storage capacity. This dynamic switching resolves the contradiction between minimizing time loss and maximizing quantity recovery
3Quantity of substance
If garbage collection prioritizes data storage capacity during low workloads by selecting portions with more valid data blocks, then data storage capacity is optimized, but garbage collection time increases
Solution Approach 1:
The system employs dynamic workload-based selection to switch between capacity-optimized and time-optimized garbage collection strategies. During low workloads, it safely executes longer-duration garbage collection on portions with more valid blocks to maximize capacity recovery. During high workloads, it switches to faster collection on portions with fewer valid blocks, thus resolving the contradiction by performing the time-consuming capacity-optimized collection only when system conditions permit
4Device complexity
If a fixed portion of the storage device is selected for garbage collection, then the control process is simple, but the system cannot adapt to varying workload conditions leading to performance issues
Solution Approach 1:
The system changes the selection parameters for garbage collection based on monitored workload characteristics. Instead of using a fixed portion selection, it dynamically adjusts which portions are selected based on parameters such as workload intensity and portion characteristics (number of valid data blocks, available capacity). This parameter-based adaptation improves productivity while keeping the control process relatively simple by building upon existing garbage collection infrastructure
Solution Approach 2:
The system implements feedback by monitoring workload conditions and using this information to adjust garbage collection portion selection. The controller continuously observes I/O request patterns and feeds this information back into the garbage collection decision-making process, allowing the system to adapt its behavior to current conditions and improve overall performance without requiring completely new control mechanisms
Data Source
AI summary
A method operable with the storage device includes determining a workload to the storage device based on host Input/Output (I/O) requests to the storage device. When the workload is above a threshold, a first portion of the storage device is selected for garbage collection based on the I/O requests. Otherwise, when the workload is below the threshold, a second different portion of the storage device is selected for garbage collection based on a storage ability of the second portion of the storage device.


