Distributed Transaction Management Using Local Clock Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed transaction management systems with multiversioning face challenges in ensuring consistency and performance, particularly in distributed database systems, as they incur additional overhead, require a global clock, and are prone to deadlocks, failing to support all isolation levels for global transactions efficiently.

Innovation Solution

Implementing a commit protocol that uses local clocks synchronized through a global transaction coordinator, with a modified two-phase commit process and 'heartbeat' mechanisms to maintain clock synchronization and prevent premature garbage collection, ensuring all nodes agree on a commit timestamp and advance their clocks accordingly, thus enabling transactional consistency without a global clock.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a global clock is used to ensure transaction consistency across distributed nodes, then transactional consistency is improved, but system complexity and performance overhead increase

Engineering Contradiction:
Improvetransactional consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the global clock dependency from the distributed transaction system by implementing local clocks at each node that operate independently. The commit timestamp, which previously required global clock synchronization, is now generated locally and propagated to participating nodes, eliminating the need for continuous global clock references while maintaining transactional consistency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The commit timestamp acts as an intermediary mechanism that replaces the global clock. Instead of nodes directly referencing a global clock, they use the commit timestamp propagated through the commit protocol to achieve synchronization. This intermediary enables consistency without requiring a centralized time-keeping infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If conventional distributed transaction management is implemented, then transaction consistency is maintained, but additional overhead is incurred affecting performance

Engineering Contradiction:
Improvetransaction consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Each node independently manages its own local clock and generates commit timestamps without requiring continuous coordination with other nodes. The commit protocol enables nodes to self-serve by propagating the commit timestamp to all participants, who then use it locally to ensure consistency. This self-service approach eliminates the performance overhead of centralized coordination while maintaining transaction integrity.

Inventive Principle:
Principle #25Self-service

3Reliability

If global clock synchronization is implemented to support multiversioning, then version consistency is improved, but scalability is reduced due to frequent access to global nodes

Engineering Contradiction:
Improveversion consistencyVSAvoidsystem scalability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the centralized global clock functionality into distributed local clocks at each node. Each node maintains its own clock independently, and version consistency is achieved through the propagation of commit timestamps rather than continuous reference to a global time source. This segmentation enables parallel operation of multiple nodes without scalability constraints.

Inventive Principle:
Principle #1Segmentation

4Reliability

If distributed deadlocks are detected and prevented using conventional methods, then transaction correctness is improved, but detection and resolution complexity increases

Engineering Contradiction:
Improvetransaction correctnessVSAvoiddeadlock detection complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of actively detecting and preventing deadlocks through complex monitoring mechanisms, the patent inverts the approach by designing a commit protocol that inherently prevents deadlocks. The protocol ensures that commits are processed in a consistent order across all nodes using local timestamps, eliminating the conditions that would lead to deadlocks without requiring active detection or resolution mechanisms.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS11010354B2Distributed transaction management
Publication Date: 2021.05.18 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11010354B2 patent drawing
  • US11010354B2 patent drawing
  • US11010354B2 patent drawing

AI summary

The subject disclosure relates to a distributed transaction management technique that ensures synchronization between participating nodes in a global or distributed database transaction. The technique leverages a commit protocol that uses local clocks at the respective participating nodes. Participants in a global transaction are configured to utilize the same commit timestamp and logical read time and can advance their respective local clocks to establish this synchronization. In one embodiment, distributed commit utilizes a modified version of two-phase commit that includes an extra phase to collect commit timestamp votes from participants. Additionally, a heartbeat mechanism can be used to establish loose synchronization between nodes. In another embodiment, a node can respond to a remote transaction request by returning a list of nodes involved in generating the result of the transaction and the types of access used by such nodes in addition to the transaction result itself.