Replication Log-Injected Compare Records for Database Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing replication solutions face challenges in detecting and resolving inconsistencies between source and target datastores, particularly in heterogeneous environments, where differences in database formats and structures complicate the comparison process, and existing methods often require database systems to be in read-only mode, leading to inefficiencies and potential use of stale data.
Innovation Solution
A computer-implemented method that uses compare records injected into a log stream to detect inconsistencies between source and target datastores, allowing for point-in-time comparison and resolution of conflicts using conflict exits, enabling parallel comparison operations and maintaining database availability without long-term locks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If database systems are placed in read-only mode for comparison, then data consistency between source and target datastores can be verified, but database availability and update operations are blocked
Solution Approach 1:
The system performs comparison operations on replicated data before the replication is fully applied to the target database. By using compare records that are injected into the log stream and processed by the apply process, the verification happens at a point in time before updates are committed, allowing the database to remain in read-write mode throughout the comparison process.
2Stability of the object's composition
If static copies are used for comparison, then consistent state verification is achieved, but the comparison data may be stale and not reflect current changes
Solution Approach 1:
The system introduces compare records as an intermediary mechanism between the source and target databases. These compare records are injected into the replication log stream and contain snapshots of source data at specific points in time. The apply process processes these compare records against the current target state, enabling verification of data consistency without requiring static copies or blocking updates.
3Productivity
If replication log-injected compare records are used, then database availability is maintained during comparison, but the complexity of the replication system increases
Solution Approach 1:
The apply process is enhanced to serve multiple functions: it continues to perform its standard role of applying replication changes to the target database while simultaneously processing compare records for verification purposes. This multi-functionality allows the system to maintain database availability during comparison without requiring separate dedicated verification processes, thereby limiting the increase in system complexity.
Data Source
AI summary
Compare processing using replication log-injected compare records includes receiving compare records from a source system having a source datastore in a replication relationship with a target datastore of a target system, the compare records corresponding to selected source objects of the source datastore, and the compare records being received in compare transaction(s) to be performed by the target system for determining whether data of the target datastore is consistent with the selected source objects, and commencing compare processing to perform the compare transaction(s), the compare processing including processing a compare record of the received compare records, which includes identifying a selected source object identified by the compare record, attempting to locate and read a corresponding target object of the target datastore, and further processing the compare record based on whether the corresponding target object is located and read by the attempting.


