HiveBrain v1.2.0
Get Started
← Back to all entries
patternMinor

Why do relational databases use 2PC for distributed transactions over the likes of Paxos?

Submitted by: @import:stackexchange-cs··
0
Viewed 0 times
whythedatabaseslikesrelationaldistributedforpaxos2pctransactions

Problem

Paxos is more powerful and in the famous writing "Consensus on Transaction Commit" : http://research.microsoft.com/pubs/64636/tr-2003-96.pdf, Jim Gray and Leslie Lamport describe 2PC as a special case of Paxos.

Why do relational database use 2PC in real world? Also 2PC is not fault tolerant because it uses a single coordinator whose failure can cause the protocol to block.

Solution

One of the reasons is the message complexity. For N nodes, 2PC will require 3N to be exchanged whereas Paxos requires 4N. Also, Paxos adds sequence numbers to each message which adds a significant overhead to the overall execution.

Context

StackExchange Computer Science Q#33719, answer score: 3

Revisions (0)

No revisions yet.