Geographically Distributed Database Active-Passive Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Geographically distributed inventory management systems face challenges in reducing response time delays and minimizing the potential for double-booking and data inconsistencies across multiple datacenters, which are exacerbated by differing user and service-provider latency expectations and varying request volumes.

Innovation Solution

A geographically distributed database system architecture that utilizes multiple datacenters, where one active datacenter handles inventory configuration and transactions, while passive datacenters reroute requests to ensure consistent inventory management, using load balancers to manage traffic and maintain synchronized cache and configuration databases across datacenters.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If multiple geographically distributed datacenters are used to reduce response time delays, then user latency expectations are met, but data inconsistencies and double-booking risks increase across datacenters

Engineering Contradiction:
Improveresponse time delayVSAvoiddata consistency
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system segments datacenters into active and passive roles, with active datacenters handling configuration and transaction requests while passive datacenters handle only search requests. This segmentation allows geographically distributed datacenters to reduce latency for different request types while maintaining data consistency through centralized configuration management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Load balancers act as intermediaries between user devices and datacenters, routing search requests to the geographically closest datacenter while directing configuration and transaction requests to active datacenters. This intermediary mechanism enables low-latency search responses without compromising transactional data consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If all datacenters process all request types independently, then response times are minimized, but incorrect bookings and data inconsistencies occur

Engineering Contradiction:
Improverequest processing speedVSAvoidbooking accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Request processing is segmented by type: search requests are handled by any datacenter for high-speed local processing, while configuration and transaction requests are routed to active datacenters. This segmentation maintains high productivity for search operations while ensuring booking accuracy through centralized transaction management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Configuration and transaction request processing is merged at active datacenters, consolidating these critical operations in centralized locations. This merging ensures data consistency and prevents double-booking while allowing passive datacenters to maintain high-speed search capabilities.

Inventive Principle:
Principle #5Merging (Combining)

3Speed

If geographically distributed datacenters are implemented, then user proximity and response speed improve, but system complexity increases

Engineering Contradiction:
Improverequest response speedVSAvoiddatacenter architecture complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The datacenter architecture is segmented into active and passive datacenters with clearly defined roles. Passive datacenters have simplified functionality (handling only search requests) while active datacenters handle configuration and transactions. This segmentation reduces operational complexity compared to fully distributed processing while maintaining geographic distribution for speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Load balancers serve as intermediaries that abstract the complexity of datacenter routing from user devices. They automatically route requests based on type and datacenter status, hiding the architectural complexity while enabling geographically distributed processing for fast response times.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If passive datacenters reroute configuration and transaction requests to active datacenters, then data consistency is maintained, but additional routing overhead is introduced

Engineering Contradiction:
Improveinventory data consistencyVSAvoidrequest routing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary routing decisions at the load balancer level, classifying requests by type before forwarding them. Configuration and transaction requests are pre-identified and routed to active datacenters, while search requests are pre-identified and routed to local datacenters. This preliminary action reduces routing overhead by making decisions early in the request lifecycle.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10997199B2Systems and methods for geographically distributed database systems
Publication Date: 2021.05.04 AMADEUS SAS
  • US10997199B2 patent drawing
  • US10997199B2 patent drawing
  • US10997199B2 patent drawing

AI summary

Computer-implemented methods and systems are provided for managing databases. Consistent with disclosed embodiments, a database system can serve configuration requests received from administration systems using an active cluster of at least two geographically separated computing clusters. Serving configuration request can include updating an active configuration database of the active cluster based on the configuration request. The system can also serve search requests received from user devices that specify a search criterion using a closest one of the geographically separated computing clusters by retrieving items satisfying the search criterion from local copies of a cache replicated across the geographically separated computing clusters. Furthermore, the system can serve transaction requests received from the user devices using the active cluster by updating an active local copy of the cache replicated in the active cluster. The active datacenter may be changed by using load balancing devices to reroute transaction and configuration requests between datacenters.