Snapshot Creation from Changed Block Lists
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtual machine environments, accessing and backing up data from a storage volume is resource-intensive, leading to performance issues and data integrity problems, particularly during multi-tasking or multi-user systems, where data may be inaccessible or corrupted due to version skew during backup processes.
Innovation Solution
A method is provided to create snapshots from a list of changed blocks, establishing a base state and generating a list of changed blocks associated with a data storage volume, allowing for the synthesis of a snapshot while enabling continued data access and reducing resource consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a full backup of a large data set is performed, then data backup completeness is improved, but backup time and system resources are excessively consumed
Solution Approach 1:
The backup process is segmented into two phases: first, a base state snapshot is taken capturing the initial data set; second, only the changed blocks (delta data) are identified and backed up in subsequent operations. This segmentation transforms a single large backup operation into multiple smaller, more efficient operations that collectively achieve complete data backup without requiring excessive time for each individual backup.
Solution Approach 2:
A base state snapshot is created in advance before the backup process begins. This preliminary action establishes a reference point that allows subsequent backups to only capture changes since that base state, rather than re-backing up the entire data set. The preliminary snapshot enables efficient incremental backup operations while ensuring complete data coverage.
2Productivity
If data is made accessible during backup operations, then system productivity is improved, but data integrity and consistency are compromised due to version skew
Solution Approach 1:
A base state snapshot is captured in advance before backup operations begin. This preliminary snapshot freezes a consistent reference state of the data, allowing the system to continue processing and accessing data during backup operations without compromising the integrity of the backup source. The pre-captured snapshot serves as an immutable reference that prevents version skew issues.
Solution Approach 2:
Instead of backing up live data directly, the system creates a copy of the base state snapshot and backs up changes relative to that copy. This copying approach allows the original data to remain accessible and modifiable during backup operations, while the backup process operates on a static reference copy, thereby maintaining data integrity without sacrificing system productivity.
3Ease of operation
If snapshots are taken frequently to maintain data availability, then data accessibility is improved, but storage resource consumption increases due to repeated full data cloning
Solution Approach 1:
Snapshot creation is segmented into capturing only the changed blocks since the base state rather than cloning the entire data set. This segmentation allows frequent snapshots to be created with minimal storage overhead, as each snapshot only records the delta changes since the previous reference point, not the complete data set.
Solution Approach 2:
Instead of performing complete data cloning for each snapshot, the system performs partial action by only capturing and storing the changed blocks. This partial approach is sufficient to maintain data accessibility and enable recovery operations, while avoiding the excessive storage resource consumption that would result from repeated full data set cloning.
Data Source
AI summary
A method of operating a data management system includes establishing a base state for a data storage volume, generating a list of blocks associated with the data storage volume that have changed, and creating a snapshot from the list of blocks.


