Hacker News new | ask | show | jobs
by evanweaver 1897 days ago
Your own docs say that by default “writes are not guaranteed to be durable even if the client receives a success response”.
1 comments

Upstash has two consistency modes. Eventual consistency and Strong consistency. Please see: https://docs.upstash.com/overall/consistency

In my code, Upstash database was eventually consistent. Similarly the index in the FaunaDB was not serialized.

But both of those should not affect the latency numbers in the histogram because those numbers are all read latency.

That's an apples to oranges comparison though. Upstash couples durability with consistency/isolation. Regardless of configuration, FaunaDB and DynamoDB both always ensure durability of acknowledged writes with a fault tolerance of greater than 1 node failure. To compare them on equal footing, Upstash would need to be configured for strong consistency, at least according to the docs.
DynamoDB also guarantees your write is distributed to multiple data centers as well.
No it doesn't. The write is not durable in other datacenters when the client acknowledgement is returned. It is still possible to lose data.
It does. The three AZs they replicate across are just as good as anything else someone typically calls a "datacenter." Amazon itself operates retail out of one region and uses multi-AZ as a fault tolerance strategy.
It won’t lose data in the event of a data center failure. Each of the replicas is in a different AZ, and at least two of three have to durably write the data before the put succeeds.
An AZ is not a datacenter.