Distributed Database Transaction Locking Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed database systems face challenges in ensuring transaction synchronicity, which can lead to data loss and collisions, especially when processing multiple requests concurrently.

Innovation Solution

The method involves processing declarative-type requests in a distributed system by generating deterministic read-type and modification-type transactions, using locking mechanisms such as optimistic or pessimistic locking to prevent simultaneous access and modification of information in the distributed database, ensuring that transactions are executed only if the current lock value matches the expected state.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If locking mechanisms (optimistic or pessimistic) are used to ensure transaction synchronicity, then data loss and collisions are avoided, but system complexity and processing overhead increase

Engineering Contradiction:
Improvetransaction synchronicityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by acquiring lock values at the beginning of transactions (read-type transactions acquire lock values for subsequent modification-type transactions). This allows the system to check transaction validity before execution, preventing data collisions and ensuring synchronicity without requiring complex continuous locking mechanisms throughout the entire transaction lifecycle.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces lock values as an intermediary mechanism between transactions and database resources. These lock values act as mediators that coordinate access to shared database state, enabling multiple transactions to proceed concurrently while maintaining reliability. The lock values serve as a lightweight signaling mechanism that avoids the complexity of traditional heavy-weight locking protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If locking mechanisms are used to prevent simultaneous access, then data collisions are avoided, but computational resources are consumed

Engineering Contradiction:
Improvedata collision preventionVSAvoidcomputational resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent employs lock values that are inexpensive, transient objects created and discarded as needed for transaction coordination. These lock values are simple data structures that require minimal computational resources to create, store, and compare. They serve their purpose of preventing data collisions during transaction execution and are then discarded, avoiding the need for persistent, resource-intensive locking infrastructure.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Solution Approach 2:

The system enables transactions to self-verify their validity by comparing lock values acquired at the beginning of transactions with current database state. This self-service mechanism allows transactions to autonomously detect conflicts and handle their own coordination needs without requiring continuous external arbitration or complex resource management overhead, reducing overall computational resource consumption.

Inventive Principle:
Principle #25Self-service

3Productivity

If multiple requests are processed concurrently, then system productivity increases, but data loss and collisions occur

Engineering Contradiction:
Improverequest processing throughputVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent enables concurrent request processing by acquiring lock values preliminarily during read-type transactions, which then serve as the basis for subsequent modification-type transactions. This preliminary acquisition allows multiple transactions to be prepared and executed concurrently while maintaining data integrity through the lock value verification mechanism, thus achieving both high productivity and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by continuously monitoring lock values throughout the transaction lifecycle. When modification-type transactions execute, they verify that the current database state matches the previously acquired lock values. This feedback mechanism allows concurrent transactions to proceed efficiently while automatically detecting and preventing data collisions, maintaining both throughput and data integrity.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11288254B2Method of and system for processing request in distributed database
Publication Date: 2022.03.29 Y E HUB ARMENIA LLC
  • US11288254B2 patent drawing
  • US11288254B2 patent drawing
  • US11288254B2 patent drawing

AI summary

A method for processing a request, where the request is of a declaratory-type and is destined from a request source to a distributed database that has a plurality of transaction destination locations (TDLs). The distributed database is part of distributed computer system, and the distributed computer system has a supervisory device. The method is executable by the supervisory device and includes: receiving the request, processing the request to generate a first transaction of a read-type and identifying at least one condition-satisfying TDL, acquiring a lock value for the condition-satisfying TDL, executing the first transaction, processing the request to generate a last transaction of a modification-type for modifying information associated with the at least one TDL, before executing the last transaction, checking a status of the lock, and only executing the last transaction based on a positive outcome. A distributed software system for doing the same is also provided.