3 ms·
The author already acknowledged that there are other ways to do distributed transactions > The traditional solution is to use two-phase commit through a protoc
by kerblang 3y ago
The author already acknowledged that there are other ways to do distributed transactions
> The traditional solution is to use two-phase commit through a protocol like X/Open XA. However, while XA is supported by most big relational databases like Postgres and MySQL, it's not supported by popular newer data stores like MongoDB, Cassandra, or Elasticsearch
- AtlasBarfed 3y agoInaccurate: Cassandra has a distributed transaction based on paxos, and I think a raft version is in the works. I admittedly skimmed the article, but the notion of a central coordinator for the transaction isn't really a scalable solution. In the stated use case, heterogeneous stores, it's kind of what you're stuck with to some degree. But... why not use a purely distributed central store like Cassandra or Zookeeper (I think zoo is masterless?) rather than Postgres? IMO this doesn't have a chance of standing up to a network partition like Aphyr would throw at it, but then again I didn't graduate from Stanford.
- rubiquity 3y agoThe author is specifically talking about XA.