Storage Redundancy Coding for Multi-Sector Data Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing digital data storage systems, particularly WORM storage systems, lack efficient and practical methods for correcting errors within a single media sector or across multiple sectors, leading to unpredictable latency and capacity issues, especially in archival storage scenarios where data is written and read in large amounts.
Innovation Solution
A computer-implemented method for data recovery using redundancy codes stored on a storage medium, where each redundancy code is a linear sum of information sectors weighted by coefficients, allowing for decoding processes to recover missing sectors by inverting random linear combinations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If primitive sector error recovery methods are used (reserving spare areas or write-after-read checks), then data recovery capability is provided, but storage capacity is reduced or latency becomes unpredictable
Solution Approach 1:
The patent changes the fundamental parameter of redundancy organization from static (fixed spare sectors) to dynamic (distributed parity codes). Instead of reserving fixed portions of media for spares, the system computes parity codes across data sectors and stores them in a distributed manner, allowing flexible reconstruction of any failed sector without dedicating permanent spare capacity.
Solution Approach 2:
The patent creates redundant copies of data through parity computation rather than physical duplication. By calculating parity codes from data sectors and storing them separately, the system enables reconstruction of original data through mathematical operations, avoiding the need for exact physical copies while maintaining recovery capability.
2Reliability
If primitive sector error recovery methods are used (reserving spare areas or write-after-read checks), then data recovery capability is provided, but access latency becomes unpredictable
Solution Approach 1:
The patent performs preliminary parity computation during the initial write operation. Parity codes are calculated and stored alongside data sectors in the same write cycle, eliminating the need for separate recovery operations. This preliminary preparation ensures that data reconstruction can proceed immediately using pre-computed parity information.
3Reliability
If complex media-wide redundancy systems are used in WORM storage, then data recovery capability is improved, but device complexity increases
Solution Approach 1:
The patent segments the redundancy system into independent parity groups that can be computed and stored separately for different data sectors. Each parity code is calculated from a specific subset of data sectors using simple XOR operations, allowing modular implementation without requiring complex global redundancy management across the entire media.
4Reliability
If read-after-write verification is used in tape systems, then data integrity is ensured, but capacity utilization becomes unpredictable
Solution Approach 1:
The patent merges the data storage and redundancy functions into a unified structure where parity codes are stored in the same media alongside data sectors. This integration eliminates the need for separate verification passes or additional capacity reservations, as the parity information is immediately available for reconstruction operations.
Data Source
Figure 1~2
Figure 3
Figure 4
AI summary
A method of reading from a storage medium to recover a group of information sectors, each comprising a respective information payload. The medium stores redundancy data comprising a plurality of separate redundancy codes for the group, each code being a linear sum of terms, each term in the sum being the information payload from a different respective one of the information sectors in the group weighted by a respective coefficient of a set of coefficients for the redundancy code. The method comprises, after the redundancy data has already been stored on the medium: identifying a set of k' information sectors to be recovered; selecting k' of the redundancy codes; determining a square matrix E of the k' information sectors by the k' sets of coefficients of the selected codes; determining a matrix D being a matrix inverse of E; and recovering the k' information payloads from the inverse matrix D.