RAID Parity Block Coding for Multi-Error Stripe Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing RAID 5 and RAID 6 systems are unable to recover from three or more data errors in a stripe without adding additional parity disks, which reduces storage efficiency and increases complexity and cost.
Innovation Solution
A data storage method that utilizes F parity blocks in blank storage areas, generating additional check codes using a Galois field based on a global position array, to improve error tolerance and storage efficiency by recovering data even when errors occur in a disk where any block in a stripe is located.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If additional parity disks are added to improve error tolerance for three or more data errors, then reliability is improved, but device complexity and storage efficiency deteriorate
Solution Approach 1:
The patent merges the functions of multiple parity disks into a single parity disk by using erasure coding technology. Instead of adding separate parity disks for each failure scenario, the system combines redundancy capabilities into one disk with enhanced coding algorithms that can handle multiple simultaneous failures, thereby reducing device complexity while maintaining high reliability
Solution Approach 2:
The patent changes the coding parameters by implementing erasure coding with configurable redundancy levels. The system can dynamically adjust the number of data blocks and parity blocks, as well as the coding strength, to match different reliability requirements without physically adding more disks. This parameter-based flexibility allows achieving high error tolerance with fewer physical components
2Reliability
If additional parity disks are added to improve error tolerance, then reliability is improved, but storage efficiency deteriorates due to reduced valid data proportion
Solution Approach 1:
The patent employs erasure coding with configurable parameters that allow flexible trade-off between reliability and storage efficiency. By adjusting the coding rate (ratio of data blocks to total blocks), the system can achieve different levels of error tolerance with varying storage overhead. For example, instead of dedicating entire disks to parity, the system can use a smaller proportion of capacity for redundancy while still protecting against multiple failures
Solution Approach 2:
The single parity disk in the patent serves multiple functions simultaneously - it can recover from single disk failures, multiple simultaneous failures, and various failure patterns within the same stripe. This multi-functional design eliminates the need for separate dedicated parity disks for different failure scenarios, maximizing the utility of each storage unit and improving overall storage efficiency
3Device complexity
If traditional RAID 5 or RAID 6 is used, then device complexity is low, but reliability deteriorates when three or more data errors occur in a stripe
Solution Approach 1:
The patent enhances traditional RAID by changing the coding parameters from simple parity (RAID 5) or dual parity (RAID 6) to erasure coding with higher redundancy capability. The system configures the coding parameters to support recovery from multiple simultaneous failures while maintaining compatibility with existing RAID architectures, thus achieving improved reliability without completely redesigning the system
Solution Approach 2:
The patent introduces an intermediate layer of erasure coding algorithms between the data and the physical disks. This intermediary coding layer transforms the data into an encoded form that inherently provides enhanced error recovery capabilities. The coding layer acts as a mediator that adds reliability without requiring complex hardware changes, bridging the gap between simple RAID structures and high-reliability requirements
Data Source
AI summary
Disclosed in the embodiments of the present application are a data storage method and apparatus, a device, and a non-transitory readable storage medium. According to the embodiments of the present application, F parity blocks occupying blank storage areas are added to a RAID system, which not only increases error tolerance but also eliminates the need for additional parity disks. During data storage, corresponding original check codes are solved according to an original encoding method, and additional check codes located on the parity blocks are solved simultaneously. Thus, it is possible to recover more erroneous data based on the original check codes and the additional check codes. When an error occurs in a disk in which any block in a stripe is located and data loss occurs in other blocks of the same stripe, the corresponding data can still be recovered.


