Real-time Standby Database Redo Block Application
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In database replication systems, there is a delay in data availability when the primary database fails because the standby database is not synchronized in real-time with the primary database, leading to inconsistencies and a gap in data availability until the standby database 'catches up' with unarchived redo log entries.
Innovation Solution
Sending redo blocks from the current online redo log file to the standby recovery process before archiving, allowing real-time application of changes to the standby database, thereby reducing the time of data inconsistency and ensuring tighter synchronization with the primary database.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If redo blocks are sent to standby recovery process only after archiving the current online redo log file, then the archiving process is simplified and log file management is easier, but the standby database synchronization is delayed and data availability is reduced
Solution Approach 1:
The patent applies preliminary action by sending redo blocks to the standby recovery process before the current online redo log file is archived. This allows the standby database to begin applying changes in advance, reducing synchronization delay while maintaining data consistency through selective application of committed changes only.
2Productivity
If the standby recovery process waits for archived redo log files to apply changes, then the log management process is simpler and more controlled, but the time to catch up with the primary database increases
Solution Approach 1:
The standby recovery process performs preliminary actions by receiving and buffering redo blocks before archiving occurs. This enables faster data replication while managing complexity through selective processing - only applying changes from committed transactions, thereby avoiding the need to wait for archiving while maintaining log management control.
3Reliability
If redo blocks are transmitted to standby before archiving, then real-time synchronization is achieved, but the risk of applying uncommitted changes increases
Solution Approach 1:
The patent implements feedback mechanisms by tracking transaction commit status and using this information to control which redo blocks are applied. The standby recovery process receives feedback about which transactions are committed and selectively applies only those changes, ensuring synchronization accuracy while eliminating the risk of applying uncommitted changes.
4Loss of time
If the standby database applies changes as soon as redo blocks are received, then data availability is enhanced, but the complexity of managing partial and incomplete transactions increases
Solution Approach 1:
The system uses feedback from transaction commit status to control change application. The standby recovery process receives continuous feedback about which transactions are committed and applies changes accordingly. This reduces standby activation time while managing transaction complexity through selective application based on commit feedback, avoiding the need to handle incomplete transactions.
Data Source
AI summary
A method and apparatus for applying changes to a standby database in real-time. According to one aspect, a change is applied to data contained in a standby database. The standby database functions as a replica of a primary database. The primary database has a current online redo log file to which a particular redo block was written. According to one aspect, prior to the archiving of the current online redo log file, the particular redo block is received at a process associated with the standby database. A change indicated by the particular redo block is applied to the data contained in the standby database.


