Server-Based Disaster Recovery via Dual Write Responses
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Asynchronous replication in disaster recovery scenarios often results in data loss due to the lack of guaranteed recent data availability, with solutions like increasing data copy frequency or switching to synchronous replication being costly or inefficient.
Innovation Solution
Implementing a method that uses dual write responses, where a write command is logged on the server and confirmed by both primary and secondary storage sites, allowing for the replay of unreplicated data in case of primary site failure, thereby achieving zero Recovery Point Objective (RPO) without the costs of synchronous replication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of energy
If asynchronous replication is used, then bandwidth consumption is reduced and cost is lowered, but data loss occurs during failover
Solution Approach 1:
The patent applies preliminary action by maintaining a write log on the server that records all write operations before they are replicated to secondary storage. This log serves as a buffer that captures data in advance, allowing the system to replay unreplicated writes during failover, thereby preventing data loss while using asynchronous replication and low bandwidth.
2Reliability
If synchronous replication is used, then data availability is guaranteed, but server latency increases due to waiting for acknowledgments
Solution Approach 1:
The patent segments the replication acknowledgment process into two independent parts: (1) acknowledgment from primary storage that the write was received, and (2) separate tracking of replication status to secondary storage. The server can continue processing after receiving primary storage acknowledgment, eliminating the need to wait for secondary storage confirmation and thus reducing latency while maintaining data availability through the write log.
3Reliability
If data copy frequency is increased, then Recovery Point Objective is reduced, but primary storage busy time increases
Solution Approach 1:
The patent applies self-service by implementing server-based replication tracking where the server itself monitors and manages the replication status of its own write operations. The server maintains a write log and tracks which writes have been replicated, allowing it to independently manage failover without requiring frequent polling or coordination with storage systems, thus improving primary storage throughput while maintaining low RPO.
4Reliability
If full mirroring is implemented on two enclosures, then high availability is achieved, but space efficiency decreases significantly
Solution Approach 1:
The patent extracts the replication tracking function from the storage enclosure and places it on the server itself. Instead of maintaining full copies of data on two enclosures, the system extracts only the essential write metadata and maintains a compact write log on the server, while secondary storage holds the actual replicated data. This dramatically improves space efficiency while maintaining high availability through the ability to replay unreplicated writes.
Data Source
AI summary
A mechanism is provided in a data processing system for asynchronous replication. The mechanism creates a record in a write log in a host computing device for a write command and marking the record as uncommitted. The mechanism maintains a copy of data to be written by the write command at the host computing device. The mechanism issues the write command from the host computing device to a primary storage controller at the primary storage site. Responsive to receiving an acknowledgement from the primary storage controller that the data have been written to the primary storage site, the mechanism marks the record as unreplicated. Responsive to receiving an acknowledgement from the primary storage controller that the data have been replicated to a secondary storage site, the mechanism erases the record in the write log and deleting the copy of data.


