NVMe RAID Storage Device XOR Update Offloading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

RAID storage systems face scaling issues when using NVMe storage devices due to performance limitations of conventional RAID storage controllers, which cannot manage more than a few NVMe devices, leading to inefficiencies in data update operations.

Innovation Solution

A RAID storage system with a processing system that performs XOR operations using Direct Memory Access (DMA) operations across multiple RAID storage devices to generate update data, offloading data update operations from the RAID storage controller and enabling the system to scale with high-performance NVMe devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional RAID storage controllers are used to manage NVMe storage devices, then the system can maintain compatibility with traditional RAID architectures, but the controller performance becomes a bottleneck that limits the system to managing only a few NVMe devices

Engineering Contradiction:
Improvenumber of NVMe devices manageableVSAvoidRAID controller performance requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the data update operation from the RAID storage controller and implements it directly in the NVMe storage devices. Each NVMe device performs XOR operations locally using data from other NVMe devices, eliminating the need for the controller to coordinate these operations and thus removing the controller as a performance bottleneck.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The NVMe storage devices perform their own data update operations autonomously without requiring controller intervention. Each device reads necessary data from peer devices, performs the XOR operation locally, and writes the result back, enabling self-service data maintenance that scales with the number of devices.

Inventive Principle:
Principle #25Self-service

2Reliability

If the RAID storage controller manages data update operations across multiple NVMe devices, then data redundancy can be maintained, but the controller becomes a performance bottleneck that prevents scaling to more than a few devices

Engineering Contradiction:
Improvedata redundancyVSAvoiddata update operation throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the data update operation into independent tasks that can be executed in parallel by each NVMe device. Instead of the controller sequentially coordinating updates across all devices, each device independently performs its own update operation simultaneously, achieving both reliability through XOR-based redundancy and high productivity through parallel execution.

Inventive Principle:
Principle #1Segmentation

3Productivity

If high-performance NVMe storage devices are used in a RAID system, then storage capacity and speed are improved, but the conventional RAID controller cannot scale to manage large numbers of these high-performance devices

Engineering Contradiction:
Improvestorage operation speedVSAvoidnumber of devices manageable
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a peer-to-peer data exchange mechanism as an intermediary between NVMe devices, eliminating the need for the RAID controller to mediate every data operation. Devices communicate directly with each other through defined interfaces, allowing high-performance NVMe devices to operate at full speed while scaling to large numbers of devices without controller limitations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11422740B2Raid storage-device-assisted data update system
Publication Date: 2022.08.23 DELL PROD LP
  • US11422740B2 patent drawing
  • US11422740B2 patent drawing
  • US11422740B2 patent drawing

AI summary

A RAID storage-device-assisted data update system includes a RAID storage controller coupled to first RAID storage devices each including respective first RAID storage subsystems. Each first RAID storage devices receives a command from the RAID storage controller that identifies a second RAID buffer subsystem as a target memory location and, in response, retrieves respective first RAID storage device data from its respective first RAID storage subsystem and performs DMA operations to provide that first RAID storage device data on the second RAID buffer subsystem. A second RAID storage device that includes the second RAID buffer subsystem and a second RAID storage subsystem receives a command from the RAID storage controller and, in response, performs an XOR operation using the first RAID storage device data in the second RAID buffer subsystem to produce update data that it stores in its second RAID storage subsystem.