5 ms·
pg_paxos should be seen as a building block for other systems/applications (like this example of a distributed execution queue). As such, and as highlighted in
by ahachete 11y ago
pg_paxos should be seen as a building block for other systems/applications (like this example of a distributed execution queue). As such, and as highlighted in the post, it provides several features not present in other distributed systems, such as those based on asynchronous replication (which are, indeed, most of them):
- Conflict-free. No need to apply conflict resolution.
- Synchronous. No eventual consistency. This is strong consistency (with C in the CAP meaning).
- Master-less. No need to elect a master. All nodes are treated equal.
Paxos introduces higher latency and lower throughput, so it is best used for low bandwith applications, like metadata management. But many applications may benefit from the very strong guarantees that Paxos in general and pg_paxos in particular, provide.