Synchronous Database Geo-Mirroring via Delayed Visibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database mirroring systems face performance issues and distance limitations when replicating databases over wide area networks, particularly due to high latencies and bandwidth constraints, which hinder synchronous mirroring across geographically distant locations while maintaining ACID properties.

Innovation Solution

Implementing a synchronous database mirroring system using delayed visibility write operations, where the primary and secondary databases separate durability from visibility, allowing them to make write operations durable at their own pace without being constrained by lockstep requirements, and using a monitoring component to maintain a synchronized visible state across databases.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If synchronous database mirroring is implemented over wide area networks, then data consistency and ACID properties are maintained, but performance deteriorates due to high latencies and bandwidth constraints

Engineering Contradiction:
Improvedata consistencyVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the write operation into two independent parts: durability (persistence to storage) and visibility (exposure to clients). This segmentation allows each database to make writes durable independently without waiting for coordination with other databases, eliminating the performance bottleneck while maintaining consistency through the visibility mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by making write operations durable in advance at each database before coordinating visibility. Each database independently persists data to storage first, then participates in a separate visibility coordination phase. This preliminary durability action eliminates waiting delays and allows parallel processing across distributed databases.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If lockstep durability requirements are enforced across mirrored databases, then data consistency is ensured, but performance deteriorates due to waiting for all databases to complete writes

Engineering Contradiction:
Improvedata consistencyVSAvoidwrite operation latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the traditional atomic write operation into separate durability and visibility phases. Durability is achieved independently at each database through local persistence, while visibility is coordinated separately through a protocol that determines which durable writes are exposed to clients. This eliminates the need for all databases to complete writes in lockstep.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a visibility coordination mechanism that acts as an intermediary between durability and visibility. This intermediary protocol collects durability status from all databases, determines a consistent visibility point, and exposes data to clients only when appropriate. This mediator enables consistency without requiring synchronous durability completion.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If data is replicated over large distances, then geographic distribution and availability are improved, but performance deteriorates due to network latency

Engineering Contradiction:
Improvegeographic distributionVSAvoidreplication performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the replication process into independent durability operations at each geographic location and a separate visibility coordination phase. Each database can persist data locally without waiting for remote databases, eliminating network latency from the critical durability path. The visibility protocol then reconciles these independent operations, allowing geographic distribution without performance penalty.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent enables preliminary durability actions at each geographic location before visibility coordination. Remote databases can independently complete their persistence operations without blocking the primary database, then participate in a subsequent visibility determination phase. This preliminary action eliminates the performance impact of distance-based network latency.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If traditional replication protocols are used, then data consistency is maintained, but system complexity increases due to coordination overhead

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

Solution Approach 1:

The patent segments the replication protocol into a simple durability phase (local persistence only) and a separate visibility coordination phase. This segmentation simplifies the overall system by allowing independent, straightforward durability operations at each database without complex inter-database coordination during the write phase, reducing system complexity while maintaining consistency.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11144407B1Synchronous database geo-mirroring using delayed visibility write operations
Publication Date: 2021.10.12 AMAZON TECH INC
  • US11144407B1 patent drawing
  • US11144407B1 patent drawing
  • US11144407B1 patent drawing

AI summary

Systems and methods are disclosed to implement a synchronous database mirroring technique using delayed visibility write operations. In embodiments, a durable log of write operations in a primary database is replicated to a secondary database. The two databases do not make corresponding operations durable in a synchronous manner. However, the two databases coordinate to provide a visible view of the two durable logs that is guaranteed be durable in both databases. In embodiments, the primary database may monitor the state of the durable log of the secondary database, and periodically update the visible range of the logs to include operations that have been made durable in both databases. Advantageously, the visible range of the logs is permitted to grow asynchronously from the logs themselves, so that the two databases can provide a synchronized visible view of the log data without placing timing constrains on the data's durability.