Consistent Backup via Block Tracking and Snapshot
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing backup methods for physical or virtual machines often result in inconsistent backups due to ongoing data changes during the backup process, leading to unreliable data and resource consumption issues, with snapshot failures further complicating the recovery process.
Innovation Solution
A method that creates a consistent backup by taking snapshots of storage devices, tracking changes, and updating the backup with missed or changed blocks, ensuring data integrity even in the event of snapshot failures, thereby minimizing resource dependency and snapshot lifetime.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional backup methods are used to backup physical or virtual machines, then backup coverage is achieved, but data consistency deteriorates due to ongoing data changes during backup
Solution Approach 1:
The system creates a snapshot of the storage device at the beginning of the backup process, capturing the state of data blocks before any changes occur during backup. This preliminary action establishes a reference point that ensures consistency between the snapshot and the backup data, preventing data integrity loss despite ongoing writes to the storage device.
Solution Approach 2:
The system implements a block tracking mechanism that continuously monitors and records changes to data blocks during the backup process. By comparing the current state of blocks against the snapshot, the system receives feedback about which blocks have been modified, allowing it to update the backup accordingly and maintain data consistency throughout the backup operation.
2Reliability
If snapshots are created to ensure backup consistency, then data reliability improves, but system resource consumption increases
Solution Approach 1:
The system extracts only the specific data blocks that have changed since the snapshot was created, rather than backing up the entire storage device again. By identifying and processing only the modified blocks through the block tracking mechanism, the system significantly reduces the amount of data that needs to be read, transferred, and stored, thereby lowering CPU, memory, and I/O resource consumption while maintaining backup consistency.
3Reliability
If full backups are performed regularly to ensure data recovery, then data completeness improves, but backup time and productivity deteriorate
Solution Approach 1:
Instead of performing complete full backups each time, the system performs partial backups by backing up only the data blocks that have changed since the last backup. The block tracking mechanism identifies these changed blocks, and the backup process focuses exclusively on transferring and storing these partial datasets, dramatically reducing backup time while ensuring that all necessary data for recovery is captured.
4Measurement precision
If block tracking is implemented to monitor storage device changes, then backup accuracy improves, but device complexity increases
Solution Approach 1:
The system introduces a block tracking component that acts as an intermediary between the storage device and the backup application. This intermediary component intercepts and records write operations to the storage device, maintaining a log of changed blocks without requiring modifications to the storage device itself or the backup application's core functionality. This modular approach improves backup accuracy while minimizing the increase in overall system complexity.
Data Source
AI summary
A method for creating an inconsistent backup and then a consistent backup is described. The method may include creating an inconsistent, full backup of a storage device. The method may further include creating a first snapshot of the storage device. The method may also include creating a consistent backup increment of the storage device based on the first snapshot. Additionally, the method may include adding the consistent backup increment to the inconsistent, full backup.


