Key-Value Database Lock Release with Segmented Transaction Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional lock management systems in key-value database systems face challenges in efficiently managing locks to achieve high transaction concurrency and throughput, particularly due to the use of a single data structure lock that limits concurrent execution and performance.

Innovation Solution

A transaction management system that employs a scalable configuration of data structures to identify and release locks efficiently by tracking unique sequence numbers for transaction start and completion, enabling lock inheritance and retention protocols to manage locks based on the globally oldest active transaction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single data structure lock is used to manage locks in a key-value database system, then lock management simplicity is maintained, but transaction concurrency and throughput are limited

Engineering Contradiction:
Improvetransaction throughputVSAvoidlock management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the single data structure lock into multiple independent data structure locks (first data structure lock, second data structure lock, etc.). Each lock protects a separate data structure (first active transaction set, second active transaction set), allowing concurrent access by different threads. This segmentation enables multiple transactions to proceed simultaneously without contending for a single lock, thereby increasing transaction throughput while maintaining manageable complexity through modular lock management.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple data structure locks are employed to increase transaction concurrency, then throughput improves, but system complexity increases

Engineering Contradiction:
Improvetransaction concurrencyVSAvoiddata structure configuration
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments transactions into different active transaction sets (first active transaction set, second active transaction set), each protected by its own data structure lock. This segmentation allows threads to access different locks concurrently, increasing transaction concurrency. The complexity is managed by organizing locks and transaction sets in a structured manner where each lock corresponds to a specific transaction set.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple data structure locks are designed with uniform interfaces and management protocols. Each lock follows the same acquisition, release, and management patterns, allowing the system to scale lock数量 without proportionally increasing operational complexity. The universal lock management approach enables threads to interact with different locks using consistent methods, reducing the cognitive and implementation burden despite having multiple locks.

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

3Reliability

If locks are held until transaction completion to ensure consistency, then snapshot isolation is maintained, but lock retention time increases reducing concurrency

Engineering Contradiction:
Improvesnapshot isolationVSAvoidlock retention time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the lock holding period by allowing different threads to hold different data structure locks simultaneously. Thread first holds the first data structure lock for the first active transaction set, while thread second holds the second data structure lock for the second active transaction set. This segmentation enables overlapping lock retention periods across different transaction sets, reducing the effective lock retention time for individual transactions and increasing overall system concurrency while maintaining snapshot isolation within each transaction set.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12353360B2Lock release management associated with a key-value database system
Publication Date: 2025.07.08 MICRON TECHNOLOGY INC
  • US12353360B2 patent drawing
  • US12353360B2 patent drawing
  • US12353360B2 patent drawing

AI summary

A global lock is used to access a first set of data structures. An active transaction having a transaction start identifier is identified as a globally oldest active transaction associated with the first set of data structures. A first marker value of a first data structure of a second set of data structures is compared to the transaction start identifier to determine satisfaction of a first condition. In response to satisfying the first condition, the first data structure is accessed to identify a first set of data locks associated with one or more transactions each having a transaction completion identifier that satisfies a second condition when compared to the transaction start identifier. In response to satisfying the second condition, the first set of data locks is released.