Distributed Database Snapshots for Point-in-Time Backup Restore
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database backup methods, such as full-backups, require significant disk space and time, and frequent incremental backups can impact ongoing operations, making it difficult to maintain data integrity and recover from errors or failures.
Innovation Solution
A distributed database system that captures and retains consistent database snapshots, allowing for high-resolution archival and restore functionality, enabling regular backups without impacting ongoing operations and facilitating point-in-time queries and data reconstruction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If full-backups are performed frequently to ensure data integrity, then data safety is improved, but disk space consumption and backup time increase significantly
Solution Approach 1:
The backup system segments the backup process into full-backup and incremental-backup phases. Full-backups capture complete database images periodically, while incremental-backups capture only changes since the last full-backup. This segmentation allows frequent backups for data safety without proportionally increasing disk space consumption, as incremental backups require minimal additional storage.
Solution Approach 2:
The system implements periodic full-backups combined with more frequent incremental-backups. Full-backups are performed on a schedule (e.g., daily or weekly) to establish baseline snapshots, while incremental-backups occur more frequently to capture data changes. This periodic action pattern ensures data safety through regular complete backups while using minimal disk space between full-backup cycles.
2Reliability
If full-backups are performed frequently to ensure data safety, then data integrity is improved, but backup completion time increases
Solution Approach 1:
The backup process is segmented into full-backup and incremental-backup operations. Full-backups perform complete database copies periodically, while incremental-backups perform rapid difference detection and copying only changed data blocks. This segmentation dramatically reduces backup time for frequent operations while maintaining data integrity through periodic complete backups.
Solution Approach 2:
The system uses periodic full-backups interspersed with rapid incremental-backups. The full-backups ensure complete data integrity checkpoints, while the incremental-backups provide frequent protection against data loss with minimal time impact. This periodic pattern balances data integrity requirements with acceptable backup time constraints.
3Productivity
If incremental backups are performed regularly to maintain data integrity, then backup frequency is improved, but system performance and ongoing operations are impacted
Solution Approach 1:
The backup system uses copy-on-write technology to create snapshots of the database at specific points in time. Instead of copying actual data blocks during backups, the system copies metadata pointers and only writes new data blocks when changes occur. This copying mechanism enables frequent backups with minimal impact on ongoing operations, as the original data remains unchanged and accessible.
Solution Approach 2:
The system performs preliminary snapshot creation before backup operations. By pre-establishing consistent database snapshots using copy-on-write, the system prepares backup states without interrupting ongoing transactions. This preliminary action allows incremental backups to proceed rapidly by comparing snapshot metadata rather than scanning actual data, minimizing impact on system performance.
4Adaptability or versatility
If database snapshots are retained for high-resolution archival to enable point-in-time recovery, then data reconstruction capability is improved, but storage requirements increase
Solution Approach 1:
The snapshot retention strategy is segmented into different retention periods and priorities. Recent snapshots are retained with high resolution for immediate recovery needs, while older snapshots are retained with lower resolution or compressed formats. This segmentation enables point-in-time recovery for critical timeframes while reducing storage requirements for historical archives.
Solution Approach 2:
The system changes snapshot storage parameters over time, including compression ratios, retention periods, and resolution levels. Recent snapshots use higher quality settings for fast recovery, while older snapshots use aggressive compression and longer retention cycles. This parameter changes approach maintains adaptability for point-in-time recovery while managing storage requirements through time-based differentiation.
Data Source
AI summary
Techniques are disclosed for backup and restore in a distributed database utilizing consistent database snapshots. In particular, a distributed database system configured in accordance with an embodiment of the present disclosure includes a plurality of interconnected database nodes that collectively define a database having no single point of failure and that can be “viewed” by a SQL client as a single, logical database. In the course of executing such transactions, the distributed database system enables clients to declare snapshots that, when the transaction is committed, cause the distributed database system to logically freeze a consistent and complete copy of the state of the database at the point in time the transaction completed. Such snapshots enable clients to execute so-called “point-in-time” queries against those past states to return a result set that is essentially a reconstructed version of the database “as of” a particular point in time.


