Hacker News new | ask | show | jobs
by infogulch 471 days ago
I wonder how TigerBeetle fits in this mental framework for OLTP replication.
2 comments

We see things more in the light of Heidi Howard’s recent Flexible Quorums and her comments that all these ideas can be mixed and matched.

Further, our reasons for not picking Raft are different, and have more to do with “what makes Raft Raft”, namely the concessions around view change and replacing message passing with RPC.

We’ve spoken a bit on this if you’d like to dive deeper:

https://m.youtube.com/watch?v=tRgvaqpQPwE

TigerBeetle uses VSR, which is basically a variant of MultiPaxos/Raft.
Nit! It’s a bit more historically accurate to say that MultiPaxos/Raft are later variants of VSR since Brian Oki’s VSR predated Paxos by a year (‘88 vs ‘89) and Liskov and Cowling’s revision of Brian’s work in 2012 predated Raft by two years (the papers are remarkably similar, but Raft makes concessions for the sake of presentation).
I know it was published first, we’ve talked about this before :)

But, I’m not sure what was published first decide what’s a variant of what. I would say that, given the breadth of research into variants of Paxos and the ways it can be modified, it is most meaningful today to say they’re all variants of Paxos.

VSR having had little to no research or industry application until recently has a pretty weak claim. It does not appear to have influenced either Paxos or Raft. Raft was influenced by Paxos, and even VSR revisited discusses it in relation to these protocols.

In fact, the Raft paper cites that it was most influenced by VSR:

“Raft is similar in many ways to existing consensus algorithms (most notably, Oki and Liskov’s Viewstamped Replication [29, 22])”

Happy to keep having this conversation, if only to shine a spotlight and pay tribute to some of the (lesser known but nevertheless) pioneers of our field. :)

I don’t interpret those words that way. I see that as a recognition of the VSR paper, as had been recently highlighted in VSR revisited at the time of publication. I guess you would have to ask the author if VSR had actually influenced his work, it’s certainly possible, but not the inference I would make from that snippet.

The paper references Paxos something like 100 times, versus 3 for VSR. It defines itself as a more understandable alternative to Paxos, so it was certainly influenced both by the existence and relevance of Paxos, and also in opposition to its apparent difficulty.

A good example to illustrate this perhaps is Babbage. He invented the computer first, but nobody using computers today was influenced by him, impressive though his achievements were! Nor would we say that computers are a kind of Babbage “analytical engine”. We say they are a kind of computer.
Ha, as it happens there's documentary evidence online from Diego himself, that he was not influenced by VSR.

https://groups.google.com/g/raft-dev/c/cBNLTZT2q8o