3 ms·
From linked article: > If the disk replication status is catching up or degraded, then one of the zonal replicas is not updated with all the data. Any outage d
by kobalsky 2y ago
From linked article:
> If the disk replication status is catching up or degraded, then one of the zonal replicas is not updated with all the data. Any outage during this time in the zone of the healthy replica results in an unavailability of the disk until the healthy replica zone is restored.
There isn't a binary log that the replicas can catch up to, if the healthy disk goes down you are out of luck.
MySQL's semi-synchronous replication is "more synchronous" than this. If it's enabled it won't acknoledge a transaction until a replica has the transaction saved in it's binary log. Then the replica could be out of sync but if the master exploded, the slave would eventually catch up to the master using its own binary log.
I'm either misunderstanding Google's service here, because the name doesn't seem right.
- nyrikki 2y agoMySQL semisynchronous is similar to a Cassandra consistency level of 1. That is typically a lens that helps. As block devices aren't ACID, their challenges are greater. But note the following from the MySQL docs, similar problems exist when you have to fail over with uncommitted transactions. > With semisynchronous replication, if the source crashes and a failover to a replica is carried out, the failed source should not be reused as the replication source, and should be discarded. It could have transactions that were not acknowledged by any replica, which were therefore not committed before the failover.