Changed-Block Volume Data Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data recovery methods, such as continuous data protection, face high storage costs and low granularity due to reliance on snapshots, which increase recovery time objectives and are not optimized for efficient data retrieval.
Innovation Solution
A computer-implemented method that accumulates changed blocks over a continuous-data-protection window, converts them into a changed-block volume, and redirects read requests to this volume within a virtual machine, allowing for instant recovery at any point in time without accessing a hypervisor and being cloud storage service agnostic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If snapshots are used for data recovery, then data can be recovered from any point in time, but storage costs increase and recovery time increases
Solution Approach 1:
The patent segments the storage system into multiple cache layers (first cache, second cache, third cache) with different retention periods and access characteristics. Changed blocks are divided into segments based on their age and importance, with newer blocks in faster caches and older blocks in slower caches. This segmentation enables efficient recovery by accessing only relevant segments rather than entire snapshots.
Solution Approach 2:
The system performs preliminary actions by continuously monitoring and accumulating changed blocks in real-time before recovery is needed. The first cache maintains a rolling window of changed blocks, and the system pre-processes and organizes these blocks into structured formats with metadata, so that when recovery is requested, the data is already prepared and accessible without time-consuming snapshot restoration.
2Reliability
If snapshots are used for continuous data protection, then data can be recovered, but the solution is high cost and results in low level of granularity
Solution Approach 1:
The patent applies local quality by assigning different characteristics to different parts of the storage system. The first cache uses high-speed storage with fine-grained tracking for recent changed blocks, while the second and third caches use lower-cost storage with coarser granularity for historical blocks. This local differentiation optimizes both cost and performance by matching storage characteristics to specific recovery needs.
Solution Approach 2:
Instead of maintaining complete snapshots of entire volumes, the system performs partial action by tracking and storing only the changed blocks within a rolling time window. This selective approach stores a fraction of the total data while maintaining continuous protection capability, significantly reducing storage costs while preserving the ability to recover to any point within the window.
3Reliability
If volume conversion is performed for restoration from snapshot, then data can be recovered, but significant time is required for conversion
Solution Approach 1:
The patent uses copying by maintaining duplicate representations of changed blocks across multiple cache layers with different formats. The first cache stores blocks in a standardized format with comprehensive metadata, while other caches store copies in optimized formats for specific access patterns. When recovery is needed, the system copies the required blocks from the appropriate cache layer rather than performing time-consuming conversion from snapshots.
Solution Approach 2:
The first cache acts as an intermediary layer between the source volume and the recovery target. It continuously monitors changed blocks and maintains them in a pre-processed format with metadata that facilitates rapid recovery. This intermediary cache eliminates the need for direct snapshot-to-volume conversion by providing already-processed blocks that can be directly applied to restore the target volume.
4Reliability
If traditional snapshot solution is used, then data protection is provided, but the level of granularity is low (e.g., one snapshot per day)
Solution Approach 1:
The system implements continuity of useful action by continuously monitoring changed blocks in real-time as they occur, rather than periodically creating snapshots. The rolling time window in the first cache continuously accumulates changed blocks with timestamps, providing uninterrupted tracking of data changes. This continuous action enables recovery to any precise moment within the window, achieving fine granularity without the discontinuous nature of periodic snapshots.
Data Source
AI summary
The disclosed computer-implemented method for recovering data may include (i) accumulating a list of changed blocks that have changed in a replicated source volume over a continuous-data-protection window of time, (ii) receiving a request to recover data in a replication target volume of the replicated source volume, (iii) converting the changed blocks to a changed-block volume that is paired with the replication target volume, (iv) launching a virtual machine from the replication target volume and the paired changed-block volume, (v) determining that an intercepted read request is directed to a changed block stored within the changed-block volume, and (vi) redirecting the intercepted read request from the replication target volume to the changed-block volume to fulfill the intercepted read request. Various other methods, systems, and computer-readable media are also disclosed.


