Database Page Mirroring for Automated Backup and Restore
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Individual users and small businesses lack effective automated solutions for database backup and restoration, relying on manual methods that are prone to errors and inadequate, leading to potential data loss due to corruption, which can be disastrous for important data such as financial or personal information.
Innovation Solution
The implementation of automated database backup and restore systems that utilize a mirror database approach, where changes are validated and written to both the original and mirror databases, with a lazy writer component managing buffer space and transaction logs to ensure data integrity and facilitate recovery in case of system failures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual backup methods are used, then users can create backup copies of databases, but the process is prone to human error and requires substantial time and effort
Solution Approach 1:
The system performs automated backup operations without requiring user intervention. The database engine automatically creates backup pages, manages buffer space, and restores corrupted data without human involvement, eliminating manual errors and time-consuming operations
Solution Approach 2:
A buffer pool acts as an intermediary between the database pages and backup storage. The buffer pool temporarily holds modified pages and manages the writing process to backup storage, automating the complex coordination required for reliable backups
2Reliability
If automated mirror database system is implemented, then data protection reliability is improved, but device complexity increases due to buffer management and lazy writer components
Solution Approach 1:
The buffer pool serves multiple functions simultaneously: it acts as a cache for database pages, a staging area for backup operations, and a mechanism for managing data synchronization between original and mirror databases. This consolidation reduces overall system complexity despite the automated protection features
Solution Approach 2:
The system pre-allocates buffer pool space and pre-establishes the mirror database structure before backup operations are needed. The lazy writer component proactively manages buffer contents, writing pages to backup storage before they are potentially needed for restoration, simplifying the overall system architecture
3Reliability
If buffer space is allocated for mirroring operations, then data synchronization is improved, but memory resource consumption increases
Solution Approach 1:
The buffer pool size and allocation are dynamic rather than static. The system adjusts buffer usage based on current database operations, actively modifying pages, and backup requirements. The lazy writer component dynamically determines which pages to write to backup storage, optimizing memory utilization while maintaining synchronization reliability
Solution Approach 2:
The system changes the state of buffer contents from volatile (in-memory) to persistent (on backup storage) as needed. By controlling when pages are written from the buffer pool to backup storage, the system optimizes the balance between memory consumption and data synchronization reliability
Data Source
AI summary
Systems and methods are presented that facilitate automatic database backup and restore for databases resident in personal computing devices, and which are transparent to a user, utilizing database page mirroring. Modifications to a data page in a data file can be validated and written to a backup, or mirror, database and then subsequently written to an original database after a predetermined time. An I/O latch on a mirrored data page can be limited to a duration of a single I/O write operation to facilitate sequential data page writing to each of the databases while mitigating potential for both databases to be written simultaneously, which can detrimentally affect data quality during a recovery operation.


