RAID Configuration Snapshots for Consistent I/O Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems experience inconsistent throughput and performance issues when changing RAID configurations, as they typically halt I/O processing to make configuration changes, leading to adverse impacts on latency and system performance.

Innovation Solution

The technique involves creating snapshots of RAID configurations and associating each I/O request with a specific configuration snapshot, allowing I/O requests to be processed without delay during configuration changes by using reference-counted RAID objects and maintaining consistent snapshots throughout the processing hierarchy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If I/O processing is halted to make RAID configuration changes, then configuration consistency is maintained, but I/O throughput and system performance deteriorate

Engineering Contradiction:
Improveconfiguration consistencyVSAvoidI/O throughput
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent segments the RAID configuration state into multiple snapshots, allowing different I/O requests to reference different configuration states. This enables concurrent processing of I/O requests with configuration changes without halting the entire system, thus maintaining both configuration consistency and I/O throughput.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates configuration snapshots before making RAID configuration changes. By preparing the new configuration state in advance and associating it with subsequent I/O requests, the system avoids halting I/O processing while ensuring configuration consistency is maintained through the snapshot mechanism.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If I/O processing continues during RAID configuration changes, then I/O throughput is maintained, but configuration consistency may be compromised

Engineering Contradiction:
ImproveI/O throughputVSAvoidconfiguration consistency
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent introduces configuration snapshots as an intermediary between the RAID configuration and I/O requests. Each snapshot captures a consistent configuration state and is associated with specific I/O requests, ensuring that even while I/O processing continues uninterrupted, each request operates on a consistent configuration view.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates copies of the RAID configuration state in the form of snapshots. These snapshots are immutable copies that preserve the configuration state at a point in time, allowing I/O requests to reference stable configuration copies while the original configuration continues to evolve, thus maintaining both throughput and consistency.

Inventive Principle:
Principle #26Copying

3Reliability

If I/O processing is synchronized with configuration changes, then configuration integrity is ensured, but latency increases

Engineering Contradiction:
Improveconfiguration integrityVSAvoidI/O latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary configuration snapshot creation before I/O processing begins. By having the configuration state prepared and captured in advance, I/O requests can immediately reference the snapshot without waiting for configuration changes to complete, thus ensuring configuration integrity while minimizing latency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a dynamic configuration management system where snapshots are created on-demand based on configuration changes. This dynamic approach allows the system to adaptively maintain configuration integrity only when necessary, rather than synchronizing all I/O operations with every configuration change, thereby reducing unnecessary latency.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10235059B2Technique for maintaining consistent I/O processing throughput in a storage system
Publication Date: 2019.03.19 NETAPP INC
  • US10235059B2 patent drawing
  • US10235059B2 patent drawing
  • US10235059B2 patent drawing

AI summary

A technique maintains consistent throughput of processing of input/output (I/O) requests by a storage system when changing configuration of one or more Redundant Array of Independent Disks (RAID) groups of storage devices, such as disks, within the storage system. The configuration of a RAID group (i.e., RAID configuration) may be represented by RAID objects (e.g., reference-counted data structures) stored in a memory of the storage system. Illustratively, the RAID objects may be organized as a RAID configuration hierarchy including a top-level RAID object (e.g., RAID group data structure) that is linked (e.g., via one or more pointers) to one or more intermediate-level RAID objects (e.g., disk and segment data structures) which, in turn, are linked to one or more low-level RAID objects (e.g., chunk data structures). According to the technique, a snapshot of a current RAID configuration (i.e., current configuration snapshot) may be created by incrementing a reference count of the current top-level object of the hierarchy and attaching (e.g., via a pointer) the current configuration snapshot to a current I/O request processed by the storage system.