4 ms·
"NOPaxos" might me a catchy name but is probably not good in the long term as it might make people think it's NOT paxos. Maybe "NeOPaxos" is better? Also If my
by hardwaresofton 10y ago
"NOPaxos" might me a catchy name but is probably not good in the long term as it might make people think it's NOT paxos. Maybe "NeOPaxos" is better?
Also If my understanding is anywhere near correct, it's a mix of Paxos and a bit of a proxying sequencer (which may be implemented in a physical switch) and all replicas & master need to be on the same switch/subnet...
Going to read the paper now -- anyone have a better understanding of the tech they could share? Excited but still a bit skeptical
- meta_AU 10y agoUse a single node to provide all-or-nothing and ordering, then simplify Paxos based on those assumptions.
- hardwaresofton 10y agoThanks -- After reading the paper I think I have a better understanding, and it is pretty exciting, this does seem to be a pretty good throughput improvement, especially if things are mostly happy-path. The paper seemed to be missing an exploration of worst-case scenarios and equivalencies though, but I guess I guess worst case is paxos speed (consistently failing sequencer, or a leading replica that receives one messages then is unreachable, bad quorums, etc)
- lepacheco 10y agoYep, I also think it's kind of a misleading name. It's still Consensus but with stronger assumptions on the network (kind of, it depends on an external master for correctness, which could itself use something like classic Paxos). Simplifying it a bit, they use a single sequencer that every packet must go through to get "ordered". As the authors suggest, that could be implemented in a programmable switch. Given that abstraction, they can simplify the consensus protocol itself.
- qznc 10y ago"NoPaxos" is not "Not Paxos" like "NoSQL" is "Not SQL" ;) If you use a NoSQL database, the relations do not disappear. You just have to implement your joins in a higher layer. NoPaxos pushes some parts of Paxos into lower levels, namely the OUM primitive of the network.
- hardwaresofton 10y agoForgive me if I'm wrong, but aren't they still pretty similar (in that they sound like misnomers?) Relations ~= Consensus (traditional full-featured Paxos) To use your sentence If you use NOPaxos, the consensus doesn't disappear. You just have to perform it whenever your sequencer, or replica-leader becomes unreachable/fails. The "OUM primitive" addition isn't much more than two monotonically increasing integers (session and order-number) which depend on a central (bottleneck) sequencer... NoSQL moved the responsibility for relation-management up, NoPaxos is moving the responsibility for consensus down/to the worst case... My point was that neither are fundamentally different from the "X" after the "NO"...
- mamcx 10y agoI dislike NoSql because the connotation that relational databases are "bad/old", and this is better. Because this look like "Say NO to Paxos!". NO is a strong word. SQL as language can have it issues but the relational model is far easier and more flexible than people assume.
- altendo 10y agoI am reminded of the old joke about how there are 2 major problems in computer science: caching, naming things, and off-by-one errors.