Bi-directional Storage Mirroring Deadlock Elimination
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Bi-directionally mirrored data storage systems face performance issues and potential deadlocks due to dependencies between storage servers, leading to increased write latency and system instability.
Innovation Solution
Implementing an early confirmation mechanism and replication queue to allow storage servers to send acknowledgments before data is written to the destination volume, decoupling dependencies and maintaining data consistency across consistency points.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the source storage server waits for the destination storage server to make the PPI available to clients before processing subsequent requests, then data consistency is maintained, but write latency increases and performance deteriorates
Solution Approach 1:
The system performs preliminary actions by having the destination storage server copy PPI metadata to its volume and make it available to clients before the source storage server completes its consistency point. This allows the source server to proceed with subsequent writes without waiting, maintaining data consistency through the replication queue mechanism while improving write performance.
2Reliability
If storage servers in a bi-directional mirroring configuration wait for each other to complete consistency points, then data consistency is ensured, but deadlocks occur and system stability deteriorates
Solution Approach 1:
The replication queue acts as an intermediary mechanism that decouples the dependency between source and destination storage servers. By using the replication queue to track and manage PPI metadata replication independently, each server can complete its consistency point without waiting for the other, eliminating deadlocks while maintaining data consistency through the queue's coordination.
3Loss of time
If the destination storage server copies and makes PPI metadata available before sending confirmation to the source server, then write latency is reduced, but the complexity of the replication mechanism increases
Solution Approach 1:
The destination storage server performs preliminary actions by copying PPI metadata to its volume and making it available to clients before sending confirmation to the source server. This reduces write latency by allowing the source server to proceed without waiting. The replication queue manages this asynchronous process, handling the increased complexity through structured tracking and coordination of metadata replication states.
Data Source
AI summary
An apparatus and a method to eliminate deadlock in a bi-directionally mirrored data storage system are presented. In some embodiments, a first and a second storage servers have established a mirroring relationship. To prevent deadlock between the storage servers and to reduce write latency, the second storage server may hold data received from the first storage server in a replication queue and send an early confirmation to the first storage server before writing the data to a destination volume if the first storage server is held up due to a lack of confirmation. In another embodiment, when the first storage server writes metadata of a persistent point-in-time image (PPI) to the second storage server, the second storage server may send a confirmation to the first storage server after copying the metadata, but before exporting the PPI at the second storage server.


