Storage System Failure Recovery Using Degraded State Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In RAID storage systems, hardware failures lead to inconsistent data states during recovery, causing data loss events due to the unpredictable timing of disk reactivation, resulting in user experience issues.

Innovation Solution

The solution involves recording the failure duration of a disk group and maintaining it in a degraded but not ready state until a predetermined ready time limit is reached, set shorter than the LUN debounce time to avoid data unavailable events and reduce the data loss window.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the system forces disk group access in a degraded state shortly after two disks are online, then productivity is improved by allowing operations to resume, but reliability deteriorates due to data loss events from incomplete reading and writing

Engineering Contradiction:
Improveoperation resumption speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by setting a predetermined time window (e.g., 5 seconds) after the first two disks come online before allowing degraded state access. This time window is calculated based on the LUN debounce time, ensuring that by the time operations are permitted, all disks should have completed their power-on sequence and data consistency checks, thus preventing data loss events while enabling quick resumption of productivity

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the system waits for all disk drives to recover before allowing operations, then reliability is improved by ensuring data consistency, but productivity deteriorates due to extended downtime

Engineering Contradiction:
Improvedata consistencyVSAvoiddowntime duration
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary verification by monitoring the power-on sequence of all disks and using the LUN debounce time as a reference to determine when all disks are ready. This preliminary check ensures data consistency is verified before operations resume, while the automated timing mechanism minimizes the waiting period, thus balancing reliability with productivity

Inventive Principle:
Principle #10Preliminary action

3Productivity

If the LUN debounce time is reduced to speed up recovery, then productivity is improved by reducing downtime, but reliability worsens due to increased risk of data loss events

Engineering Contradiction:
Improverecovery speedVSAvoiddata loss risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies parameter changes by dynamically adjusting the predetermined time window parameter based on the LUN debounce time and the number of disks in the array. This optimized parameter ensures that the system waits long enough for all disks to complete their power-on sequence (maintaining reliability) while minimizing the wait time (improving productivity). The parameter is calculated as a proportion of the LUN debounce time, adapting to different storage system configurations

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10922175B2Method, apparatus and computer program product for failure recovery of storage system
Publication Date: 2021.02.16 EMC IP HLDG CO LLC
  • US10922175B2 patent drawing
  • US10922175B2 patent drawing
  • US10922175B2 patent drawing

AI summary

Techniques are directed to failure recovery of a storage system. In accordance with certain techniques, in response to detecting that a disk group of a memory system failed, failure duration of the disk group is recorded. If the failure duration does not reach a predetermined ready time limit and the disk group is in a degraded state, the disk group is maintained in a degraded but not ready state. The predetermined ready time limit is shorter than a logic unit number debounce time limit to avoid a data unavailable event. With such techniques, the possibility of occurrence of a data loss event may be reduced significantly while avoiding a data unavailable event.