3 ms·
The problem is S3 is just a lexicographically ordered key value store with (what I suspect is) key-range partitions[1] for the key part and Reed-Solomon encoded
by supriyo-biswas 4y ago
The problem is S3 is just a lexicographically ordered key value store with (what I suspect is) key-range partitions[1] for the key part and Reed-Solomon encoded blobs for the value part. In other words, it’s a glorified NoSQL database with no semantics that you’d typically expect of a file system, and therefore repeated writes are slow because any modification to an object involves writing a new version of the key along with its new object.
[1] https://martinfowler.com/articles/patterns-of-distributed-systems/key-range-partitions.html https://martinfowler.com/articles/patterns-of-distributed-sy...
- biorach 4y agoThese aren't really problems tho, just features. These features may or may not be a problem for your application depending on your specific requirements. It's clear that for many many applications S3 works just fine. If you require file system semantics or interfaces (i.e. POSIX) or you update objects a lot or require non-sequential updates or.... then maybe it's not for you.