Adaptive Erasure Coding for Reliable Distributed Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional erasure coding methods, such as Reed Solomon (RS) codes and Fountain codes, face challenges in balancing reliability and efficiency in data storage systems, particularly due to increasing block lengths and hardware wear, leading to prohibitive complexity and overhead inefficiencies, which are not adaptable to changing data and hardware conditions.

Innovation Solution

Adaptive erasure coding approaches that dynamically adjust encoding strategies based on message length, drive failure statistics, and hardware capabilities, employing combinations of RS codes and Fountain codes, and utilizing hybrid decoders to optimize coding and decoding processes, thereby improving reliability and efficiency by minimizing interleaving overhead and computational complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If Reed Solomon codes are used for long block lengths to ensure reliable data protection, then reliability is improved, but computational complexity and overhead increase prohibitively

Engineering Contradiction:
Improvedata protection reliabilityVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic selection of erasure coding schemes based on block length. For short block lengths, Reed Solomon codes are used; for long block lengths, Fountain codes are selected. This dynamic adaptation resolves the contradiction by matching the coding scheme to the appropriate data size, avoiding prohibitive complexity while maintaining reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of code selection based on block length threshold. When block length exceeds a threshold, the coding scheme parameter switches from Reed Solomon to Fountain codes. This parameter change enables the system to avoid the quadratic complexity growth of RS codes for large blocks while maintaining adequate protection.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the number of parity symbols is increased to protect against more segment losses, then reliability is improved, but encoding and decoding complexity increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoidencoding complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent dynamically adjusts the number of parity symbols based on the selected coding scheme and block length. Fountain codes generate parity symbols on-demand rather than pre-calculating all p parity symbols like RS codes. This dynamic approach maintains reliability while reducing encoding complexity for large blocks.

Inventive Principle:
Principle #15Dynamics

3Reliability

If multiple RS encodings are used for large files to ensure protection, then reliability is improved, but interleaving overhead increases

Engineering Contradiction:
Improvedata protectionVSAvoidinterleaving overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts the interleaving operation from the encoding process by using Fountain codes that can encode data in a streaming fashion without requiring complex interleaving. This removes the source of interleaving overhead while maintaining protection against segment losses.

Inventive Principle:
Principle #2Taking out (Extraction)

4Device complexity

If Fountain erasure codes are used to overcome RS code complexity, then computational complexity is reduced, but overhead efficiency decreases due to short block lengths

Engineering Contradiction:
Improvecomputational complexityVSAvoidoverhead efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic code selection where Fountain codes are used specifically for long block lengths where they demonstrate overhead efficiency, while Reed Solomon codes are used for short block lengths where they are more efficient. This dynamic approach resolves the contradiction by ensuring each coding scheme is applied in the context where it performs optimally.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10044374B2Adaptive erasure codes
Publication Date: 2018.08.07 ALTER DOMUS (US) LLC AS AGENT FOR THE SECURED PARTIES
  • US10044374B2 patent drawing
  • US10044374B2 patent drawing
  • US10044374B2 patent drawing

AI summary

Methods, apparatus, and other embodiments associated with adaptive use of erasure codes for distributed data storage systems are described. One example method includes accessing a message, where the message has a message size, selecting an encoding strategy as a function of the message size, data storage device failure statistics, data storage device wear periods, data storage space constraints, or overhead constraints, and where the encoding strategy includes an erasure code approach, generating an encoded message using the encoding strategy, generating an encoded block, where the encoded block includes the encoded message and metadata associated with the message, and storing the encoded block in the data storage system. Example methods and apparatus may employ Reed Solomon erasure codes or Fountain erasure codes. Example methods and apparatus may display to a user the storage capacity and durability of the data storage system.