Journal-Based Replication Group Membership Modification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems face challenges in maintaining data consistency and group membership consistency during replication operations across geographically remote sites, particularly in scenarios where site-wide issues occur, and require methods to modify replication group membership without disrupting ongoing synchronization processes.
Innovation Solution
The implementation of journaling operations that allow for the addition and removal of virtual volumes from replication groups while maintaining data and group membership consistency, enabling synchronization operations to proceed atomically and without requiring functional links between sites, ensuring that both data and membership are updated consistently to a point in time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If replication group membership is modified during ongoing synchronization operations, then adaptability is improved, but data consistency may be compromised
Solution Approach 1:
The patent applies preliminary action by using journaling to record membership changes before they take effect. Journal entries are created and stored in advance, allowing the system to prepare for membership modifications without immediately executing them during active synchronization operations. This ensures that data consistency is maintained while still enabling future membership changes.
Solution Approach 2:
The journal acts as an intermediary mechanism between membership modification requests and actual replication group changes. By introducing the journal as an intermediate layer, the system can process membership changes independently from active synchronization operations, resolving the contradiction between adaptability and data consistency.
2Adaptability or versatility
If journaling operations are used to modify replication group membership, then adaptability is improved, but device complexity increases
Solution Approach 1:
The journaling mechanism serves multiple functions: it records membership changes, maintains consistency during failover, enables asynchronous operations, and provides a buffer for network issues. By making the journal universal for these purposes, the patent avoids adding separate complex systems for each function, thus improving adaptability without proportionally increasing device complexity.
3Reliability
If synchronization operations require functional links between sites, then data consistency is maintained, but productivity decreases during link failures
Solution Approach 1:
The journal records membership changes and synchronization state in advance, allowing the system to maintain consistency information even when network links fail. This preliminary recording enables the system to continue operating independently at each site while maintaining the ability to synchronize when links are restored, thus preserving productivity during link outages.
Solution Approach 2:
The journal acts as an intermediary that decouples the synchronization process from real-time network connectivity. By storing state information locally in the journal, each site can maintain operational independence during link failures while still ensuring data consistency through the journal's recorded state, thus maintaining productivity without sacrificing reliability.
4Adaptability or versatility
If replication group membership changes are processed immediately, then adaptability is improved, but loss of time for consistency propagation increases
Solution Approach 1:
The system processes membership changes periodically by batching journal entries and processing them at appropriate synchronization points rather than immediately. This periodic processing allows the system to maintain responsiveness to membership changes while reducing the time loss for consistency propagation by aligning changes with natural synchronization cycles.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An example method of controlling a storage system that includes a replication group. The method may include adding a virtual volume to the replication group by storing a journal entry for the virtual volume at a source site. The journal entry may include: metadata for hooking the virtual volume to a corresponding replica volume; and data indicating a status of the virtual volume. The method may further include sending a message to a replica site instructing it to create the corresponding replica volume for the virtual volume and store a replica journal entry for the replica volume. The method may also include determining whether to set the status of the virtual volume to pending admittance or newly admitted based on whether the replica site was able to successfully create the replica volume and store the replica journal entry. The pending admittance status may indicate that the virtual volume is not to be included in a next synchronize operation and the newly admitted status may indicate that the virtual volume is to be included in the next synchronize operation.