Parallel Disk Recovery Planning for Erasure-Coded Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data recovery schemes in network systems and storage devices face inefficiencies in terms of storage space and fault tolerance, particularly during the reconstruction of failed disks, which affects system reliability and performance.

Innovation Solution

The implementation of a parallel recovery plan algorithm that generates and evaluates lists of recovery plans for each symbol in an erasure code, balancing speedup and load to efficiently reconstruct failed storage devices using XOR-based erasure codes and Tanner graphs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If parallel recovery schemes are implemented to reduce the load placed on each available disk and increase the rate at which the failed disk is recovered, then the reconstruction speed is improved, but the degraded mode performance worsens due to the load placed on the system

Engineering Contradiction:
Improvereconstruction speedVSAvoiddegraded mode performance
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The recovery process is divided into multiple independent recovery operations that can be executed in parallel. Each recovery operation reads data from a specific subset of available disks to reconstruct a portion of the failed disk. This segmentation allows the system to improve reconstruction speed through parallel processing while managing the load distribution to minimize impact on degraded mode performance.

Inventive Principle:
Principle #1Segmentation

2Reliability

If serial recovery is used where each disk is read in its entirety to recover the lost data, then the load on any single disk is minimized, but the reconstruction time increases significantly

Engineering Contradiction:
Improvesystem stabilityVSAvoidreconstruction time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of reading entire disks sequentially, the system segments the recovery process into parallel operations that read only the necessary data blocks from multiple disks simultaneously. This reduces reconstruction time while maintaining system stability by controlling the load on individual disks through structured parallel execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The recovery process transitions from a single-dimensional serial approach to a multi-dimensional parallel approach. Multiple recovery operations execute concurrently across different time and disk resources, transforming the recovery process from sequential to parallel execution, thereby significantly reducing reconstruction time.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If erasure codes are used to create data redundancies for recovery, then fault tolerance is improved, but the storage space required increases

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

Solution Approach 1:

The system changes the parameters of the erasure code to optimize the balance between fault tolerance and storage space efficiency. By adjusting code parameters such as the number of redundant blocks and the distribution of parity information, the system achieves the required fault tolerance with minimized additional storage space requirements.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8677208B2Generating a parallel recovery plan for a data storage system
Publication Date: 2014.03.18 VALTRUS INNOVATIONS LTD
  • US8677208B2 patent drawing
  • US8677208B2 patent drawing
  • US8677208B2 patent drawing

AI summary

A method of identifying a parallel recovery plan for a data storage system comprises identifying base recovery plans for symbols of an erasure code implemented across a plurality of storage devices in a data storage system, generating a list of first recovery plans for a first symbol by manipulating the base recovery plans, and combining selected first recovery plans from the list to generate a set of parallel recovery plans to reconstruct a failed storage device.