The readme at https://github.com/linkedin/ambry starts with:
> Ambry is a distributed object store that supports storage of trillions of small immutable objects (50K -100K) as well as billions of large objects.
1. What is considered to be the size of a “large object”? 2. Can Ambry handle large object multipart uploads or would one have to build this themselves by storing chunks as separate objects?
I have worked on Ambry for a few years now. This paper is a bit old, but captures most of the core concepts of Ambry.
Some of the most fascinating parts of the journey after this paper have been scaling the system to support hundreds of GiBps of throughput per cluster, multiple workloads supporting other databases and stream processing systems, and rethinking the replication to make it compatible with public cloud. Checkout the GitHub repo to learn more https://github.com/linkedin/ambry
We're using LinkedIn's Ambry ( https://github.com/linkedin/ambry ). Its an easy to use distributed object store. It's basically a self hosted version of Amazon S3.