SSD Controller Key-Value Access via Collision Bitmap

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SSD technologies face inefficiencies in accessing key-value pairs due to collisions and collisions separation, which affect storage and retrieval operations, leading to increased latency and reduced performance.

Innovation Solution

The proposed method involves using a SSD controller to apply a hash function to an input value, determining a bucket number and slot locator, and then calculating a physical address by counting zero bits and determining colliding keys, allowing for efficient access and retrieval of key-value pairs through a permutation or tree-based collision resolution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional hash table methods are used for SSD key-value access, then storage capacity is maintained, but access latency increases due to collisions and collision separation operations

Engineering Contradiction:
Improveaccess latencyVSAvoiddata retrieval speed
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent extracts the collision resolution mechanism from the traditional hash table structure by introducing a separate collision bitmap and collision handling process. This separation allows the main hash table to remain compact while collision resolution is handled independently through bitmap-based slot identification, reducing access latency without compromising storage capacity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The collision bitmap serves as an intermediary structure between the hash table and the collision resolution process. It mediates the collision handling by providing a compact representation of slot occupancy status, enabling efficient identification of available slots without requiring complex collision separation operations that would increase access latency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If collision separation mechanisms are implemented, then key-value pair accuracy is improved, but device complexity increases due to additional data structures and operations

Engineering Contradiction:
Improvekey-value pair accuracyVSAvoiddata structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent changes the parameter representation from traditional pointer-based slot references to bitmap-based slot identification. Each bit in the collision bitmap represents a slot status, transforming the complexity from managing multiple collision separation data structures to managing a single compact bitmap array, thereby maintaining accuracy while reducing structural complexity.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The collision bitmap uses a uniform bit representation for all slot states across the hash table, creating a homogeneous and consistent data structure. This uniform approach simplifies the collision resolution logic compared to heterogeneous collision handling mechanisms, improving reliability through consistent behavior while reducing device complexity.

Inventive Principle:
Principle #33Homogeneity

3Speed

If bitmap-based slot identification is used, then access speed is improved, but memory usage increases due to additional bitmap storage requirements

Engineering Contradiction:
Improvedata access speedVSAvoidmemory storage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The collision bitmap only tracks slots that are likely to experience collisions based on the hash function distribution, rather than maintaining complete slot information for all hash table entries. This partial tracking approach provides sufficient speed improvement for collision-prone scenarios while minimizing the additional memory storage required compared to comprehensive slot monitoring.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11809744B2Data base and solid state disk (SSD) controller
Publication Date: 2023.11.07 PLIOPS LTD
  • US11809744B2 patent drawing
  • US11809744B2 patent drawing
  • US11809744B2 patent drawing

AI summary

There may be provided, systems, method and non-transitory computer readable media for accessing a key value pair stored in a solid state drive (SSD) memory, the method may include calculating, by a SSD memory controller and based on an input key, a first bucket identifier and a first inter-bucket value; determining a block cluster that stores the key pair value, based on the first bucket identifier, the first inter-bucket value and first metadata of a first data structure; calculating, based on the input key, a second bucket identifier and a second inter-bucket value; determining at least one of a key pair value retrieval information and a representative key pair value retrieval information, based on the second bucket identifier, the second inter-bucket value and second metadata of a second data structure; wherein the second data structure is allocated to the block cluster; wherein the second metadata comprises second logical slots, a second slot locator and second collision separation metadata; wherein at least the second slot locator comprise metadata only on representative key-pair values that are a subset of multiple key-pair values stored in the block cluster; and retrieving at least the value of the key pair value based on the at least one of the key pair value retrieval information and the representative key pair value retrieval information.