Updates are applied to local and remote copies before
the transaction is complete
Local and remote copies are always in step
Causes application to wait for remote write to complete
Error handling and recovery processes are needed to
cope with link failures
(1) Write (2) Write
(4) ACK (3) ACK
Mirroring can be performed synchronously or asynchronously.
With synchronous replication both the primary and the secondary must
acknowledge before we move on. We are guaranteed to be in step. We will
have exactly the same data.
The downside is that it will result in application latency. This will depend on
the distance and the network architectures. Which is why we say for
synchronous – use optical extension only and up to a maximum of 125km.
It will consume SAN bandwidth because every write has to be done twice
either by the host or by a virtualization layer or by the storage. We write and
we write again.
It can replicate corrupt data; in fact for synchronous replication it will replicate
corrupt data. At that point we are going to have to use this in conjunction with
point in time copies.
Synchronous replication can protect us against hardware and site failure with
no loss of data.