Dispersed Storage Slice Rebuilding for Corruption Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current dispersed storage networks face challenges in maintaining data integrity and availability due to storage unit failures, as they lack efficient mechanisms for rebuilding corrupted or missing encoded data slices without redundant copies.

Innovation Solution

The implementation of a dispersed storage network with a managing unit and integrity processing unit that periodically checks for errors, flags corrupted or missing data slices, and rebuilds them using other retrieved encoded data slices, utilizing error encoding and decoding functions like Cauchy Reed-Solomon encoding to ensure data recovery and storage across multiple geographically distributed storage units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If dispersed storage networks use error correction encoding to distribute data across multiple storage units, then data availability and fault tolerance are improved, but the complexity of detecting and repairing corrupted slices increases

Engineering Contradiction:
Improvedata availabilityVSAvoidcorrupted slice detection
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The system performs preliminary integrity checking by computing and storing checksums for each encoded slice during the encoding phase. This preliminary action enables quick detection of corrupted slices without requiring complex analysis during retrieval, as the checksums are readily available for comparison against actual slice data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The integrity checking mechanism provides feedback about slice corruption status to the distributed storage system. When a slice is found to be corrupted through checksum verification, this feedback triggers automatic repair procedures that retrieve the original data from remaining valid slices and regenerate the corrupted slice, maintaining system reliability.

Inventive Principle:
Principle #23Feedback

2Reliability

If the system stores redundant copies of data for recovery, then data loss prevention is improved, but storage efficiency and resource utilization deteriorate

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

Solution Approach 1:

The system segments data into multiple encoded slices distributed across different storage units, replacing traditional redundant copying. Using erasure coding, the data is divided into k data slices and n-k parity slices, where any k slices suffice to reconstruct the original data. This segmentation provides fault tolerance with better storage efficiency than full redundancy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the storage parameter from storing complete redundant copies to storing encoded slices with mathematical relationships. By adjusting the encoding parameters (k and n values), the system can optimize the balance between storage efficiency and fault tolerance, storing only the minimum necessary redundancy to achieve desired reliability levels.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If the system performs periodic integrity checks on all stored slices, then data integrity is improved, but processing overhead and energy consumption increase

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

Instead of performing exhaustive integrity checks on all slices uniformly, the system applies partial checking based on risk assessment and access patterns. Frequently accessed slices or those from storage units with higher failure rates undergo more rigorous checking, while less critical slices use lighter verification, reducing overall processing overhead while maintaining adequate integrity monitoring.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10387080B2Rebuilding slices in a dispersed storage network
Publication Date: 2019.08.20 PURE STORAGE INC
  • US10387080B2 patent drawing
  • US10387080B2 patent drawing
  • US10387080B2 patent drawing

AI summary

A method for use in a dispersed storage network operates to select a recovery of selected ones of one or more first sets of encoded data slices in response to detecting a storage error associated with the selected ones of the one or more first sets of encoded data slices; issue requests for a second decode threshold number of encoded data slices of selected ones of one or more second sets of encoded data slices corresponding to the selected ones of the one or more first sets of encoded data slices; decode the second decode threshold number of encoded data slices to produce recovered data in response to receiving the second decode threshold number of encoded data slices; encode the recovered data utilizing first IDA parameters associated with the first IDA to produce one or more rebuilt encoded data slices corresponding to the selected ones of the one or more first sets of encoded data slices; and facilitate storage of the one or more rebuilt encoded data slices.