Upstream Volume Controller Snapshot Freeze Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing methods for creating snapshots of upstream and downstream volumes in replication sets result in these volumes being frozen during snapshot creation, leading to increased latency due to prolonged IO disruption.
Innovation Solution
The solution involves unfreezing the upstream volume immediately after sending a snapshot permit or abort message, and using last snapshot IDs to selectively manage IOs, thereby minimizing the time the volumes are frozen and maintaining data consistency between the upstream and downstream volumes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If volumes are frozen during snapshot creation to ensure data consistency, then data consistency is improved, but IO latency increases due to prolonged IO disruption
Solution Approach 1:
The system performs preliminary actions by sending permit or abort messages to the downstream volume processor before actually freezing the volumes. This allows the downstream volume to be prepared in advance with the appropriate snapshot state, enabling the upstream volume to be unfrozen sooner after the freeze operation completes, thereby reducing the duration of IO disruption while maintaining data consistency.
Solution Approach 2:
The system dynamically adjusts the freeze duration by using timeout mechanisms that can be configured based on operational needs. The freeze state is not fixed but can be terminated early if the downstream volume processor receives permit or abort messages, allowing the system to adapt the freeze duration to minimize IO latency while ensuring data consistency is maintained throughout the snapshot creation process.
2Reliability
If volumes remain frozen during snapshot creation to complete replication, then data consistency is improved, but productivity decreases due to extended IO disruption
Solution Approach 1:
The system implements feedback mechanisms where the upstream volume processor sends permit or abort messages to the downstream volume processor based on the snapshot creation status. This feedback loop allows the downstream volume to be unfrozen as soon as the snapshot is successfully created or aborted, minimizing the time IO operations are blocked and thereby reducing the impact on productivity while maintaining data consistency.
Solution Approach 2:
The system changes the temporal parameter of the freeze state by introducing timeout configurations that can be adjusted based on operational requirements. By making the freeze duration configurable and potentially reducible through early termination on permit/abort messages, the system can optimize the balance between ensuring data consistency and maintaining high IO throughput during normal operations.
3Reliability
If snapshot creation is performed to create point-in-time copies, then data consistency is improved, but device complexity increases due to additional synchronization protocols
Solution Approach 1:
The system extracts the complex synchronization logic into separate, manageable components by implementing distinct permit and abort message handling paths. This separation allows the upstream and downstream volume processors to operate semi-independently, with the synchronization protocol reduced to simple message passing events rather than complex continuous coordination, thereby reducing perceived system complexity while maintaining data consistency.
Solution Approach 2:
The permit and abort messages act as intermediaries that simplify the synchronization protocol between upstream and downstream volume processors. Instead of requiring complex real-time coordination, the system uses these discrete intermediary messages to convey snapshot status information, reducing the complexity of the synchronization mechanism while ensuring data consistency is maintained throughout the snapshot creation process.
Data Source
AI summary
According to examples, a system may include an upstream volume controller having: a processor and a non-transitory machine-readable storage medium. The storage medium may include instructions executable by the processor to freeze an upstream volume, the upstream volume being in a replication set with a downstream volume, receive a snapshot creation request, create a snapshot of the upstream volume, and send one of a snapshot permit message or a snapshot abort message to a downstream volume processor. The instructions may also be executable by the processor to unfreeze the upstream volume responsive to at least one of the sending of the one of the snapshot permit message or the snapshot abort message or expiration of a timeout corresponding to a maximum time period during which the upstream volume is to remain frozen.


