Database Recovery via Preliminary Slave Log Replay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed database recovery processes are complex and time-consuming, often resulting in increased resource utilization and the potential for deadlocks due to coordination requirements between master and slave nodes, especially when using serial-access storage media.

Innovation Solution

The proposed solution involves determining preliminary and final slave log positions to decouple the replay activities of master and slave nodes, allowing them to recover independently, with the master node replaying logs until a desired point in time and sending final slave log positions to the slave nodes, thus eliminating the need for complex coordination and reducing resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If typical database recovery schemes involve significant coordination between master and slave nodes, then recovery correctness can be maintained, but device complexity and loss of time increase

Engineering Contradiction:
Improverecovery correctnessVSAvoidcoordination complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the recovery process into independent phases: slave nodes autonomously replay logs from their last checkpoint to a preliminary recovery point, then the master node distributes final log positions for slaves to catch up. This segmentation eliminates the need for continuous coordination during log replay, reducing complexity while maintaining correctness through structured phase separation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by having slave nodes perform autonomous log replay to a preliminary recovery point before receiving final log positions from the master node. This preliminary autonomous recovery reduces coordination overhead during the critical log replay phase, while final synchronization ensures correctness.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If backup files are maintained on serial-access storage medium, then storage cost can be reduced, but loss of time increases due to sequential access requirements

Engineering Contradiction:
Improvestorage costVSAvoidrecovery time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having slave nodes autonomously replay logs to a preliminary recovery point without waiting for master node coordination. This allows parallel log replay across multiple nodes,充分利用 serial-access storage capacity and reducing total recovery time while maintaining storage efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables continuous useful action by allowing slave nodes to continuously replay log backups from serial-access storage without interruption for coordination. Multiple nodes can simultaneously read from the same serial storage medium, maximizing its utilization and reducing recovery time.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If complex algorithms and code are used to avoid deadlocks, then reliability can be improved, but device complexity and loss of time increase

Engineering Contradiction:
Improvedeadlock avoidanceVSAvoidalgorithm complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the recovery process to eliminate deadlock potential: slave nodes perform autonomous log replay to a preliminary point, then the master node distributes final log positions. This segmentation removes circular wait conditions that cause deadlocks, achieving reliability without complex deadlock avoidance algorithms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements self-service by enabling slave nodes to autonomously perform log replay and determine their own recovery state without requiring complex coordination algorithms. This self-service approach eliminates the need for sophisticated deadlock avoidance mechanisms while maintaining system reliability.

Inventive Principle:
Principle #25Self-service

4Reliability

If significant system resources are allocated for recovery coordination, then recovery correctness can be maintained, but productivity decreases

Engineering Contradiction:
Improverecovery correctnessVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by having slave nodes autonomously complete log replay to a preliminary recovery point before master-s slave coordination is needed. This preliminary autonomous work reduces the resource burden during coordination phases, allowing the system to maintain higher throughput while ensuring recovery correctness.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11010262B2Database system recovery using preliminary and final slave node replay positions
Publication Date: 2021.05.18 SAP SE
  • US11010262B2 patent drawing
  • US11010262B2 patent drawing
  • US11010262B2 patent drawing

AI summary

Technologies are described for facilitating database system recovery in a distributed database environment having a master node and at least one slave node. The at least one slave node receives a preliminary slave log backup position. The at least one slave node replays at least a portion of one or more log backups until the preliminary log backup position is reached. The at least one slave node receives a final slave log backup position. The slave node replays at least a portion of one or more log backups until the final slave log backup position is reached.