Rate-Matched Regenerating Codes for Storage Repair and Error Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed storage systems face inefficiencies in bandwidth and storage trade-offs during node regeneration, especially under adversarial attacks, where existing regenerating codes fail to optimize storage efficiency and error correction capabilities effectively.
Innovation Solution
The development of two-layer and m-layer rate-matched regenerating code constructions that optimize storage efficiency and error correction capabilities by matching code rates across layers, allowing for improved detection and correction of corrupted nodes, outperforming universally resilient regenerating codes in terms of storage efficiency and error correction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional Reed-Solomon code is used for distributed storage, then data reliability is improved, but bandwidth consumption during node repair becomes excessively high
Solution Approach 1:
The patent segments the code into multiple layers with different code rates. The first layer uses a higher code rate for basic error correction, while the second layer uses a lower code rate for additional protection. This segmentation allows the system to achieve the same reliability as traditional RS codes but with reduced bandwidth consumption during node repair, as the layered structure enables more efficient repair operations.
Solution Approach 2:
The patent changes the code rate parameter by using different code rates for different layers. The first layer uses code rate R1 and the second layer uses code rate R2, where R1 > R2. This parameter variation allows optimization of the trade-off between reliability and bandwidth consumption, achieving high reliability while minimizing repair bandwidth requirements.
2Reliability
If universally resilient regenerating code is used, then error correction capability is improved, but storage efficiency deteriorates
Solution Approach 1:
The patent applies local quality by assigning different code rates to different layers based on their specific functions. The first layer is designed with higher code rate for efficient storage and basic protection, while the second layer uses lower code rate for enhanced error correction. This localized optimization of code rate quality achieves strong error correction capability without sacrificing overall storage efficiency.
Solution Approach 2:
The patent creates a composite code structure by combining two different code layers with different rates. This composite approach integrates the advantages of both high code rate (storage efficiency) and low code rate (error correction capability) layers, achieving a solution that outperforms universally resilient regenerating codes in both storage efficiency and error correction capability.
3Productivity
If higher code rate is used in all layers, then storage efficiency is improved, but error correction capability deteriorates
Solution Approach 1:
The patent introduces dynamics by varying the code rate across different layers rather than using a uniform code rate. The first layer operates at code rate R1 for storage efficiency, while the second layer operates at code rate R2 for error correction. This dynamic adjustment of code rate based on layer function resolves the contradiction between storage efficiency and error correction capability.
Solution Approach 2:
The patent adds a dimensional aspect by organizing the code into multiple layers with different code rates. Instead of a single-dimensional uniform code rate, the system uses a multi-dimensional layered structure where each layer has its own code rate optimized for its specific purpose. This dimensional change enables simultaneous achievement of high storage efficiency and strong error correction capability.
Data Source
AI summary
Systems and methods provide for one or more server computers communicatively coupled to a network and configured to: generate a code construction for a file, including layers, each at a different code rate; calculate optimized code parameters, including storage efficiency, error-correction capability parameters, and constraints on error patterns; use the plurality of layers and optimized parameters to encode the file on a physical storage media; detect an error on the physical storage media; identify an error location within a first layer encoded at a first code rate; mark the error location as an erasure; and identify the erasure and a second error location for a second error location within a second layer, higher than the first layer, encoded at a second code rate.


