Distributed Transaction Timestamps for Cross-Shard Causal Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed databases face challenges in maintaining causal consistency across horizontally partitioned shards, leading to inconsistencies in transaction execution.

Innovation Solution

Assigning causal timestamps to transactions using a globally coherent time service to ensure the causal order of database transactions, with techniques to wait for a period of time before executing dependent transactions to guarantee the effects of earlier transactions are not visible until their timestamps are in the past.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If transactions are executed across horizontally partitioned shards in a distributed database, then search performance and system scalability are improved, but causal consistency of transactions deteriorates

Engineering Contradiction:
Improvesearch performanceVSAvoidcausal consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system assigns causal timestamps to transactions before execution using a globally coherent time service. This preliminary timestamp assignment establishes a causal order that persists across distributed shards, ensuring that transactions are processed in the correct causal sequence without requiring coordination during execution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A globally coherent time service acts as an intermediary between distributed transactions and the database system. This service provides synchronized time intervals that serve as causal timestamps, mediating the causal relationships across partitions without requiring direct communication between shards during transaction execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If a wait period is implemented before executing dependent transactions, then causal consistency is ensured, but transaction execution time increases

Engineering Contradiction:
Improvecausal consistencyVSAvoidtransaction execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Causal timestamps are assigned to all transactions in advance using the globally coherent time service, eliminating the need for wait periods during transaction execution. The preliminary timestamp assignment provides a deterministic causal order that can be enforced without delaying transaction processing.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12380092B1Ensuring globally consistent transactions
Publication Date: 2025.08.05 GOOGLE LLC
  • US12380092B1 patent drawing
  • US12380092B1 patent drawing
  • US12380092B1 patent drawing

AI summary

The present technology proposes techniques for ensuring globally consistent transactions. This technology may allow distributed systems to ensure the causal order of read and write transactions across different partitions of a distributed database. By assigning causally generated timestamps to the transactions based on one or more globally coherent time services, the timestamps can be used to preserve and represent the causal order of the transactions in the distributed system. In this regard, certain transactions may wait for a period of time after choosing a timestamp in order to delay the start of any second transaction that might depend on it. The wait may ensure that the effects of the first transaction are not made visible until its timestamp is guaranteed to be in the past. This may ensure that a consistent snapshot of the distributed database can be determined for any past timestamp.