Journal Metadata Annotation for Continuous Data Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data protection systems face challenges in maintaining continuous data protection without slowing down the production site, as they struggle to keep pace with high data transaction rates, leading to potential shutdowns and data loss during recovery processes.
Innovation Solution
The method involves annotating metadata entries in a journal to indicate changes by an application to an object in a continuous data protection environment, allowing for the determination of a specific version of the object that meets recovery criteria using DO and UNDO stream data blocks, enabling efficient rollback and recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If journaling is implemented to enable continuous data protection and rollback capability, then data recovery flexibility is improved, but system overhead increases and backup site performance deteriorates
Solution Approach 1:
The journal is segmented into multiple regions including a circular region for recent transactions and a linear region for historical transactions. This segmentation allows the system to efficiently handle both recent rollback operations (using the circular region) and historical recovery operations (using the linear region), reducing the overhead of managing a single large journal structure.
Solution Approach 2:
The system pre-allocates journal space and maintains a pointer to the current write position in advance. This preliminary action eliminates the need for dynamic journal expansion during operations and allows the backup site to process transactions without waiting for journal space allocation, reducing system overhead.
2Reliability
If the backup site processes all data transactions to maintain continuous protection, then data protection completeness is improved, but the backup site cannot keep pace with high transaction rates
Solution Approach 1:
The system extracts only the essential transaction information (metadata) to the journal, separating it from the full data blocks. This extraction allows the backup site to process transaction logs efficiently without handling large amounts of actual data, maintaining protection completeness while improving processing speed.
Solution Approach 2:
The system creates compact copies of transaction metadata in the journal rather than duplicating full data blocks. These metadata copies contain sufficient information to reconstruct data states during recovery, enabling fast processing at the backup site while maintaining complete data protection capability.
3Productivity
If the production site is forced to slow down to allow backup completion, then backup site performance is improved, but production site availability deteriorates
Solution Approach 1:
The journal acts as an intermediary between the production site and backup site. The production site writes transaction metadata to the journal without waiting for backup confirmation, while the backup site processes these journal entries independently. This intermediary mechanism decouples the two sites, allowing the production site to maintain high availability while the backup site processes at its own pace.
4Reliability
If conventional backup systems are used to protect data, then data protection is provided, but system shutdown is required during backup operations
Solution Approach 1:
The system implements continuous data protection by continuously writing transaction metadata to the journal without interrupting production operations. The journaling process runs concurrently with data transactions, maintaining both data protection and system availability simultaneously through continuous operation.
Data Source
AI summary
In one aspect, a method to recover data includes annotating metadata entries in a journal to indicate changes by an application to an object stored in a continuous data protection environment. Each entry of the metadata corresponds to one of a unique group of DO stream data blocks or a unique group of UNDO stream data blocks. The method also includes determining a version of the object that meets criteria by searching the annotated entries and obtaining the version of the object that meets the criteria.In another aspect, a method to recover data includes receiving criteria to recover an object, determining a version of the object that meets the criteria by searching point-in-time images using a DO stream and an UNDO stream and obtaining the version of the object that meets the criteria.


