Dynamic Recovery List for Multi-Node Database Failure
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-node database systems, failure recovery processes are delayed due to the need to scan redo logs to determine which data units require redo or undo operations, leading to prolonged database unavailability.
Innovation Solution
A recovery list is dynamically maintained on a buddy node, allowing for immediate identification of data blocks requiring recovery operations upon node failure, thereby reducing the time needed to determine the recovery set and expedite database availability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the redo log is scanned to determine the recovery set, then the accuracy of identifying data blocks requiring recovery is improved, but the time required for failure recovery increases
Solution Approach 1:
The patent maintains a pre-computed recovery set identifier that lists data blocks requiring recovery before a failure occurs. When a failure happens, this pre-maintained identifier is immediately used to identify recovery data blocks without needing to scan the redo log, thus resolving the contradiction between accurate identification and fast recovery
Solution Approach 2:
The patent creates a copy of the recovery set identifier and stores it in a location accessible to the failing node. This copy contains the essential information about which data blocks need recovery, allowing the system to bypass the time-consuming redo log scanning process while maintaining accurate identification of recovery targets
2Reliability
If the database is locked during recovery set determination, then data consistency is maintained, but database availability is reduced
Solution Approach 1:
The recovery set identifier is pre-computed and stored before failures occur. This preliminary action allows the system to immediately identify which data blocks need recovery without locking the entire database during the determination phase, thus maintaining data consistency while improving availability
Solution Approach 2:
The patent extracts the essential recovery information (recovery set identifier) from the redo log processing and stores it separately in advance. This extraction allows the system to bypass the need for extensive database locking during recovery set determination, as the critical information is already available in the pre-stored identifier
Data Source
AI summary
In a multi-node database system, a list of data blocks to perform recovery operations on in the event of failure of a given node is dynamically maintained on another node. List is available when the given node fails, and allows the database to be made available more quickly.


