Fountain Code Storage Layout for Low-Locality Fault Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current fault-tolerant storage systems face challenges in achieving low repair locality, low encoding/decoding complexity, and low storage overhead while maintaining reliability, as existing techniques often result in high operational complexity and increased storage overhead.

Innovation Solution

The use of Fountain codes with a low-complexity decoder and systematic encoding to generate encoding symbols, optimizing the probability distribution for repair locality and encoding/decoding complexity, and employing a Belief Propagation decoder to reduce computational overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If triplication is used for fault tolerance, then reliability is improved, but storage overhead increases

Engineering Contradiction:
Improvefault toleranceVSAvoidstorage overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent uses erasure coding to create redundant copies of data across multiple drives. Instead of simple triplication (3 copies), the system generates parity information that allows data recovery from any subset of drives, achieving better fault tolerance with reduced storage overhead compared to traditional replication methods

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent changes the redundancy parameter from fixed triplication to flexible erasure coding schemes where the number of parity symbols can be adjusted. This allows optimization of the trade-off between reliability and storage overhead by selecting appropriate code parameters based on system requirements

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If erasure codes are used to reduce storage overhead, then storage overhead is reduced, but repair performance deteriorates

Engineering Contradiction:
Improvestorage overheadVSAvoidrepair performance
Core Design Contradiction:
Quantity of substanceVSEase of repair

Solution Approach 1:

The patent segments the repair process into local and global components. Local repair uses parity symbols within a code group to repair failed data symbols, while global repair coordinates across multiple code groups. This segmentation enables efficient repair with reduced storage overhead by minimizing the number of drives that need to be accessed for repair operations

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces parity symbols as intermediary elements that facilitate repair operations. These parity symbols act as mediators that can be used to recover failed data symbols without requiring direct access to all original data symbols, thereby improving repair performance while maintaining low storage overhead

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If MDS codes are used for fault tolerance, then reliability is improved, but decoding complexity increases

Engineering Contradiction:
Improvefault toleranceVSAvoiddecoding complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the decoding process into iterative steps that process one code group at a time. Each iteration focuses on a specific code group and its associated parity symbols, breaking down the complex decoding task into manageable chunks that can be processed sequentially, thereby reducing overall decoding complexity while maintaining the reliability benefits of MDS codes

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent employs dynamic decoding strategies that adapt to the state of the system during decoding. The iterative message-passing algorithm dynamically adjusts its processing based on which symbols have been successfully decoded and which still need recovery, optimizing the decoding process and reducing computational complexity compared to static decoding approaches

Inventive Principle:
Principle #15Dynamics

4Reliability

If repair locality is reduced to improve data loss prevention, then reliability is improved, but storage overhead increases

Engineering Contradiction:
Improvedata loss preventionVSAvoidstorage overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent organizes data and parity symbols into code groups with specific locality properties. By segmenting the storage system into groups where data symbols and their associated parity symbols are co-located, the system achieves low repair locality (enabling data loss prevention) while controlling storage overhead through efficient group management and reuse of parity symbols across multiple data symbols

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10922173B2Fault-tolerant distributed digital storage
Publication Date: 2021.02.16 OKPOTSE TORITSEJU
  • US10922173B2 patent drawing
  • US10922173B2 patent drawing
  • US10922173B2 patent drawing

AI summary

Described are fountain code constructs that solve multiple problems in distributed storage systems by providing systematic encoding, reduced repair locality, reduced encoding/decoding complexity, and enhanced reliability. Embodiments are suitable for the storage of large files and exhibit performance superior to existing codes, and demonstrate reduced implementation complexity and enhanced symbol repair locality.