Snapshot Isolation in Distributed Databases via Replica Coordinators

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed database systems face challenges in implementing snapshot isolation efficiently, particularly in scenarios where transactions access data from multiple nodes, as they require full a-priori knowledge of node access and incur significant overhead, limiting scalability and consistency guarantees.

Innovation Solution

The incremental snapshot isolation approach allows each node to store local snapshot information and process transactions locally, with a hardware coordinator generating global commit identifiers to ensure consistent snapshots across nodes, eliminating the need for a-priori knowledge and reducing synchronization overhead, especially for local transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the global approach is used for distributed snapshot isolation, then consistency is guaranteed, but coordination overhead increases and scalability deteriorates

Engineering Contradiction:
ImproveconsistencyVSAvoidcoordination overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the centralized coordinator into multiple replica coordinators that can independently handle different transactions. Each replica coordinator maintains a subset of the transaction log and can issue commit identifiers without requiring coordination with other coordinators. This segmentation reduces the coordination overhead while maintaining consistency through the distributed transaction log replication.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a distributed transaction log as an intermediary structure that mediates between transactions and replica coordinators. The transaction log stores commit information that can be replicated across multiple coordinators, allowing them to independently verify transaction commits without direct communication. This intermediary enables consistency guarantees while reducing coordination complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the pessimistic approach is used for distributed snapshot isolation, then local transaction performance improves, but a-priori knowledge requirement increases and adaptability deteriorates

Engineering Contradiction:
Improvelocal transaction performanceVSAvoida-priori knowledge requirement
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent performs preliminary actions by pre-replicating transaction log entries to multiple replica coordinators before transactions need to access them. This allows replica coordinators to have the necessary commit information available locally without requiring a-priori knowledge of which transactions will be accessed. The preliminary replication of log data enables fast local access while maintaining adaptability to any transaction pattern.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables replica coordinators to serve themselves by maintaining local copies of the transaction log and independently issuing commit identifiers. Each replica coordinator can autonomously handle local transactions without contacting the primary coordinator, achieving both high local performance and adaptability to unknown transaction patterns. The self-service capability is enabled through the replicated transaction log structure.

Inventive Principle:
Principle #25Self-service

3Device complexity

If the optimistic approach is used for distributed snapshot isolation, then coordination overhead is reduced, but consistency guarantees are weakened

Engineering Contradiction:
Improvecoordination overheadVSAvoidconsistency guarantees
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms where replica coordinators continuously monitor the transaction log for new commit entries. When a transaction commits, the commit information is replicated to all replica coordinators, which then update their local state. This feedback loop ensures that all coordinators have consistent information about committed transactions, maintaining consistency guarantees while keeping coordination overhead low through asynchronous updates.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary replication of transaction log entries to all replica coordinators before transactions are committed. This advance preparation ensures that when transactions need to read committed data, the information is already available locally at each replica coordinator, eliminating the need for complex coordination during transaction execution while maintaining strong consistency guarantees.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If centralized coordination is used for distributed snapshot isolation, then consistency is maintained, but scalability with the number of nodes deteriorates

Engineering Contradiction:
ImproveconsistencyVSAvoidscalability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the centralized coordination function into multiple independent replica coordinators, each capable of handling transactions autonomously. The transaction log is also segmented and replicated across these coordinators, allowing the system to scale horizontally by adding more replica coordinators without creating a single point of contention. This segmentation enables both consistency maintenance and improved scalability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses the distributed transaction log as an intermediary structure that decouples the consistency maintenance function from any single coordinator. The transaction log serves as a shared source of truth that all replica coordinators can independently access and replicate, enabling the system to scale to many nodes while maintaining consistency through the intermediary log structure rather than through direct coordinator coordination.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP2595068B1System and method of performing snapshot isolation in distributed databases
Publication Date: 2019.01.02 SAP SE
  • EP2595068B1 patent drawingFigure 1
  • EP2595068B1 patent drawingFigure 2~3
  • EP2595068B1 patent drawingFigure 4

AI summary

A system and method of performing snapshot isolation in distributed databases. Each node stores local snapshot information that enforces snapshot isolation for that node. The method includes partially processing a distributed transaction by a first node, receiving a global commit identifier from a coordinator, and continuing to process the distributed transaction, by the first node and a second node, in accordance with the global commit identifier.