Key-Value Storage Controller Prefix Search Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage devices, such as solid state drives (SSDs), face inefficiencies in searching for key value (KV) pair data, particularly in non-indexed data, which results in longer search times compared to indexed data.

Innovation Solution

A data storage device with a controller configured to receive search commands, prepare search buffers, retrieve wordlines with KV pair data, and compare them for specific sequences, allowing efficient retrieval and provision of matching values to the host device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If non-indexed KV pair data is stored without pre-computation, then storage flexibility and simplicity are improved, but search time increases significantly

Engineering Contradiction:
Improvestorage flexibilityVSAvoidsearch time
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing prefix information for KV pair values during the data storage phase. This prefix information is prepared in advance and stored alongside the original KV pairs, enabling faster subsequent searches without requiring full re-computation during query operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary structure (prefix tree or similar data structure) that mediates between the stored KV pair data and the search operation. This intermediary contains pre-computed prefix information that accelerates the search process by allowing the system to quickly identify potential matches without examining entire values.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If indexed data is prepared in advance with large computations, then search speed is improved, but device complexity and resource requirements increase

Engineering Contradiction:
Improvesearch speedVSAvoiddata preparation complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent applies local quality by computing and storing only the necessary prefix information locally with each KV pair value, rather than creating a global index structure. This allows each data element to carry its own search-optimizing information, reducing overall system complexity while maintaining fast search capabilities.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent enables self-service by making each KV pair value self-sufficient with its associated prefix information stored directly with it. This eliminates the need for complex centralized indexing structures and allows individual data elements to serve their own search needs independently.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If KV pair data is stored as unstructured data with variable length keys, then data flexibility is improved, but search efficiency deteriorates

Engineering Contradiction:
Improvedata flexibilityVSAvoidsearch efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies segmentation by dividing the KV pair data into structured components (key, value, and prefix information) that can be independently processed. This segmentation allows the system to maintain the flexibility of variable-length keys while applying efficient search algorithms to the structured prefix portions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes parameters by transforming unstructured KV pair data into a semi-structured format with explicit prefix length indicators and organized components. This parameter change enables efficient searching while preserving the adaptability to handle variable-length keys and values.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12001719B2Storage media based search function for key value data storage devices
Publication Date: 2024.06.04 SANDISK TECHNOLOGIES LLC
  • US12001719B2 patent drawing
  • US12001719B2 patent drawing
  • US12001719B2 patent drawing

AI summary

A data storage device includes a memory device and a controller coupled to the memory device. The controller is configured to receive a search command from a host device, where the search command is for value associated with a key value (KV) format having a specific sequence, prepare one or more search buffers and send the one or more search buffers to the memory device, retrieve one or more wordlines having KV pair data associated with the KV format, where the KV pair data includes a key and a value, compare the retrieved one or more wordlines with the one or more search buffers for values having the specific sequence, and provide at least a portion of the value from one or more KV pair data based on the comparing to the host device.