Parallel RAID Rebuild via Memory Hypervisor I/O Requests

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems face challenges in efficiently rebuilding data in degraded RAID groups while maintaining data integrity and performance, particularly in scenarios where data is distributed across multiple fault domains.

Innovation Solution

A method involving a memory hypervisor module that generates and issues I/O requests to read and rebuild data from a source file associated with a degraded RAID group, using the source file's data layout to rebuild a target file associated with a new RAID group, allowing read-only access during the process, and ensuring data integrity through error detection and correction mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is rebuilt from a degraded RAID group to a new RAID group, then data integrity is improved, but system performance deteriorates due to the rebuild process

Engineering Contradiction:
Improvedata integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the rebuild process into parallel segments by creating multiple reconstruction I/O requests that read different portions of data from the degraded RAID group simultaneously. Each segment is processed independently and written to the new RAID group, enabling concurrent rebuild operations that improve overall system performance during the integrity restoration process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by creating a snapshot of the degraded RAID group before the rebuild process begins. This snapshot preserves the original data state and allows the rebuild to proceed using pre-prepared data layouts, ensuring data integrity can be verified while minimizing performance impact during the actual reconstruction.

Inventive Principle:
Principle #10Preliminary action

2Speed

If parallel rebuild operations are implemented, then rebuild speed is improved, but data access complexity increases

Engineering Contradiction:
Improverebuild speedVSAvoiddata access complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism in the form of a metadata layer that manages the complex parallel rebuild operations. This metadata layer abstracts the complexity of multiple concurrent I/O requests and data layouts, presenting a simplified interface for data access while enabling high-speed parallel reconstruction in the background.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent adds a temporal dimension to data access by implementing snapshots and versioning. This allows parallel rebuild operations to proceed in the background while maintaining simple data access paths for applications, as they can continue to access the original data through the snapshot interface without being aware of the complex parallel reconstruction occurring simultaneously.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Ease of operation

If read-only access is allowed during rebuilding, then data availability is improved, but data layout management becomes more complex

Engineering Contradiction:
Improvedata availabilityVSAvoiddata layout management
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent creates a copy of the data layout information in the form of snapshots during the rebuild process. This copying mechanism allows read-only access to the original data through the snapshot while the new data layout is being constructed in parallel. The snapshot copy simplifies access management by providing a static, immutable view that applications can read without interfering with the complex layout reconstruction.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11579976B2Methods and systems parallel raid rebuild in a distributed storage system
Publication Date: 2023.02.14 EMC IP HLDG CO LLC
  • US11579976B2 patent drawing
  • US11579976B2 patent drawing
  • US11579976B2 patent drawing

AI summary

A method for rebuilding data, comprising: obtaining, from a metadata node, a source file data layout for a source file and a target file data layout for a target file, wherein the source file is associated with a degraded mapped RAID group and the target file is associated with a new mapped RAID group; generating, by the client application node, a plurality of input/output (I/O) requests to read a portion of the data associated with the source file using the source file data layout; obtaining, in response to the plurality of I/O requests, the portion of the data associated with the source file; rebuilding a second portion of the data associated with source file using the portion of the data; and initiating, storage of at least the second portion of the data associated with the source file in the storage pool using the target file data layout.