Distributed Database Transaction Protocol With Snapshot Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed database systems face challenges in maintaining transactional consistency and scalability, as centralized coordination protocols lead to performance bottlenecks and weakened consistency levels may not be acceptable for all applications.

Innovation Solution

A distributed database transaction protocol that employs snapshot isolation and periodic synchronization of transaction tokens, allowing worker nodes to execute transactions locally without immediate coordination with the coordinator node, while ensuring snapshot monotonicity and visibility atomicity through incremental snapshot timestamp management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If centralized coordination protocol is used to ensure transactional consistency, then consistency is improved, but system performance deteriorates due to coordination overhead

Engineering Contradiction:
Improvetransactional consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the centralized coordination function into distributed snapshot management at each node. Each worker node maintains its own snapshot timestamp and transaction token independently, eliminating the need for continuous centralized coordination while ensuring consistency through periodic synchronization and validation mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-establishing snapshot timestamps and transaction tokens at each node before transactions occur. This allows nodes to execute transactions locally with pre-computed consistency information, reducing the need for real-time coordination overhead during transaction processing.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If frequent synchronization of transaction tokens is performed, then consistency is improved, but coordination overhead increases

Engineering Contradiction:
Improvetransactional consistencyVSAvoidcoordination overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements periodic synchronization where the coordinator node requests transaction tokens from worker nodes at predetermined intervals rather than continuously. This periodic action maintains consistency while significantly reducing coordination overhead and network traffic compared to frequent or real-time synchronization.

Inventive Principle:
Principle #19Periodic action

3Reliability

If worker nodes wait for coordinator synchronization before executing transactions, then consistency is improved, but execution speed deteriorates

Engineering Contradiction:
Improvedata accuracyVSAvoidtransaction execution speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent enables worker nodes to serve themselves by maintaining local snapshot timestamps and transaction tokens that allow independent transaction execution. Nodes use their own local consistency information to execute transactions without waiting for coordinator synchronization, improving speed while maintaining accuracy through periodic validation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Worker nodes perform preliminary actions by pre-computing snapshot timestamps and storing transaction tokens locally before needing them for transaction execution. This preliminary preparation eliminates waiting time during actual transaction processing while ensuring data accuracy through the pre-established consistency information.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11372890B2Distributed database transaction protocol
Publication Date: 2022.06.28 SAP SE
  • US11372890B2 patent drawing
  • US11372890B2 patent drawing
  • US11372890B2 patent drawing

AI summary

Technologies are described for facilitating transaction processing within a database environment having a coordinator node, a first worker node, and at least a second worker node. The coordinator node receives local transaction tokens from the first and the at least a second worker nodes. The coordinator nodes determines a synchronized transaction token using at least the local transaction tokens from the first and the at least a second worker nodes. The coordinator node sends the synchronized transaction token to the first and the at least a second worker nodes.