Non-disruptive Synchronous Replication via Dirty Region Logging
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data replication and synchronization techniques in storage networks often disrupt client access to data, leading to increased latency and access disruptions during synchronization or resynchronization processes.
Innovation Solution
A method for non-disruptively establishing and resynchronizing a synchronous replication relationship between primary and secondary volumes using techniques such as baseline transfers, incremental transfers, dirty region logging, and splitter objects, which allow for continuous client access during the process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional data replication and synchronization techniques are used, then data redundancy and disaster recovery are achieved, but client access to data is disrupted during synchronization operations
Solution Approach 1:
The system performs preliminary actions by creating snapshots of the primary volume before synchronization begins, and by pre-establishing the replication relationship between primary and secondary volumes. This allows the synchronization process to proceed without disrupting client access, as the foundational structures are prepared in advance.
Solution Approach 2:
The patent introduces an intermediary mechanism using snapshots and a replication relationship that acts as a buffer between the primary and secondary volumes. This intermediary layer allows data to be replicated and synchronized without directly interfering with client access to the primary volume, thus resolving the contradiction between maintaining data redundancy and ensuring continuous client access.
2Manufacturing precision
If synchronous replication relationship is established between primary and secondary volumes, then data consistency is maintained, but client write requests are rejected during cutover phase increasing latency
Solution Approach 1:
The synchronization process is segmented into distinct phases: initial replication phase, incremental synchronization phase, and cutover phase. During the initial and incremental phases, client access continues uninterrupted. The segmentation allows data consistency to be achieved through controlled updates without forcing a complete cutover that would reject client write requests and increase latency.
Solution Approach 2:
The system maintains continuity of useful action by allowing client write requests to continue being processed on the primary volume throughout the replication and synchronization process. Incremental snapshots ensure data consistency is maintained while client access remains continuous, eliminating the need to reject write requests during cutover and thus preventing latency increases.
3Manufacturing precision
If baseline and incremental transfers are performed for resynchronization, then data synchronization is achieved, but the process is disruptive to ongoing client operations
Solution Approach 1:
The system employs periodic action through incremental snapshots taken at regular intervals during the resynchronization process. Instead of performing a single disruptive baseline transfer, the synchronization occurs through multiple periodic incremental transfers, each capturing changes since the previous snapshot. This periodic approach maintains data synchronization accuracy while minimizing disruption to client operations, as each incremental transfer is smaller and can be performed with less impact on productivity.
Data Source
AI summary
One or more techniques and/or computing devices are provided for non-disruptively establishing a synchronous replication relationship between a primary volume and a secondary volume and/or for resynchronizing the primary volume and the secondary volume. For example, a baseline snapshot and one or more incremental snapshots of the primary volume are used to construct and incrementally update the secondary volume with data from the primary volume. A dirty region log is used to track modifications to the primary volume. A splitter object is used to split client write requests to the primary volume and to the secondary volume. A synchronous transfer engine session is initiated to processing incoming client write requests using the dirty region log. A cutover scanner is used to transfer dirty data from the primary volume to the secondary volume. In this way, a synchronous replication relationship is established between the primary volume and the secondary volume.


