ZNS SSD Parity Determination via In-Memory Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing RAID systems face inefficiencies in computing parity, particularly in systems with solid-state drives, due to resource-intensive processing and cache line reloading.

Innovation Solution

The technology efficiently generates horizontal and vertical parity for data stored in zoned namespace solid-state drives (ZNS SSDs) by utilizing a single processor to determine parity within a single cycle, reducing cache line reloading and optimizing resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional parity computation methods are used in RAID systems with SSDs, then data protection is achieved, but processing resources and time are excessively consumed

Engineering Contradiction:
Improvedata protectionVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-loading data into cache memory before parity computation begins. The system loads data from SSDs into cache lines, performs parity computations in memory, and only then writes results back to storage. This preliminary caching action eliminates repeated I/O operations during computation, significantly improving processing efficiency while maintaining data protection integrity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the parity computation process into distinct phases: data loading phase, computation phase, and result writing phase. By dividing the computation into horizontal parity and vertical parity stages, and by processing data in cache-line-sized segments rather than entire datasets at once, the system optimizes resource utilization and reduces processing time while ensuring comprehensive data protection

Inventive Principle:
Principle #1Segmentation

2Reliability

If parity computation is performed repeatedly during write operations, then data integrity is maintained, but cache line reloading overhead increases

Engineering Contradiction:
Improvedata integrityVSAvoidcache line reloading time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements continuity of useful action by maintaining data and parity information in cache memory throughout the computation process. Once data is loaded into cache, the system performs both horizontal and vertical parity computations continuously without reloading data from SSDs. This continuous in-memory processing eliminates repeated cache line reloading overhead while maintaining data integrity through complete parity computation

Inventive Principle:
Principle #20Continuity of useful action

3Speed

If multiple processors are used to accelerate parity computation, then processing speed increases, but system complexity and resource utilization increase

Engineering Contradiction:
Improveparity computation speedVSAvoidsystem complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent merges horizontal parity computation and vertical parity computation into a unified processing framework. By combining these operations and sharing cache memory resources between them, the system achieves accelerated computation speeds without proportionally increasing system complexity. The merged approach allows efficient use of single-processor resources while maintaining the speed benefits of parallel processing

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12242337B2Efficient parity determination in zoned solid-state drives of a storage system
Publication Date: 2025.03.04 NETAPP INC
  • US12242337B2 patent drawing
  • US12242337B2 patent drawing
  • US12242337B2 patent drawing

AI summary

Methods and systems for a storage environment are provided. One method includes copying a data unit from a first temporary storage location corresponding to each zoned solid-state drive (ZNS SSD) of a first ZNS SSD set of a storage system to a first XOR module, while determining a first partial horizontal parity using the data unit stored in the first temporary storage location; and determining a vertical parity for each ZNS SSD of the first ZNS SSD set using the data unit provided to the first XOR module in a current cycle and vertical parity determined from a previous cycle.