RAID Rebuild Prioritization via File Attributes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current RAID systems face challenges in efficiently rebuilding data after a drive failure, particularly when multiple failures occur consecutively, leading to potential data loss and economic losses, as they do not prioritize data recovery based on importance and may not fully rebuild files or metadata.

Innovation Solution

A method is introduced that assigns priority values to data blocks in a RAID system based on attributes such as block size, read frequency, and data protection level, allowing for prioritized rebuilding using parity data, ensuring critical data is recovered first and reducing the risk of further data loss during subsequent drive failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is striped across multiple drives in a RAID array, then data redundancy and fault tolerance are improved, but the complexity of data recovery during drive failure increases

Engineering Contradiction:
Improvedata redundancyVSAvoiddata recovery complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the data recovery process into priority-based portions, dividing the rebuild operation into critical and non-critical data segments that are recovered in sequence based on assigned priority values

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-calculating and storing priority values for each data block before failure occurs, enabling immediate prioritized recovery without delay during the rebuild process

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the entire drive is copied back during rebuild, then complete data redundancy is achieved, but the time required for recovery increases

Engineering Contradiction:
Improvedata redundancyVSAvoidrebuild time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies partial action by recovering only the necessary portion of data at full priority during the critical rebuild phase, rather than copying back the entire drive uniformly, thus reducing rebuild time while maintaining essential redundancy

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Priority values are pre-calculated and stored before failure occurs, enabling immediate prioritized recovery without delay during the rebuild process

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If data blocks are rebuilt in sequential order, then the rebuild process is simple to manage, but critical data may not be recovered first increasing risk of further data loss

Engineering Contradiction:
Improverebuild managementVSAvoiddata protection
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent changes the parameter of data block ordering from sequential to priority-based, using priority values assigned to each block to determine recovery sequence, thus ensuring critical data is recovered first while maintaining automated management

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Priority values are pre-calculated and stored before failure occurs, enabling immediate prioritized recovery without delay during the rebuild process

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10691543B2Machine learning to enhance redundant array of independent disks rebuilds
Publication Date: 2020.06.23 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10691543B2 patent drawing
  • US10691543B2 patent drawing
  • US10691543B2 patent drawing

AI summary

Machine logic (for example, software) for storing: (i) a plurality of files across multiple disk drives of a RAID array and (ii) checksum data for the files. The machine logic rules assign priority values to each file based on one or more attributes of the files. These priority values are used to determine the order in which files are rebuilt using the checksum data so that the most important files are rebuilt first.