NVMe Key-Value Storage Protocol Extension

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current key-value storage systems cannot be effectively combined with efficient storage protocols like NVMe, resulting in increased I/O path delays and limited support for both key-value and conventional block device storage.

Innovation Solution

The key-value storage method extends storage operations to the storage protocol, allowing interaction between the host and storage controller without requiring block layer or file system conversion, enabling efficient key-value storage and supporting conventional block device storage by using the NVMe protocol.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If key-value storage is combined with NVMe protocol, then storage efficiency and I/O speed are improved, but device complexity increases due to protocol extension requirements

Engineering Contradiction:
Improvestorage efficiencyVSAvoidprotocol complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges key-value storage operations with the NVMe protocol by defining new command types within the existing protocol framework. This integration allows key-value operations to execute directly through the NVMe interface without requiring separate storage pathways, thereby improving storage efficiency while leveraging the existing protocol infrastructure to minimize complexity increases

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The NVMe protocol is extended to support multiple storage paradigms simultaneously - both traditional block device operations and key-value storage operations. This multi-functionality allows the same protocol and hardware interface to handle diverse storage workloads, improving overall system productivity without requiring separate dedicated pathways for each storage type

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If block layer or file system conversion is used to implement key-value storage, then compatibility with existing systems is maintained, but I/O path delay increases

Engineering Contradiction:
Improvesystem compatibilityVSAvoidI/O path delay
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent extracts key-value storage operations from the traditional block layer/file system conversion pathway and integrates them directly into the NVMe protocol layer. This extraction eliminates the intermediate conversion steps that cause I/O path delays, allowing key-value operations to execute directly through the optimized NVMe interface while maintaining system compatibility through protocol-level abstraction

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The NVMe protocol serves as an intermediary layer that directly supports key-value operations without requiring conversion through block layer or file system layers. This intermediary approach maintains compatibility with existing NVMe infrastructure while providing direct, low-latency pathways for key-value storage operations

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If multiple single key-value storage requests are processed separately, then request handling simplicity is maintained, but storage operation efficiency decreases

Engineering Contradiction:
Improverequest handling simplicityVSAvoidstorage operation efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent enables merging of multiple single key-value storage requests into aggregated NVMe commands. The NVMe protocol's inherent support for batch operations allows multiple key-value pairs to be processed in a single I/O operation, significantly improving storage operation efficiency while the protocol's command structure maintains reasonable simplicity in request handling

Inventive Principle:
Principle #5Merging (Combining)

4Device complexity

If key-value storage is implemented without protocol extension, then device complexity is reduced, but adaptability to efficient storage protocols is lost

Engineering Contradiction:
Improveimplementation complexityVSAvoidprotocol compatibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements protocol extension that provides universal support for both traditional block device operations and key-value storage operations within the NVMe framework. This extension maintains relative implementation simplicity by building upon existing NVMe structures while adding the necessary adaptability to handle multiple storage paradigms through a unified interface

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3495970B1Key-value storage method, apparatus and system
Publication Date: 2023.04.05 HUAWEI TECH CO LTD
  • EP3495970B1 patent drawingFigure 1
  • EP3495970B1 patent drawingFigure 2
  • EP3495970B1 patent drawingFigure 3

AI summary

Embodiments of this application provide a key-value storage method, apparatus, and system, to resolve at least a problem that currently no related solution can combine key-value storage with such efficient storage protocol as an NVMe protocol. The method includes: writing, by a host after detecting a key-value storage request, a first instruction code and address information that are carried in the key-value storage request to a field defined in a protocol, to constitute a first storage request instruction sequence, where the first instruction code is an instruction code defined based on a reserved extension field in the protocol; and interacting, by the host, with the storage controller, so that the storage controller obtains the first storage request instruction sequence. This application is applicable to the field of storage technologies.