Snapshot Pair Creation in Active-Active Storage Replication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In synchronous replication configurations, creating identical point-in-time snapshots across active-active storage systems is challenging due to the need to suspend host IO operations and drain in-flight IOs, leading to increased IO latency and difficulties in detecting and correcting inconsistencies.

Innovation Solution

The technique involves creating corresponding snapshots on each storage system without suspending host IO operations or draining in-flight IOs, using asynchronous replication to transfer differential data and synchronize snapshots, allowing for efficient detection and correction of inconsistencies without performance impact.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional snapshot creation is used to ensure data consistency, then data consistency is improved, but IO latency increases significantly

Engineering Contradiction:
Improvedata consistencyVSAvoidIO latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by creating snapshots before actual consistency checking is needed. Snapshots are created continuously in the background, so when consistency issues arise, the snapshots are already available for immediate use, eliminating the need to suspend IO operations at the moment of consistency detection.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables continuous snapshot creation without interrupting host IO operations. By decoupling snapshot creation from IO suspension, the system maintains continuous useful action (IO processing) while simultaneously creating snapshots in the background, thus eliminating the trade-off between consistency and latency.

Inventive Principle:
Principle #20Continuity of useful action

2Measurement precision

If host IO operations are suspended to create snapshots, then snapshot accuracy is improved, but storage system performance deteriorates

Engineering Contradiction:
Improvesnapshot accuracyVSAvoidstorage system performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system segments the snapshot creation process from the IO processing process. Instead of suspending all IO operations to create a snapshot, the system uses segmentation to allow IO operations to continue while capturing a consistent view of data through coordinated snapshot mechanisms, thus maintaining both accuracy and performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary mechanisms (such as coordination between storage systems and hosts, or intermediate data structures) that enable snapshot creation without direct suspension of IO operations. These intermediaries facilitate the transfer of consistency information while IO operations continue processing data.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If in-flight IO operations are drained to create consistent snapshots, then data consistency is improved, but processing time increases

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary snapshot creation before consistency issues manifest. By continuously maintaining snapshots in the background, the system has ready-to-use consistent data views without needing to drain in-flight IO operations at the moment of consistency checking, thus reducing processing time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where storage systems continuously monitor replication status and snapshot availability. This feedback allows the system to detect inconsistencies and use pre-created snapshots for immediate correction, eliminating the need to wait for IO drain completion.

Inventive Principle:
Principle #23Feedback

4Reliability

If synchronous replication is used to maintain data consistency, then data consistency is improved, but system complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system uses copying mechanisms to create snapshots that replicate data states without requiring complex synchronous coordination. By copying data to snapshot structures independently on each storage system, the system achieves consistency without the complexity of full synchronous replication protocols.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent changes operational parameters by transitioning from strict synchronous replication to asynchronous snapshot creation with coordination. This parameter change allows the system to maintain consistency through snapshot synchronization rather than continuous synchronous data mirroring, reducing system complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11144232B2Storage system with efficient snapshot pair creation during synchronous replication of logical storage volumes
Publication Date: 2021.10.12 EMC IP HLDG CO LLC
  • US11144232B2 patent drawing
  • US11144232B2 patent drawing
  • US11144232B2 patent drawing

AI summary

An apparatus includes at least one processing device, with the at least one processing device being configured, in conjunction with synchronous replication of at least one logical storage volume between first and second storage systems arranged in an active-active configuration, to create a first snapshot of the logical storage volume in the first storage system, to create a second snapshot of the logical storage volume in the second storage system, to create a third snapshot of the logical storage volume in the first storage system, to initiate an asynchronous replication cycle to transfer differential data between the first and the third snapshots in the first storage system to the second storage system, and to utilize the second snapshot and the transferred differential data to create an additional snapshot of the logical storage volume in the second storage system that is synchronized with the third snapshot in the first storage system.