Stateful System Maintenance via Database Replication and Replay Buffer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Stateful systems, such as database management systems, face challenges in updating without causing downtime, which is undesirable in mission-critical applications, as existing methods require taking servers offline for updates, leading to potential business or health-related impacts.

Innovation Solution

A method that involves mapping a network address of a stateful system to a primary server, replicating the primary database to a secondary server, caching incoming requests, and switching to the secondary server for updates, allowing seamless maintenance without visible outages to clients, and then reinstating the primary server.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If the primary server is taken offline for updates, then the maintenance operation can be performed, but the system experiences downtime and clients are affected

Engineering Contradiction:
Improveease of maintenanceVSAvoidsystem availability
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent applies preliminary action by replicating the primary database to a secondary server before the maintenance operation begins. This pre-prepared secondary server is ready to immediately take over when the primary server goes offline, minimizing downtime and ensuring continuous system availability during maintenance updates.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses a secondary server as an intermediary during the maintenance process. When the primary server needs to be updated, the secondary server acts as a mediator that handles client requests, allowing the primary server to be taken offline for maintenance without completely disrupting service. The load balancer facilitates this intermediary role by redirecting traffic.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the primary server remains online during updates, then system availability is maintained, but the update process becomes complex and may fail

Engineering Contradiction:
Improvesystem availabilityVSAvoidupdate process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the server system into primary and secondary components, each capable of independent operation. This segmentation allows the update process to be isolated to the primary server while the secondary server continues to handle requests, simplifying the update procedure and reducing the risk of system-wide failures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a copy of the primary database on a secondary server. This copying mechanism allows the primary server to be updated without affecting the availability of data and services, as the secondary server maintains a functional replica that can serve client requests during the update process.

Inventive Principle:
Principle #26Copying

3Loss of time

If a secondary server is used for updates, then downtime is minimized, but additional infrastructure and complexity are required

Engineering Contradiction:
Improveupdate downtimeVSAvoidserver infrastructure complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent merges the primary and secondary servers into a coordinated system where both serve the same database management function. The load balancer combines their capabilities, automatically routing traffic to the appropriate server based on operational status, thereby minimizing downtime while managing infrastructure complexity through unified control.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent changes the operational parameters of the server system by introducing a failover mechanism. When the primary server undergoes maintenance, its status parameter changes from active to inactive, and the secondary server's status changes from standby to active, automatically adjusting the system configuration to minimize downtime without manual intervention.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11360866B2Updating stateful system in server cluster
Publication Date: 2022.06.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11360866B2 patent drawing
  • US11360866B2 patent drawing
  • US11360866B2 patent drawing

AI summary

A computer-implemented method for seamlessly performing a maintenance operation on a stateful system includes mapping a network address of the stateful system to a primary server that uses a primary database to respond to incoming data requests. In response to receiving a maintenance request, the primary database is replicated to a secondary database of a secondary server. The secondary server is updated according to the maintenance request. The method further includes caching, in a replay buffer of the primary server, incoming data requests during the replicating. After the replicating, the data requests from the replay buffer are executed by the secondary server. Write operations to the primary server are disabled during the replicating, and the network address of the stateful system is mapped to the secondary server. Subsequently, the primary server is updated and reinstated by mapping the network address, and enabling the write operations.