Database Backup Using Page Map Tracking to Reduce Load Time
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current database backup methods are inefficient, especially for very large databases, as they require database downtime and may miss concurrent changes during the backup process, leading to increased recovery time due to the need to restore changes from transaction logs, which can be slow and cumbersome.
Innovation Solution
Implement a method that involves multiple phases of database backup, including an initial phase where a baseline dump is created, followed by iterative re-copying of changed pages to the archive, using a dump page map to track and re-copy pages that have changed concurrently, reducing the need for log-based recovery and minimizing the recovery time during database load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional database backup methods are used to ensure data integrity, then data reliability is improved, but database downtime increases and productivity deteriorates
Solution Approach 1:
The system performs preliminary actions by creating a baseline dump and continuously tracking changed pages during the backup process. This allows the backup to proceed without requiring database downtime, as the tracking mechanisms are established before the actual backup begins and continue to operate throughout the process.
Solution Approach 2:
The patent introduces intermediary components including a dump page map and transaction log to mediate between the running database and the backup process. These intermediaries capture page changes and transaction information without interrupting database operations, enabling continuous backup while maintaining data integrity.
2Measurement precision
If database checkpointing is performed to track changes during backup, then measurement precision of changed pages is improved, but device complexity increases
Solution Approach 1:
The backup system is segmented into distinct functional components: a baseline dump phase, a change tracking phase using dump page maps, and a recovery phase using transaction logs. Each component handles a specific aspect of change tracking, which simplifies the overall complexity by breaking down the monolithic backup process into manageable, specialized segments.
Solution Approach 2:
The system creates copies of changed pages in the dump page map and copies transaction logs to capture database changes. This copying mechanism provides precise tracking of modifications without requiring complex real-time analysis of the live database, simplifying the tracking process while maintaining accuracy.
3Reliability
If pages are re-copied to the archive during backup to capture concurrent changes, then data completeness is improved, but loss of time increases during the dump process
Solution Approach 1:
The backup process maintains continuity by continuously tracking page changes throughout the dump operation rather than performing discrete re-copying cycles. The dump page map continuously records modified pages, and these are efficiently transferred to the archive in a continuous stream, eliminating idle time between tracking and copying operations.
Solution Approach 2:
The system implements feedback mechanisms where the dump page map continuously monitors for changed pages and immediately triggers their transfer to the archive. This feedback loop ensures that concurrent changes are captured promptly without requiring lengthy re-copying phases, reducing the overall dump duration while maintaining data completeness.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Systems and methods performing a database backup process are presented for reducing database load time. In some embodiments, a computer-implemented method may include marking a checkpoint in a log of the database; generating a backup of the database for data up to the checkpoint; recording first changes in the database while generating the backup of the database; adding to the backup of the database an additional backup of the recording of the first changes; recording second changes in the database while adding the additional backup; determining if a number of second changes satisfies a criterion; and if the number of second changes satisfies the criterion, then adding to the backup of the database a backup of the recorded second changes. Recording these changes can enable a database dump process to contain more recent page images, so that the amount of recovery at load time is reduced.