Distributed Transaction Conflict Resolution via Shared Log Sequencer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional distributed transaction systems face inefficiencies due to the use of heavyweight mechanisms like locking and write-ahead logging, which increase latency and reduce scalability, especially when handling conflicts between transactions in a distributed environment.
Innovation Solution
A shared log system with a sequencer module that timestamps transactions and a log manager module for buffering, allowing clients to verify transaction correctness and resolve conflicts efficiently without the need for locking or write-ahead logging, using a lightweight interface and maintaining the latest state of objects through a shared log.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If locking or write-ahead logging is used for conflict resolution, then transaction correctness is maintained, but system throughput decreases and latency increases
Solution Approach 1:
The system segments the centralized conflict resolution function into distributed conflict detection capabilities at each node. Each node independently detects conflicts using version vectors, eliminating the need for centralized locking mechanisms and write-ahead logging, thereby maintaining correctness while improving throughput
Solution Approach 2:
The patent replaces mechanical locking systems and write-ahead logging mechanisms with a software-based version vector approach. This substitution eliminates the overhead of lock management and log writing, achieving the same conflict resolution goal with significantly reduced latency and improved system productivity
2Reliability
If global logging is used for conflict resolution, then transaction conflicts can be detected, but client processing burden increases and scalability is limited
Solution Approach 1:
The patent extracts the conflict detection logic from the client and relocates it to the distributed nodes. Each node maintains version vectors and performs conflict detection locally, eliminating the need for clients to playback entire logs and significantly reducing client processing burden while maintaining conflict detection capability
Solution Approach 2:
The system performs preliminary conflict detection at each node using pre-maintained version vectors before transactions are committed. This preliminary action prevents the need for clients to perform expensive log playback operations, reducing client complexity while ensuring conflict detection
3Reliability
If conventional conflict resolution mechanisms are used, then transaction correctness is ensured, but system scalability is hampered
Solution Approach 1:
The patent segments the centralized transaction management architecture into a distributed architecture where each node independently manages its own version vectors and conflict detection. This segmentation enables the system to scale horizontally by adding more nodes without increasing centralized coordination overhead, maintaining correctness while improving scalability
Solution Approach 2:
The patent introduces version vectors as an intermediary mechanism that enables distributed nodes to autonomously detect conflicts without centralized coordination. This intermediary allows each node to make independent conflict resolution decisions, enabling system scalability while ensuring transaction correctness through distributed consensus
Data Source
AI summary
In accordance with disclosed embodiments, a shared log system includes a sequencer that receives a source object and a snapshot time reference, where the source object is used to generate data for a destination object. The sequencer uses the snapshot time to determine whether the data state of the source object is current with respect to the snapshot time, to assess correctness of the generated data relative to the snapshot time.


