SSD Metadata Management with NVRAM Flush Batching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Frequent metadata updates in solid state drives (SSDs) lead to flash wear out and degrade performance due to inefficient metadata management, particularly in all-flash arrays, causing overhead and complexity in logical to physical mapping and volume management operations.

Innovation Solution

A method involving a host device that updates a metadata log in NVRAM, periodically checks its size, and when it exceeds a flush limit, triggers a meta flush thread to send a flip command to SSDs for synchronization, exchanging old blocks with new blocks, and discarding the metadata log once synchronization is complete, optimizing memory requirements and reducing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If metadata is cached in NVRAM and flushed periodically to SSD, then data consistency is maintained, but flash wear increases and performance degrades

Engineering Contradiction:
Improvedata consistencyVSAvoidflash endurance
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The patent pre-allocates metadata blocks in the SSD and prepares them in advance for future metadata updates. By having metadata blocks ready beforehand and using a block allocation mechanism that anticipates future write needs, the system reduces the frequency and intensity of metadata flush operations to the SSD, thereby reducing flash wear while maintaining data consistency.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If metadata is maintained in both host device and SSD, then data integrity is ensured, but system complexity and overhead increase

Engineering Contradiction:
Improvedata integrityVSAvoidmetadata management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the L2P mapping functionality from the host device and relocates it to the SSD controller. The host device maintains only the metadata log in NVRAM, while the SSD controller handles all mapping operations and maintains the mapping table internally. This extraction eliminates the need for the host to maintain duplicate metadata structures and significantly reduces system complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a metadata log structure as an intermediary between the host file system and the SSD storage layers. This log serves as a buffer that captures metadata updates in the host and batches them for efficient transfer to the SSD, simplifying the interaction between host and storage device while maintaining data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If page-wise mapping is used in SSD, then storage flexibility is improved, but volume management complexity increases

Engineering Contradiction:
Improvestorage flexibilityVSAvoidvolume management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the metadata management into distinct functional components: the metadata log in the host, the transfer mechanism, and the mapping table in the SSD controller. It also segments storage operations into data planes and metadata planes, allowing independent optimization of each layer and reducing the complexity of managing page-wise mappings across the entire system.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12411612B2Method of increasing flash endurance by improved metadata management
Publication Date: 2025.09.09 SAMSUNG ELECTRONICS CO LTD
  • US12411612B2 patent drawing
  • US12411612B2 patent drawing
  • US12411612B2 patent drawing

AI summary

A method includes updating a first metadata log in an NVRAM of a host device corresponding to one or more recent input/output (I/O) operations received by the host device, periodically checking whether the size of the updated first metadata log is greater than a flush limit maintained in the host device, triggering a meta flush thread when the updated first metadata log size exceeds the flush limit maintained in the host device, sending, by a non-volatile memory express (NVMe) driver, a first command for synchronizing the updated first metadata log to one or more solid state drives (SSDs) for updating a second metadata log in the one or SSDs, and discarding, by the host device, metadata of the first metadata log updated in the host device after receiving a second command for acknowledging synchronization completion from the one or more SSDs.