RAID-C Cache Management for Storage Array Failure Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

RAID storage systems face downtime and resource-intensive recovery processes when the number of disk failures exceeds the fault tolerance level, leading to unrecoverable error conditions, which can render the system unusable.

Innovation Solution

Implementing a RAID-C management module that allows the storage server to continue operation by replacing failed storage devices with spare ones, writing identifiable patterns, and marking cache-miss indicators to manage unrecoverable errors, thereby maintaining system availability beyond the fault tolerance level.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the storage system uses traditional RAID fault tolerance mechanisms, then data integrity is maintained within the fault tolerance level, but the system shuts down and loses availability when the number of disk failures exceeds the fault tolerance level

Engineering Contradiction:
Improvedata integrityVSAvoidsystem availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the storage system into primary storage and cache storage components. The cache storage is specifically designed to tolerate failures beyond traditional RAID limits, while primary storage maintains traditional RAID fault tolerance. This segmentation allows the system to maintain data integrity for primary storage while preserving availability through cache recovery mechanisms that can handle unlimited disk failures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-establishing cache-miss indicators and identifiable patterns in the cache storage before failures occur. When disk failures exceed fault tolerance levels, the system can immediately mark cache-miss indicators and redirect access without requiring complex recovery processes, thus maintaining system availability while preserving data integrity through the primary storage copy.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the storage system performs traditional RAID recovery processes when disk failures exceed fault tolerance level, then data recovery is attempted, but the recovery process consumes significant time and system resources and prevents I/O operations

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system prepares cache-miss indicators and identifiable patterns in advance before failures occur. When disk failures exceed fault tolerance levels, the system can immediately mark these pre-prepared indicators and redirect I/O operations without initiating time-consuming traditional RAID recovery processes. This preliminary preparation eliminates recovery time while maintaining data recovery capability through the primary storage copy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the recovery function from the traditional RAID system by implementing a separate cache management mechanism. Instead of attempting to recover data through resource-intensive traditional RAID processes, the system extracts the cache layer and uses it to serve I/O requests directly, bypassing the need for time-consuming recovery operations while maintaining data availability.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If the storage system implements strict RAID fault tolerance enforcement, then data integrity is protected, but the system must shut down and become unusable when failures exceed the fault tolerance level

Engineering Contradiction:
Improvedata integrity protectionVSAvoidsystem usability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system segments storage into primary storage with strict RAID fault tolerance and cache storage with relaxed failure tolerance. This segmentation allows the cache layer to continue operating even when disk failures exceed traditional fault tolerance levels, maintaining system usability while the primary storage layer continues to enforce data integrity protection through its copy of the data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The cache storage acts as an intermediary between the client and the primary storage system. When disk failures exceed fault tolerance levels, the cache layer with its cache-miss indicators continues to serve I/O requests, maintaining system usability. The primary storage system simultaneously maintains data integrity protection, and the intermediary cache layer bridges these two requirements by redirecting access away from failed disks.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If the storage system activates file system consistency checks to recover from unrecoverable errors, then data consistency may be restored, but the system experiences extended downtime and resource consumption

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem operational time
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system pre-establishes cache-miss indicators and identifiable patterns before failures occur, eliminating the need for extended file system consistency checks. When disk failures exceed fault tolerance levels, the system can immediately mark these pre-prepared indicators and continue operating, maintaining productivity while data consistency is preserved through the primary storage copy and the structured cache recovery mechanism.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8386834B1Raid storage configuration for cached data storage
Publication Date: 2013.02.26 NETAPP INC
  • US8386834B1 patent drawing
  • US8386834B1 patent drawing
  • US8386834B1 patent drawing

AI summary

A storage server receives a notification indicating a failure of a mass storage device in a storage array. The storage server determines whether a number of failures exceeds a fault tolerance level of the array and if the number of failures exceeds the fault tolerance level, recovers an address space corresponding to the failed storage device. When recovering the address space, the storage server replaces the failed storage device with a spare storage device having an identifiable pattern stored thereon and determines whether a file system on the storage system can automatically invalidate cached data blocks on the failed storage device.