Database Failover Observer State Propagation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems with automatic failover configurations face challenges in preventing divergence between primary and standby databases, ensuring maximum availability, and efficiently managing state changes to maintain data integrity and minimize resource usage.

Innovation Solution

The implementation of an automatic failover configuration with an active observer that exchanges control messages via non-redo communications links, ensuring only one active observer, and using a method to prevent divergence by propagating the current configuration state among participants, including steps for failover management and observer identification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If an observer monitors the primary database system to detect failures, then the reliability of automatic failover is improved, but the device complexity increases due to additional monitoring components and state management mechanisms

Engineering Contradiction:
Improveautomatic failover reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an observer as an intermediary component that monitors the primary database system and coordinates failover decisions. The observer acts as a mediator between the primary and standby systems, exchanging control messages to detect failures and trigger failover without requiring direct complex interaction between the database systems themselves. This intermediary approach improves reliability while managing system complexity through standardized communication protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the observer exchanges control messages via non-redo communications links, then the productivity of failover detection is improved, but the loss of information increases if these communication links fail

Engineering Contradiction:
Improvefailover detection speedVSAvoidcontrol message loss
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent implements preliminary actions by maintaining state information and configuration data in the observer before failures occur. The observer pre-establishes communication channels and prepares failover logic, allowing rapid detection and response when failures happen. This preliminary preparation enables fast failover detection through non-redo communication links while mitigating information loss by having critical state information already available locally in the observer.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If the system propagates current configuration state among participants to prevent divergence, then the manufacturing precision of data consistency is improved, but the use of energy increases due to continuous state synchronization

Engineering Contradiction:
Improvedata consistencyVSAvoidsynchronization energy consumption
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The patent implements periodic state propagation where the observer exchanges configuration state information with database participants at regular intervals rather than continuously. This periodic synchronization maintains data consistency by ensuring all participants have up-to-date configuration information while reducing energy consumption compared to continuous real-time synchronization. The periodic action allows the system to balance consistency requirements with resource efficiency.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS8255369B2Automatic failover configuration with lightweight observer
Publication Date: 2012.08.28 ORACLE INT CORP
  • US8255369B2 patent drawing
  • US8255369B2 patent drawing
  • US8255369B2 patent drawing

AI summary

Techniques used in an automatic failover configuration having a primary database system, a standby database system, and an observer for preventing divergence among the primary and standby database systems while increasing the availability of the primary database system. In the automatic failover configuration, the primary database system remains available even in the absence of both the standby and the observer as long as the standby and the observer become absent sequentially. The failover configuration further permits automatic failover only when the observer is present and the standby and the primary are synchronized and inhibits state changes during failover. The database systems and the observer have copies of failover configuration state and the techniques include techniques for propagating the most recent version of the state among the databases and the observer and techniques for using carefully-ordered writes to ensure that state changes are propagated in a fashion which prevents divergence.