NVMe RAID Deferred Parity Updates to Remove Controller Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

RAID storage systems face scaling issues due to the performance mismatch between NVMe storage devices and conventional RAID storage controllers, which are unable to manage a large number of NVMe storage devices effectively.

Innovation Solution

The implementation of a RAID storage system that includes a primary data storage device and a parity data storage device, utilizing Direct Memory Access (DMA) operations and XOR operations to manage and update data, allowing for deferred parity data updates, thereby offloading the burden from the RAID storage controller and enabling it 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 existing RAID protocols, but the controller cannot scale to manage more than a few NVMe devices due to performance limitations

Engineering Contradiction:
ImproveNumber of NVMe devices manageableVSAvoidController management capacity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the parity update function from the main RAID controller by implementing it directly in the NVMe storage devices themselves. Each NVMe device performs local XOR operations to generate and update parity data, rather than requiring centralized controller management. This segmentation enables the system to scale to many more NVMe devices while maintaining RAID functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The NVMe storage devices perform self-service by autonomously calculating and updating parity data through embedded XOR logic. The devices independently manage their own parity requirements without burdening the RAID controller, enabling each device to contribute to the RAID array's redundancy while the controller focuses on higher-level management tasks.

Inventive Principle:
Principle #25Self-service

2Reliability

If the RAID storage controller performs all parity update operations, then data redundancy is maintained, but the controller becomes a bottleneck that limits system scalability

Engineering Contradiction:
ImproveData redundancyVSAvoidSystem scalability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the computationally intensive parity calculation workload from the RAID controller and distributes it across multiple NVMe storage devices. Each device independently performs XOR operations on its data blocks to generate parity, eliminating the controller as a performance bottleneck while ensuring data redundancy through distributed parity maintenance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary parity calculations directly at the storage device level before data is presented to the host. By pre-calculating parity data in the NVMe devices themselves, the system eliminates the need for the controller to perform time-consuming XOR operations, thereby improving both reliability and scalability.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If NVMe storage devices are used to provide high performance, then storage throughput is significantly improved, but the performance mismatch with conventional RAID controllers creates scaling limitations

Engineering Contradiction:
ImproveStorage throughputVSAvoidController management capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The high-performance NVMe storage devices perform self-service by autonomously executing parity calculations and data management operations. This self-service capability allows the devices to fully utilize their high throughput and low latency characteristics without being constrained by the slower processing speed of conventional RAID controllers, thereby maintaining both performance and scalability.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent segments control functions between the high-performance NVMe devices and the RAID controller. The NVMe devices handle time-critical operations like XOR parity calculations and data buffering, while the controller manages higher-level RAID configuration and host communication. This segmentation allows the system to leverage NVMe performance while maintaining RAID functionality.

Inventive Principle:
Principle #1Segmentation

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This solution allows the RAID storage controller to efficiently manage multiple NVMe storage devices by deferring parity updates, enhancing the system's ability to handle high performance and increasing its scalability.

Implementation Method 1

perform an XOR operation on the first primary data in the first storage subsystem and the second primary data in the first buffer subsystem to produce first interim parity data

Methodology Applied
Scientific EffectXOR operation:

Implementation Method 2

write, to the first buffer subsystem via a first Direct Memory Access (DMA) operation from a host system, second primary data

Methodology Applied
Scientific EffectDirect Memory Access:

Implementation Method 3

perform an XOR operation on the second primary data in the first storage subsystem, the third primary data in the first buffer subsystem, and the first interim parity data in the second buffer subsystem to produce second interim parity data

Methodology Applied
Scientific EffectXOR operation:

Implementation Method 4

perform an XOR operation on the first parity data in the second storage subsystem and the second interim parity data in the third buffer subsystem to produce second parity data

Methodology Applied
Scientific EffectXOR operation:

Data Source

PatentUS11023321B2Raid storage-device-assisted deferred parity data update system
Publication Date: 2021.06.01 DELL PROD LP
  • US11023321B2 patent drawing
  • US11023321B2 patent drawing
  • US11023321B2 patent drawing

AI summary

A RAID storage-device-assisted deferred parity data update system includes a RAID primary data drive that retrieves second primary data via a DMA operation from host system, and XOR's it with first primary data to produce first interim parity data, which causes a RAID storage controller device to provide an inconsistent parity stripe journal entry in the host system. The RAID primary data drive then retrieves third primary data via a DMA operation from the host system, XORs it with the second primary data and the first interim parity data to produce second interim parity data. A RAID parity data drive retrieves the second interim parity data via a DMA operation, and XORs it with first parity data to produce second parity data that it uses to overwrite the first parity data, which causes the RAID storage controller device to remove the inconsistent parity stripe journal entry from the host system.