Global Multi-Cloud Replication in FaunaDB Serverless Cloud
fauna.com
fauna.com
This means that as we grow, your apps will get faster and be able to run closer to your users.
How does an application know which region to talk to? Especially once you can select a subset of regions to be in. Some might not have the data you are looking for.
You don't have to set any priorities, and partition events don't change commit latency for the cluster majority.
Currently FaunaDB drivers use geo DNS in route53 to automatically find the closest region, although you can pin to specific regions if you know the cname. If that region doesn't own the data for the logical database in question, FaunaDB forwards the request internally.
In the future, drivers will maintain their own ϕ accrual failure detectors and make faster and smarter routing decisions than DNS can provide.
We use a single-phase model inspired by Calvin, rather than Spanner's two-phase model. The tradeoff is that interactive transactions (like in SQL) are not supported, but overall latency and throughput are much better.
You have to reason about every possible consistency configuration including transactions and indexes, but you don't actually get much control over what is indexed. And sort of like DynamoDB it doesn't really support general-purpose transactions, they have to be within a shard.
I think maybe the Mongo adapter is pretty nice though.
Cassandra or Datastax? Cassandra has been doing this for years.
Or did they mean the only hosted option?
Edit: Made me sound less rude.
I don't really like those either.
Just something that says "you don't have to set this up for yourself like Cassandra or Riak."
Although that reminds me that you can get a turnkey Riak setup, so your claim is still a bit dubious.
I now get what you're trying to say though. That you guys host a multi-master database, and with all your competitors, you have to run infrastructure. I'm not quite sure how to express that succinctly.
A lot of the benefit comes from not having to manage capacity up and down in the first place, though. Even if other systems let you do it quickly you still have to either predict or react to your load "by hand".
- CockroachDB starts with an image explaining how their query engine handles requests.
- FaunaDB starts with saying they are the only multi-master cloud database.
- CockroachDB then spends the next 3K words to explain how and why.
- FaunaDB claims that others are just cross "continental" systems, and that they are the only "global" ones, with no reasoning to justify the claims.
Yes, FaunaDB being a proprietary hosted service is certainly targeting a different audience than CockroachDB which is Open Source facing. But it damages your brand to make untrue claims:
- Cassandra is a multi-master database you can run across globally distributed clouds.
- Heck, even my own system, https://github.com/amark/gun , is a multi-master database that you can (and I have) run across globally distributed clouds.
- CosmosDB has a tunable option for this now, I believe.
I also don't recall their vocabulary being "multi-master" before either, because that doesn't match with the claims of being "Globally Consistent" in the CAP Theorem sense. Unless they just mean it is sharded? But that is different.
I'm sure my comment will just be ignored, but I ask you for your own sake (and database vendors in general) to not make marketing claims like this. Database vendors are notorious for doing this, and it caused a big falling out with developers because of it. Finally, I felt like between RethinkDB, me, and others, that we were starting to make amends again, being open with the industry/community. I'm not trying to be harsh just to be harsh, I genuinely mean this: If you make a claim, please back it up - you guys are smart and hard working, so please just go the extra step to provide the evidence.