Host-Side FTL RAID Encoding via LBA-PBA Binding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software-based RAID implementations on solid-state data storage devices suffer from throughput and latency penalties due to additional data read and write activities required for recalculating redundancy chunks, which interfere with normal I/O requests and degrade storage system performance.

Innovation Solution

The method involves migrating flash translation layer (FTL) functions from solid-state data storage devices to a host computing system, where RAID encoding is performed based on logical block address to physical block address (LBA-PBA) binding information received from storage devices, allowing for hardware-assisted LBA-PBA binding and RAID group formation, thereby reducing write latency and improving throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software-based RAID is implemented on solid-state data storage devices with complete transparency to the host, then data storage reliability is improved, but throughput and latency performance deteriorate due to additional NAND flash memory read/write activities

Engineering Contradiction:
Improvedata storage reliabilityVSAvoidthroughput and latency performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the RAID implementation into two parts: (1) storage devices independently perform LBA-to-PBA mapping and store data chunks with their mapping information, and (2) the host performs RAID encoding separately after receiving all LBA-PBA bindings. This segmentation allows parallel execution of data storage and RAID encoding, eliminating the throughput and latency penalties caused by sequential operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by having storage devices perform LBA-to-PBA mapping and store data chunks before the host performs RAID encoding. The host receives LBA-PBA binding information from all storage devices and then performs RAID encoding in the PBA domain, which avoids additional read/write activities on NAND flash memory during the RAID encoding process.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If redundancy chunks are recalculated and stored upon data modification, then data integrity is maintained, but additional data read and write activities interfere with normal I/O requests and degrade storage system speed

Engineering Contradiction:
Improvedata integrityVSAvoidstorage system speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent introduces LBA-PBA binding information as an intermediary that enables the host to perform RAID encoding in the physical block address domain without requiring additional read activities on the storage devices. The host uses the received LBA-PBA bindings to directly calculate redundancy chunks in memory, avoiding interference with normal I/O requests on the NAND flash memory.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the host software calculates redundancy chunks before writing the entire RAID group, then complete RAID groups are formed, but additional data write latency penalties occur

Engineering Contradiction:
ImproveRAID group formationVSAvoiddata write latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent inverts the conventional RAID workflow by having storage devices first store data chunks and return LBA-PBA binding information, and then the host performs RAID encoding to calculate redundancy chunks. This reversal eliminates the need to hold and write the entire RAID group atomically, reducing data write latency while maintaining RAID group integrity through the use of PBA-based encoding.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS11347586B2Realizing high-speed and low-latency RAID across multiple solid-state storage device with host-side FTL
Publication Date: 2022.05.31 SCALEFLUX INC
  • US11347586B2 patent drawing
  • US11347586B2 patent drawing
  • US11347586B2 patent drawing

AI summary

A method for implementing a RAID group in a system including a host computing system, a first set of storage devices for storing user data for the RAID group, and a second set of storage devices for storing redundancy data for the RAID group. The method includes: distributing the user data from a host-side FLT module on the host computing system to the first set of storage devices; determining, by each storage device in the first set of storage devices, a logical block address to physical block address (LBA-PBA) binding for the user data received from the host-side FLT module; sending LBA-PBA binding information for the LBA-PBA binding from the first set of storage devices to the host-side FLT module; and performing, by the host-side FLT module, RAID encoding to form the RAID group based on the LBA-PBA binding information received from the first set of storage devices.