KV Pair Storage Alignment via Residual Data Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Key value (KV) pair data storage in data storage devices, such as solid state drives (SSDs), faces inefficiencies due to misalignment of data across wordlines, leading to increased bandwidth and resource usage, which impacts performance.

Innovation Solution

A data storage device with a controller that determines the size of KV pair data and the target wordline, stores residual data separately, and reads it efficiently in response to read commands, optimizing storage by using aggregate wordlines for overflow data, thereby improving alignment and reducing read latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If KV pair data is stored sequentially in the memory device, then storage space utilization is improved, but data alignment is worsened causing misalignment between values and wordlines

Engineering Contradiction:
Improvestorage space utilizationVSAvoiddata alignment
Core Design Contradiction:
Quantity of substanceVSManufacturing precision

Solution Approach 1:

The patent segments the KV pair data into two distinct parts: the key-value data is stored in one location while alignment padding data is stored in another location. This segmentation allows the key-value data to be stored sequentially for space efficiency while the padding data ensures proper alignment boundaries, resolving the contradiction between storage density and data alignment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces alignment padding data as an intermediary element between the key-value data and the wordline boundaries. This intermediary padding data acts as a mediator that absorbs the misalignment issue, allowing the key-value data to be stored efficiently while maintaining proper alignment through the padding mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Manufacturing precision

If residual data is stored separately from the target wordline, then data alignment is improved, but device complexity increases due to additional storage locations and read operations

Engineering Contradiction:
Improvedata alignmentVSAvoidstorage structure complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent merges the alignment padding data with the key-value data storage structure by utilizing the same memory device and controller. The controller integrates the logic for determining residual data size, calculating alignment offsets, and coordinating reads from both the key-value data location and the alignment padding location into a unified system, thereby reducing overall complexity despite the separate storage locations.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If the value length is greater than the target wordline size, then data flexibility is improved, but read latency increases due to additional read operations for residual data

Engineering Contradiction:
Improvedata flexibilityVSAvoidread latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-calculating the residual data size and alignment offset during the write operation. The controller determines in advance how much padding data is needed and where it should be stored, so that during the read operation, the controller can directly calculate the correct offset and read the alignment padding data without performing complex calculations or sequential scans, thereby reducing read latency despite the split storage structure.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11894046B2Alignment optimization of key value pair data storage
Publication Date: 2024.02.06 SANDISK TECHNOLOGIES LLC
  • US11894046B2 patent drawing
  • US11894046B2 patent drawing
  • US11894046B2 patent drawing

AI summary

A data storage device includes a memory device and a controller coupled to the memory device. The controller is further configured to receive a key value (KV) pair data, determine a size of a value length and a size of a target wordline of the memory device for programming of the KV pair data, determine a size of residual data, store the residual data in a location separate from the target wordline and the KV pair data minus the residual data to the target wordline, and read the residual data from the location separate and the target wordline data in response to a read command for the KV pair data. The size of the value length is greater than the size of the target wordline. The size of the residual data is the size of the value length minus the size of the target wordline.