Hacker News new | ask | show | jobs
by onionjake 1907 days ago
Yes. We are strongly consistent.
1 comments

S3 only became strongly consistent recently. It is a major feat to do so.

I can imagine doing it without controlling the storage layer, network topology and specially network latency is only harder.

Could you please elaborate a bit more on how do you achieve it?

S3 has been around for a long time and they had a lot of objects to transition when they upgraded, so I imagine that is why it took awhile.

There are other object storage systems that have strong consistency guarantees that came out after S3.

It greatly simplifies things that an object written to S3 it is immutable.

On a high level, all writes to your storage use some UUID. All reads use a consistent metadata storage (pick a modern database). After your write is complete and you are sure it is persisted, do the metadata update and return success. Everyone gets a consistent view of the operation.