System Replication Mode Combinations
This section describes system replication mode combinations in a multitier system replication scenario.
Tier1 to Tier 2 |
Tier 2 to Tier 3 |
Description |
Use Case |
---|---|---|---|
SYNC |
SYNC |
In this setup tier 1, tier 2, and tier 3 are coupled with SYNC replication mode. Tier 2 sends the acknowledgment to tier 1 after the log buffer has been received and written to disk, and after the log buffer has also been received and written by tier 3. When primary has received the acknowledge, the buffer has been persisted by all the tiers. |
Tier 1 and tier 2 are located in a local data center for fast takeover. Tier 3 is used for disaster recovery in a second close-by data center. |
SYNC |
SYNCMEM |
Tier 2 sends the acknowledge to tier 1 after the log buffer has been received, written to disk and it has been also received by tier 3. When the primary receives acknowledgment, it is not clear that also tier 3 has persisted the buffer to disk, but disk IO on tier 3 has been triggered. |
Tier 1 and tier 2 are located in a local data center for fast takeover. Tier 3 is used for disaster recovery in a second close-by data center. |
SYNC |
ASYNC |
Tier 1 and tier 2 are closely coupled with replication mode SYNC, while tier 3 is decoupled by using ASYNC. Tier 2 acknowledges the arrival of the redo log buffers in-memory and on disk to tier 1, while it only hands over the redo log buffer to the network without awaiting an acknowledgment from tier 3. If the connection to tier 3 is too slow and the ASYNC replication buffer (an intermediate memory buffer) is running full, ASYNC replication to tier 3 can have an impact on the primary. |
Tier 1 and tier 2 are located in a local data center for fast takeover. Tier 3 is used for disaster recovery in a far distant data center. |
SYNCMEM |
SYNC |
In this synchronous setup tier 1 and tier 2 are closely coupled with replication mode SYNCMEM, while tier 3 is closely coupled with SYNC. Tier 2 sends the acknowledgment to tier 1 after the log buffer has been received in memory. IO is triggered asynchronously. The asynchronous IO also triggers the send operation to tier 3. The log write on tier 2 is confirmed, when also tier 3 has written the log buffer. When the primary receives the acknowledge, it is unclear, if tier 3 has already received and persisted the log buffer. |
Tier 1 and tier 2 are located in a local data center for fast takeover. Tier 3 is used for disaster recovery in a second close-by data center. |
SYNCMEM |
SYNCMEM |
In this setup tier 1, tier 2, and tier 3 are coupled with replication mode SYNCMEM. Tier 2 sends the acknowledgment to tier 1 after the log buffer has been received in memory. IO is triggered asynchronously. The asynchronous IO also triggers the send operation to tier 3. The log write on tier 2 is confirmed, when tier 3 has received the log buffer in memory. When the primary receives the acknowledge, it is unclear, if tier 3 has already received and persisted the log buffer. |
Tier 1 and tier 2 are located in a local data center for fast takeover. Tier 3 is used for disaster recovery in a second close-by data center. |
SYNCMEM |
ASYNC |
Tier 1 and tier 2 are closely coupled with replication mode SYNCMEM, while tier-3 is decoupled with ASYNC replication. Tier 2 acknowledges the arrival of the redo log buffers in-memory to tier 1, while it only hands over the redo log buffer to the network without awaiting an acknowledgment from tier 3. If the connection to tier 3 is too slow and the ASYNC replication buffer (an intermediate memory buffer) is running full, ASYNC replication can have an impact on the primary. |
Primary and tier 2 are used in a local data center for fast takeover. Tier 3 is used for disaster recovery in a far distant data center. |
ASYNC |
ASYNC |
With these asynchronous replication modes there is no wait for acknowledgments between tiers (no acknowledge propagation). A replication backlog for tier 2 and tier 3 is possible. Information about the replication status on tier 1 and tier 2 is available in the ASYNC replication buffer (an intermediate memory buffer). This buffer running full could cause a minimal impact on the performance of the primary. |
Tier 1 performance is most important as well as a disaster recovery capability. For best performance of tier 1 decouple tier 2 and tier 3. Data loss on tier 2 and tier 3 is possible to some extent, but performance is more critical. |