Storage Array Wear Segmentation for Concurrent Failure Prevention
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems using flash memory, such as SSDs, face the challenge of concurrent failures due to wear leveling, which can lead to data loss and reduced storage device lifespan.
Innovation Solution
A method and apparatus that divide a storage array into two subsets based on the degrees of wear of storage devices, migrating data from less worn devices to more worn ones, thereby extending the lifespan of the less worn devices and reducing the likelihood of simultaneous failures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Duration of action of stationary object
If wear leveling is implemented to distribute write operations evenly across all SSDs, then the overall lifespan of the storage array is extended, but multiple SSDs fail concurrently causing data loss
Solution Approach 1:
The storage array is segmented into multiple storage pools based on wear degrees of SSDs. Each pool contains SSDs with similar wear levels, creating distinct groups (first storage pool with higher wear, second storage pool with lower wear). This segmentation prevents uniform wear distribution across all SSDs and eliminates concurrent failures within the same pool.
Solution Approach 2:
Different storage pools are assigned different quality characteristics based on their wear degrees. The first storage pool (higher wear) is used for non-critical data or data with lower reliability requirements, while the second storage pool (lower wear) stores critical data requiring higher reliability. This local quality differentiation ensures that data importance matches the reliability of the underlying storage devices.
2Reliability
If data is migrated from high-wear SSDs to low-wear SSDs, then reliability is improved by avoiding concurrent failures, but system complexity increases due to migration management
Solution Approach 1:
The system implements automatic wear degree monitoring and pool assignment. When an SSD's wear degree changes, the system automatically determines its new pool assignment and triggers data migration if necessary. This self-service mechanism eliminates the need for manual intervention in wear management and pool reconfiguration, reducing operational complexity despite the sophisticated underlying logic.
Solution Approach 2:
The system continuously monitors wear degrees of SSDs and uses this feedback to dynamically adjust pool assignments and trigger migrations. The feedback loop ensures that the storage array adapts to changing wear conditions automatically, maintaining optimal reliability without requiring complex manual management procedures.
3Reliability
If SSDs are divided into different wear-based pools, then concurrent failures are prevented, but storage management complexity increases
Solution Approach 1:
The storage array is divided into multiple storage pools based on wear degrees, creating distinct groups of SSDs with similar reliability characteristics. This segmentation simplifies management by allowing independent handling of each pool according to its specific wear level and associated data requirements.
Solution Approach 2:
The storage pool assignments are dynamic rather than static. SSDs can transition between pools as their wear degrees change over time. This dynamic adaptation allows the system to automatically respond to wear progression without requiring complete reconfiguration or manual intervention, simplifying long-term management.
Data Source
Figure 1
Figure 2~3
Figure 4~5
AI summary
Embodiments of the present invention provide a method, an apparatus, and a controller for managing a storage array. A storage array is divided into a first storage device subset and a second storage device subset according to degrees of wear of storage devices, where a minimum degree of wear of a storage device in the first storage device subset is greater than or equal to a maximum degree of wear of a storage device in the second storage device subset, and then, data in the second storage device subset is migrated to the first storage device subset or to-be-written data is written into the first storage device subset. Therefore, service lives of storage devices in the second storage device subset may be extended relatively by shortening service lives of storage devices in the first storage device subset, thereby widening an interval between time when a storage device in the first storage device subset fails and time when a storage device in the second storage device subset fails, reducing a risk that multiple storage devices fail concurrently due to wear leveling, and improving data reliability.