RAID Parity Update Using Filler Data for Multi-Drive Failure Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

RAID arrays face challenges in quickly restoring data without data loss when an uncorrectable condition occurs, such as drive failures or media errors, especially when multiple data portions are unavailable, as existing methods like XOR operations cannot recover more than one invalid portion in RAID 3 or RAID 5 configurations.

Innovation Solution

The method involves identifying invalid data portions in a RAID array's data stripe, populating them with filler data of a known pattern, updating the parity portion based on these filler data, and performing an XOR operation with valid data portions to create an updated data stripe that can be used for restoration, even in degraded conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional XOR operations are used for data recovery in RAID 3 or RAID 5 arrays, then data restoration is possible for single failures, but data loss occurs when multiple data portions are unavailable

Engineering Contradiction:
Improvedata restoration capabilityVSAvoiddata loss
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing parity information that can be used to reconstruct multiple lost data portions. The system prepares recovery mechanisms in advance by maintaining updated parity portions that encode information from multiple data portions, enabling restoration even when multiple portions are unavailable during operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the parameter of parity calculation by using extended XOR operations that incorporate filler data portions. Instead of traditional XOR between original data portions only, the system transforms the parity calculation to include synthetic filler portions with known patterns, creating a new parity representation that enables recovery of multiple lost portions simultaneously.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If filler data with known patterns is introduced to enable multi-portion recovery, then data restoration capability improves, but system complexity increases

Engineering Contradiction:
Improverestoration from uncorrectable conditionsVSAvoidparity update mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces filler data portions as intermediary elements with known patterns. These filler portions act as mediators that bridge the gap between available valid data portions and lost data portions. By using these intermediary filler portions with predictable patterns, the system can perform XOR operations to reconstruct multiple lost portions without requiring direct access to all original data.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If parity portions are updated based on filler data, then recovery capability from drive failures improves, but processing time increases

Engineering Contradiction:
Improverecovery from drive failuresVSAvoidparity update time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent maintains continuity of useful action by implementing incremental parity updates. Instead of recalculating entire parity portions from scratch, the system continuously updates parity information as data changes occur, using efficient XOR operations that build upon previous parity states. This allows the parity information to remain current and useful for recovery without requiring exhaustive recalculation.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9268640B1Limiting data loss on parity RAID groups
Publication Date: 2016.02.23 EMC IP HLDG CO LLC
  • US9268640B1 patent drawing
  • US9268640B1 patent drawing
  • US9268640B1 patent drawing

AI summary

A method, computer program product, and computing system for sensing the occurrence of an uncorrectable condition within a data stripe of a RAID array. The data strip includes a plurality of data portions and a parity portion. One or more invalid data portions included within the plurality of data portions are identified. The one or more invalid data portions are populated with filler data having a known pattern, thus defining one or more filler portions. The parity portion is updated based, at least in part, upon the one or more filler portions, thus defining an updated data stripe that includes an updated parity portion.