Online Database Migration With Live Change Replication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Upgrading or migrating complex database systems often requires both the source and target server systems to be offline for an extended period, which is undesirable for mission-critical systems where downtime is to be minimized.
Innovation Solution
An online migration method where the source server remains online during the migration process, allowing it to respond to database requests while performing migration functions, with concurrent execution of migration scripts throttled to maintain performance, and using a modification replicator to log and propagate changes to the target server system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the source server system is taken offline for migration, then the migration process can be performed without interference, but the system downtime increases significantly
Solution Approach 1:
The patent applies preliminary action by creating a copy of the database object on the target server system before the source server is taken offline. This allows the migration to be prepared in advance while the source remains operational, reducing the actual downtime required for the migration switchover.
Solution Approach 2:
The patent uses copying by creating a duplicate database object on the target server system that mirrors the source database object. This copy can be maintained and updated while both systems are online, allowing for a seamless transition with minimal downtime when the migration is completed.
2Loss of time
If the source server system remains online during migration, then system availability is maintained, but the complexity of managing concurrent operations increases
Solution Approach 1:
The patent introduces an intermediary mechanism (the modification replicator and queue system) that mediates between the source and target database objects. This intermediary handles the complexity of concurrent operations by capturing modifications on the source side and systematically applying them to the target side, isolating the complexity from the main migration logic.
Solution Approach 2:
The patent replaces manual or complex mechanical coordination of concurrent operations with an automated electronic system. The modification replicator automatically captures, queues, and applies changes without requiring complex manual coordination, substituting a sophisticated electronic control mechanism for simpler but less efficient manual processes.
3Productivity
If migration scripts are executed concurrently on the online source server, then migration progress is made during operation, but system performance may be degraded
Solution Approach 1:
The patent segments the migration process into distinct phases: initial copy creation, concurrent modification replication, and final synchronization. This segmentation allows different parts of the migration to occur at different times and with different resource allocations, maintaining system performance while achieving migration goals.
Solution Approach 2:
The patent applies partial action by initially creating a complete copy of the database object on the target system, then only replicating modifications rather than re-copying the entire object. This partial approach to data transfer significantly reduces the ongoing resource requirements during the migration process while maintaining productivity.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Various arrangements for performing an online migration between server systems is presented. A transfer, from a source server system to a target server system, of a database, may be initiated. During the transfer, the database of the source server system may remain online. A timing indication of when transfer of the database was initiated may be recorded. While transferring the database, modifications to the records of the database may be received. The plurality of modifications may be stored, and, for each modification of the plurality of modifications, a timing indication of when the modification was received may be stored. After completing the transfer of the database to the target server system, the plurality of modifications to the database stored by the target server system may be applied while the source server system is online.