Concurrent RAID Rebuild via Relatedness Scoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems with RAID technology face significant bottlenecks during disk rebuilds, particularly due to increased write bandwidth requirements and the risk of data loss from concurrent failures during the rebuilding process.

Innovation Solution

The implementation of a concurrent rebuild strategy that allocates spare drive extents from a pool to distribute rebuild operations across multiple physical drives, using a RAID mapping table to manage drive extents and calculate relatedness scores to optimize concurrent processing, thereby reducing bottlenecks and minimizing data loss risk.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is rebuilt onto a single spare disk, then data redundancy is restored, but write bandwidth becomes a bottleneck and rebuild time increases

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

Solution Approach 1:

The patent segments the rebuild process by dividing the failed drive's data into multiple chunks that can be simultaneously rebuilt onto multiple different physical drives. Instead of sequentially rebuilding all data onto a single spare drive, the system performs parallel rebuild operations across multiple drives, thereby reducing the overall rebuild time while maintaining data redundancy.

Inventive Principle:
Principle #1Segmentation

2Loss of time

If rebuild operations are performed concurrently on multiple drives, then rebuild time is reduced, but the risk of concurrent failures increases

Engineering Contradiction:
Improverebuild timeVSAvoiddata loss risk
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent implements dynamic monitoring and management of concurrent rebuild operations. The system dynamically adjusts the number and selection of drives participating in concurrent rebuilds based on real-time drive health status and workload conditions. This dynamic approach allows the system to maximize parallelism for speed while maintaining control over the complexity of concurrent operations to minimize failure risk.

Inventive Principle:
Principle #15Dynamics

3Productivity

If spare drive extents are allocated from a pool, then rebuild operations can be distributed, but device complexity increases

Engineering Contradiction:
Improverebuild efficiencyVSAvoidmanagement complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal drive extent pool that serves multiple functions: it acts as a source of spare capacity for rebuild operations, a buffer for load balancing, and a mechanism for dynamic resource allocation. This multi-functional pool simplifies the overall management architecture by providing a single, unified mechanism that handles various rebuild scenarios without requiring separate specialized structures for each case.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10210045B1Reducing concurrency bottlenecks while rebuilding a failed drive in a data storage system
Publication Date: 2019.02.19 EMC IP HLDG CO LLC
  • US10210045B1 patent drawing
  • US10210045B1 patent drawing
  • US10210045B1 patent drawing

AI summary

A concurrent rebuild list indicates RAID extents to be concurrently rebuilt in response to a physical drive failure. When rebuilding of a RAID extent in the list completes, a next RAID extent to add to the list is selected that has a lowest relatedness score in a candidate set of RAID extents. The relatedness score indicates an amount of limitation with regard to concurrently rebuilding the candidate RAID extent in combination with the RAID extents remaining in the concurrent rebuild list. The relatedness score may be a sum of a weighted write score indicating limits on concurrent write operations when rebuilding a candidate RAID extent in combination with the RAID extents remaining in the concurrent rebuild list, and a read score indicating limits on concurrent read operations when rebuilding the candidate RAID extent in combination with the RAID extents remaining in the concurrent rebuild list.