News for hackers. Stuff that matters.
Re:Global Multi-Cloud Replication in FaunaDB Serverless Cloud by jchanimal on Thursday June 08, 2017 @02:26PM (#14516046)
My favorite part is that expanding the cluster does "not affect the latency profile of existing applications: writes to FaunaDB only need to commit to the closest majority of datacenters to maintain consistency. Currently all data in FaunaDB Serverless Cloud is replicated to every region, guaranteeing low latency reads."

This means that as we grow, your apps will get faster and be able to run closer to your users.

Re:Global Multi-Cloud Replication in FaunaDB Serverless Cloud by zenithm on Thursday June 08, 2017 @02:41PM (#14516160)
CosmosDB lets you set region failover priority if something goes wrong, does Fauna have a similar model?

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.

Re:Global Multi-Cloud Replication in FaunaDB Serverless Cloud by evanweaver on Thursday June 08, 2017 @02:59PM (#14516288)
Since FaunaDB is multi-master (or masterless, if you prefer), there is no failover step per se. Any region in the cluster can receive writes if it is part of the majority partition, and any region can serve consistent reads even if it's temporarily in a minority partition.

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.

Re:Global Multi-Cloud Replication in FaunaDB Serverless Cloud by redwood on Thursday June 08, 2017 @06:56PM (#14517823)
How do you handle write conflicts?
Re:Global Multi-Cloud Replication in FaunaDB Serverless Cloud by evanweaver on Thursday June 08, 2017 @07:30PM (#14518013)
Transactions are strictly serialized; the paper explains how this works the best: https://fauna.com/pdf/FaunaDB-Technical-Whitepaper.pdf

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.

Re:Global Multi-Cloud Replication in FaunaDB Serverless Cloud by redwood on Thursday June 08, 2017 @06:56PM (#14517816)
Do you use Cosmos? How is it?
Re:Global Multi-Cloud Replication in FaunaDB Serverless Cloud by zenithm on Thursday June 08, 2017 @07:44PM (#14518088)
I used DocumentDB a while ago but I haven't used the new version. It was a little strange.

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.