Reed-Solomon Single-Erasure Repair Using Trace-Based Low-Bandwidth Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing Reed-Solomon codes require high bandwidth for repairing single erasures, as they need to transmit significant data from surviving nodes to reconstruct the failed node, which is inefficient compared to the best existing schemes like Hadoop's 64 or 60 bits for HDFS.

Innovation Solution

A method for repairing a single erasure in Reed-Solomon codes over a finite field by identifying a failed node and using a permutation of elements to reconstruct its content with reduced bandwidth, where surviving nodes transmit only a portion of their content, specifically calculated using trace maps and matrix operations to minimize data transfer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional Reed-Solomon codes are used for repairing single erasures, then data reliability is maintained, but repair bandwidth is high requiring significant data transmission from surviving nodes

Engineering Contradiction:
Improvedata reliabilityVSAvoidrepair bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the repair process into two distinct phases: (1) a low-bandwidth phase where surviving nodes transmit only trace values (single field elements) instead of full symbol data, and (2) a reconstruction phase where the failed node is repaired using these trace values. This segmentation reduces repair bandwidth from O(n) full symbols to O(n) single field elements, achieving significant bandwidth reduction while maintaining data reliability through the mathematical properties of trace maps in Reed-Solomon codes

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter being transmitted during repair from full Reed-Solomon symbols to trace values (single field elements). By applying the trace map transformation to the code symbols before transmission, the system modifies the data representation to require fewer bits for transmission. The trace map Tr: GF(q^m) → GF(q) reduces each m-extension field element to a single base field element, changing the transmission parameter from m-field-element width to 1-field-element width, thereby reducing repair bandwidth by a factor of m

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If full symbol data is transmitted from surviving nodes, then accurate reconstruction is achieved, but data transmission volume is large

Engineering Contradiction:
Improvereconstruction accuracyVSAvoiddata transmission volume
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential information needed for reconstruction by transmitting trace values rather than full symbols. The trace map Tr(c_i) extracts a single field element from each surviving node's symbol c_i, capturing the critical reconstruction information while discarding redundant data. This extraction approach maintains reconstruction accuracy because the trace values contain sufficient information to recover the failed symbol through polynomial interpolation, while reducing transmission volume from O(m) field elements per node to O(1) field element per node

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10686471B2One-sub-symbol linear repair schemes
Publication Date: 2020.06.16 SAMSUNG ELECTRONICS CO LTD
  • US10686471B2 patent drawing
  • US10686471B2 patent drawing
  • US10686471B2 patent drawing

AI summary

A method for repairing a single erasure in a Reed Solomon code in a system of a plurality of n storage nodes and a controller, wherein a content of each storage node is a codeword and each node stores a vector v. The method includes identifying a failed storage node; transmitting an index of the failed storage node to each surviving storage node; multiplying the content of each node i by a j-th component of a vector that is a permutation of elements of vector v that correspond to the surviving storage nodes; determining a trace map of the result and converting the result from an m×r bit representation into a reduced representation of r bits; reconstructing the content of the failed storage node from the reduced representation of each surviving node's content; and outputting the reconstructed content of the failed storage node.