5 ms·
> In 2021, during the 66-hour Amazon Prime Day shopping event, Amazon systems - including Alexa, the Amazon.com sites, and Amazon fulfill- ment centers, made t
by shepherdjerred 4y ago
> In 2021, during the
66-hour Amazon Prime Day shopping event, Amazon systems
- including Alexa, the Amazon.com sites, and Amazon fulfill-
ment centers, made trillions of API calls to DynamoDB, peak-
ing at 89.2 million requests per second, while experiencing
high availability with single-digit millisecond performance
The scale that DDB operates at is mind-boggling. Where would someone even start when designing a system that can handle nearly 100 million requests per second?
- ZephyrBlu 4y agoDefinitely insane scale, but I wonder how much of that is horizontal scaling.
- yazaddaruvala 4y agoAlmost all of it. “During Prime day” implies this is all read dominated traffic. The RCUs are all going to be provisioned so there are appropriate replicas pre-created in the correct regions. Disclaimer: Used to work at Amazon.
- jjtheblunt 4y agoa multicore machine? perhaps realized across physical cpus and os instances, or tons of memory with a high core count cpu?
- Gh0stRAT 4y agoYeah, it totally blew my mind when I first heard these performance numbers as well. RE "nearly 100 million requests per second": as of Prime Day 2022, it has actually handled >100 Mreq/sec! >Over the course of Prime Day, these sources made trillions of calls to the DynamoDB API. DynamoDB maintained high availability while delivering single-digit millisecond responses and peaking at 105.2 million requests per second. [0] [0] https://aws.amazon.com/blogs/aws/amazon-prime-day-2022-aws-for-the-win/ https://aws.amazon.com/blogs/aws/amazon-prime-day-2022-aws-f...
- potamic 4y agoYou can easily hit 100k rps on a typical NOSQL cluster. Scaling it to 100 million is just a matter of running a few thousand instances. Of course, operating a system with thousands of nodes is an engineering feat, but from a design perspective it's not super complicated.
- otterley 4y ago“Just a matter of...” Anyone who trivializes the complexity of actually operating such a system should be forced to build and operate it themselves, and be held to account if it fails.
- arinlen 4y ago> Scaling it to 100 million is just a matter of running a few thousand instances. Please post the link to any GitLab/GitHub you own where you showcase running "a few thousand instances" of anything at all.
- explaingarlic 4y ago> Where would someone even start when designing a system that can handle nearly 100 million requests per second? In the case of DynamoDB, it's just a streak of use-case-appropriate sharding techniques, and a whole lot of scalability elsewhere :P I would imagine a good chunk of the DynamoDB team had to work on the requirements side of engineering, or at the very least it took a lot of research into the matter of how DynamoDB would be used.