5 ms·
So excited to see this; this is the culmination of three months of very hard work by both teams. FaunaDB 2.5 passed the core linearizability tests for multi-pa
by evanweaver 8y ago
So excited to see this; this is the culmination of three months of very hard work by both teams.
FaunaDB 2.5 passed the core linearizability tests for multi-partition transactions immediately. To my knowledge no other distributed system has done this. Zookeeper was the strongest candidate on initial testing in the early days, but it does not offer multiple partitions at all, as discussed in the FaunaDB report. And Jepsen itself was much less comprehensive at the time.
All other issues affecting correctness were fixed in the course of the analysis, and FaunaDB 2.6 is now available with the improvements.
We're happy to answer questions along with @aphyr. Our blog post is here: https://fauna.com/blog/faunadbs-official-jepsen-results https://fauna.com/blog/faunadbs-official-jepsen-results
- judofyr 8y agoCongratulations; this looks like some seriously nice results! I haven't used FaunaDB, but it's nice seeing your name around. I still remember your personal blog (blue/grey color; with flowers, right?) fondly from way back, and I believe also "Fauna" existed back then, but it was more an umbrella project for your open source work? Anyway, FaunaDB looks like a well-engineered product in a highly competitive space and I hope you will succeed :)
- lobo_tuerto 8y agoWhat programming language did you use to develop FaunaDB?
- northstar702 8y agoScala/Java
- AtlasBarfed 8y agoI greatly appreciate any distributed system that subjects itself to jepsen. It shows real commitment to honesty and a genuine desire to improve a db tech. One thing that seems to fall by the wayside frequently is a followup. Often the problems found are declared solved after a couple point releases in a blog. Elasticsearch did this to my disappointment, and so did Cassandra. Reading your stuff, it appears you scale with complete replicas of a database on individual nodes. Is that still true?
- freels 8y agoNo, in FaunaDB, a replica is a group of nodes, within which each node only stores a part of the dataset. One thing that's different from other systems is we make replicas a first-class operational unit to think about. The cluster topology which was tested was a 3 replica cluster with 3 nodes each. Each node contained 1/3 of the dataset.
- evanweaver 8y ago> One thing that seems to fall by the wayside frequently is a followup. Yeah, I agree. We worked very hard to fix all major issues during the evaluation period so that Kyle could test the fixes himself, and we are a planning a formal followup on the remaining items and some planned improvements as well, once we are ready.
- rubyn00bie 8y agoHow does Fauna compare to FoundationDB?
- ryanworl 8y agoFoundationDB assumes your clients are located close by in latency terms. It is not a geographically distributed database. You need to contact a machine to get a timestamp before you can read. You can build a layer with non-interactive transactions that are sent over the network from anywhere in the world, which may provide acceptable latency for some applications, but the data is only located in one region. One could build a Calvin-style system on top of FDB to provide durability, cluster membership, and fault tolerance for data at a single site.