Storage Replication State Transition Without Client I/O Disruption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for transitioning from asynchronous replication to synchronous replication in storage systems cause client disruption and increased latency due to the need to pause or queue client I/O operations, leading to application timeouts and errors.
Innovation Solution
A method using a dirty region log and metadata log to track and replicate modified regions and operations in a specific order, allowing seamless transition to synchronous replication without pausing client I/O, through phases of metadata and data drain.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional resynchronization processes are used to transition from asynchronous to synchronous replication, then data consistency between computing devices is improved, but client I/O operations are disrupted causing increased latency and application errors
Solution Approach 1:
The resynchronization process is segmented into distinct phases: a first phase where metadata operations are replicated to the second computing device, and a second phase where data operations are replicated. This segmentation allows client I/O operations to continue during the metadata phase without disruption, while still achieving data consistency by the end of the data phase.
Solution Approach 2:
Metadata operations are replicated to the second computing device before data operations are replicated. This preliminary action ensures that the metadata layer is synchronized in advance, allowing the system to maintain data consistency guarantees while permitting client I/O operations to proceed uninterrupted during the metadata replication phase.
2Reliability
If client I/O operations are paused during resynchronization to ensure data consistency, then reliability is improved, but productivity and client experience deteriorate due to blocked operations and increased latency
Solution Approach 1:
The resynchronization process is divided into metadata replication and data replication phases. During the metadata phase, client I/O operations continue to execute and are replicated to the second computing device, maintaining productivity. The segmentation allows the system to achieve reliability goals without blocking client operations during the entire resynchronization process.
Solution Approach 2:
Client I/O operations maintain continuity during the metadata replication phase of resynchronization. The system continues to process and replicate client operations to the second computing device without pausing or blocking, ensuring uninterrupted productivity while still achieving data consistency through the structured two-phase approach.
3Reliability
If synchronous replication is implemented to provide greater data protection guarantees, then reliability is improved, but the complexity of maintaining synchronization between computing devices increases
Solution Approach 1:
The synchronous replication process is segmented into metadata operation replication and data operation replication phases. This segmentation simplifies the complexity of maintaining synchronization by breaking down the complex resynchronization process into manageable, ordered steps that can be executed systematically while providing strong data protection guarantees.
Solution Approach 2:
Metadata operations are replicated to the second computing device before data operations are replicated. This preliminary action simplifies synchronization maintenance by ensuring the metadata layer is consistent in advance, reducing the complexity of coordinating data replication while maintaining strong data protection guarantees through the ordered two-phase approach.
Data Source
AI summary
Techniques are provided for transitioning a first storage object and a second storage object from an asynchronous replication state to a synchronous replication state. Metadata operations are logged into a metadata log. Dirty data, modified by data operations executed upon the first storage object, are tracked using a dirty region log. Metadata operations are replicated from the metadata log to the second storage object during a metadata drain phase. During the metadata drain phase, incoming operations are logged into the metadata log when the metadata log has a non-zero size, otherwise, the metadata operations are replicated to the second storage object. After the metadata drain phase, a data drain phase is performed using the dirty region log.


