10 ms·
It's not about whether clients wait for acks, but rather whether participants of the consensus (instances of the database servers, basically) wait for consensus
by sdfd4fsd 4y ago
It's not about whether clients wait for acks, but rather whether participants of the consensus (instances of the database servers, basically) wait for consensus prior to commiting.
If the client doesn't wait until the transaction is commited, a a client cannot 'proceed', as the transaction is not observable in any node. Giving this guarantee of consistency requires consensus among the nodes, and consensus introduces coordination, which introduces latency. That's the basic argument for PACELC.
It is also totally possible, but rare in practice, to design a PC/EL system. The cannonical example by Prof. Abadi is PNUTS: https://dbmsmusings.blogspot.com/2010/04/problems-with-cap-and-yahoos-little.html https://dbmsmusings.blogspot.com/2010/04/problems-with-cap-a...