Prefix-Delete Mechanism for KVDB Segment Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing memory sub-systems face inefficiencies in data storage and retrieval due to sub-optimal tree data structure hierarchies, leading to high latency in user-initiated operations and increased wear on persistent storage devices, particularly in key-value data structures like KVDBs.

Innovation Solution

Implementing a prefix-delete mechanism that allows for the simultaneous deletion of multiple keys with a single 'tombstone' operation, managed by a background thread to maintain data container size within thresholds, reducing the need for iterative key deletions and improving response times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If iterative key deletions are used to manage data container size, then data container size can be maintained within thresholds, but latency increases and storage device wear increases

Engineering Contradiction:
Improvedata container sizeVSAvoidlatency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent merges multiple individual key deletion operations into a single prefix-delete operation. By identifying that multiple keys share a common prefix, the system performs one batch deletion operation instead of multiple separate operations, thereby reducing latency while maintaining data container size within thresholds.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary identification of keys with common prefixes before execution of deletion operations. This preliminary grouping allows the system to prepare batch deletion operations in advance, reducing the time required during actual data container management and minimizing latency.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If iterative key deletions are used to manage data container size, then data container size can be maintained within thresholds, but wear on persistent storage devices increases

Engineering Contradiction:
Improvedata container sizeVSAvoidstorage device wear
Core Design Contradiction:
Quantity of substanceVSObject-affected harmful factors

Solution Approach 1:

The patent combines multiple individual deletion operations into a single prefix-delete operation. This merging reduces the total number of write operations to persistent storage devices, thereby reducing wear on these devices while still effectively maintaining data container size within specified thresholds.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system efficiently discards multiple keys that share a common prefix in a single operation rather than processing them individually. This approach reduces the cumulative wear on storage devices by minimizing the number of write/erase cycles required to maintain data container size constraints.

Inventive Principle:
Principle #34Discarding and recovering

3Ease of operation

If traditional deletion operations are used, then individual keys can be deleted, but the number of operations increases and efficiency decreases

Engineering Contradiction:
Improvedeletion operation simplicityVSAvoiddata management efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent merges the deletion of multiple keys with common prefixes into a single prefix-delete operation. This maintains operational simplicity while dramatically improving productivity by reducing the total number of operations required to manage data containers, thereby eliminating the trade-off between ease of operation and efficiency.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11392547B2Using prefix-delete operations for data containers
Publication Date: 2022.07.19 MICRON TECHNOLOGY INC
  • US11392547B2 patent drawing
  • US11392547B2 patent drawing
  • US11392547B2 patent drawing

AI summary

A key-value pair comprising a key and a value associated with the key is stored in a current segment of a data container. The key comprises a segment identifier identifying the current segment. The data container comprises a plurality of segments residing on a non-volatile memory device. Responsive to determining that a size of the current segment exceeds a threshold, a new segment is added to the container. The plurality of key-value pairs having respective current segment identifiers referencing one or more least recently created segments of the data container is deleted.