Active/Active Storage Data Coherence via Write Order Tracking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In active/active storage systems, maintaining data coherence and integrity across geographically remote sites is challenging, especially during asynchronous data transfers, where failures can lead to synchronization issues and resource limitations, impacting system recovery and availability.
Innovation Solution
A method for transferring a virtual machine between sites, suspending and resuming its operation, and maintaining it on a secondary site in case of link failure, using software that determines the destination site based on resource availability and initiates data transfer to ensure write order fidelity and coherence, transitioning the system from active/active to active/passive mode.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If asynchronous data transfer is used for geographically remote sites, then data transfer time is reduced, but data coherence and write order fidelity become difficult to maintain
Solution Approach 1:
The system performs preliminary actions by establishing write order fidelity tracking and data coherence mechanisms before asynchronous transfers occur. The source director tracks write orders and prepares coherence information in advance, enabling the destination director to reconstruct proper write sequences despite asynchronous timing.
Solution Approach 2:
The system implements feedback mechanisms where the destination director sends acknowledgments and coherence status back to the source director. This feedback loop enables the source director to track which writes have been successfully replicated and maintain write order fidelity across the asynchronous connection.
2Speed
If data is cached at directors to improve access speed, then data availability is improved, but maintaining coherence across multiple directors becomes more complex
Solution Approach 1:
The source director acts as an intermediary that coordinates cache coherence across multiple directors. It tracks write orders and manages the propagation of coherence information to other directors, simplifying the complexity that would otherwise exist in a fully distributed coherence management system.
Solution Approach 2:
The system uses copying mechanisms where the destination director creates local copies of data from the source director. These copies are managed with coherence protocols that allow local access while maintaining consistency with the source, enabling fast local access without sacrificing coherence.
3Reliability
If active/active storage access is provided to multiple hosts, then system availability is improved, but failure scenarios adversely impact synchronization and recovery
Solution Approach 1:
The system prepares for failures in advance by implementing data coherence tracking and write order fidelity mechanisms before failures occur. These pre-established mechanisms cushion the impact of failures by enabling proper synchronization recovery without requiring complex post-failure analysis.
Solution Approach 2:
The system replaces mechanical synchronization methods with software-based coherence management. Instead of relying on hardware-level locking or complex mechanical failover mechanisms, the system uses software tracking of write orders and coherence states to manage synchronization and recovery after failures.
Data Source
AI summary
A system for responding to a failure in an active/active system is provided. It may be determined that a failure has occurred in connection with a first site and a second site. A winning site and a losing site may be determined from among the first site and the second site. It may be determined whether to perform at least one of: a push operation, a pull operation or both to obtain or identify data from the losing site in order to maintain I/O operations on the data at the winning site. A message may be sent to the losing site concerning the data. The message may depend on whether to perform the push operation, the pull operation or both. A response to the message may be received.


