Dynamic RAID Recovery via Parity Redistribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current RAID systems face performance degradation due to copy-on-write architecture and increased unrecoverable data risk when multiple disks malfunction, necessitating a method for dynamic recovery management that ensures system operation under various conditions without introducing side effects.
Innovation Solution
A method and apparatus for dynamic recovery management in RAID systems, involving writing protected data and management information across multiple storage devices, with parity-check codes and validity indicators, allowing seamless data recovery by redistributing data across different storage devices in case of malfunctions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If copy-on-write architecture is used for data backup, then data protection is improved, but server performance degrades over time
Solution Approach 1:
The system performs preliminary actions by pre-allocating spare storage capacity and pre-computing parity information. When disk failures occur, the system can immediately reconstruct data using pre-prepared parity blocks without triggering performance-degrading write operations during normal operations.
Solution Approach 2:
Instead of using copy-on-write that creates performance overhead, the system uses redirect-on-write with asynchronous copying of parity information. Data is written to the primary location immediately, and parity/copy blocks are updated in the background, eliminating the performance penalty of synchronous copying.
2Productivity
If redirect-on-write architecture is used to prevent performance degradation, then server performance is maintained, but other problems arise including increased unrecoverable data risk
Solution Approach 1:
The system implements beforehand cushioning by maintaining spare capacity and additional parity blocks beyond the minimum required. This cushioning layer provides a buffer that allows the system to handle multiple disk failures without losing data, as the extra redundancy capacity absorbs the impact of failures.
Solution Approach 2:
The system dynamically changes the redundancy parameter k in RAID(k+1) configurations. By adjusting the level of redundancy based on system needs and failure patterns, the system can optimize between performance and recoverability, using higher redundancy only when necessary to protect against multiple failures.
3Reliability
If dynamic recovery management is implemented to handle multiple disk failures, then data recoverability is improved, but system complexity increases
Solution Approach 1:
The system segments the storage array into multiple independent RAID groups, each with its own redundancy management. This segmentation isolates failure domains, so that complex recovery operations are confined to individual groups rather than affecting the entire system, reducing overall management complexity.
Solution Approach 2:
The system introduces a management layer that acts as an intermediary between the physical disks and the data recovery process. This intermediary handles the complexity of dynamic recovery management, tracking disk statuses, managing parity information, and coordinating reconstruction operations, thereby simplifying the overall system architecture.
Data Source
AI summary
A method and apparatus for performing dynamic recovery management regarding a RAID are provided. The method includes: writing a first set of protected data into a first protected access unit of multiple protected access units of the RAID, and recording a first set of management information corresponding to the first set of protected data, for data recovery of the first set of protected data; and when any storage device of multiple storage devices of the RAID malfunctions, writing a second set of protected data into a second protected access unit of the protected access units, and recording a second set of management information corresponding to the second set of protected data, for data recovery of the second set of protected data. Any set of the first set of protected data and the second set of protected data includes data and multiple parity-check codes.


