Alibabas is the hardest because they have to fake all those purchases and then a few months later they have to refund them all.
On Alibaba/Amazon v/s Google, I think it is easier to scale for a few days (worst case: throw hardware at it, have SDEs working overtime, etc) v/s scaling for everyday. So Google's everyday scaling challenge seems harder.
very aptly said.
Having worked at Google and Amazon. Amount of technical infrastructure it takes to run G > amazon. In amazon, architecture is very simple, webservers, database, big cache. Because each transaction is independent so sharding is relatively easy. In G, everyday traffic is so huge that we have 3-4 levels of load balancers just to manage load. If anyone is interested I would suggest to read about GSLB which is datacenter level global load balancer.
I would argue that on the other hand, Amazon has real money transactions , which means it has much higher challenge in terms of HA and consistency. A Google query or Gmail message or YouTube not loading or loading inconsistently is not a big deal, but an Amazon purchase not being added to cart or inventory not updating for all nodes is a much bigger problem
Correct. IMO, it can be solved by using relational database to guarantee consistency. They probably have sharded relational database. Sharding + Replication/Standbys can solve most of scalability issues.
hahahaha... sharded relational databases for amazon scale :P Which database? Oracle? also, how about scaling warehouse traffic? like shipping 400 physical items per second (stats from half a decade past).. it’s super complex pipeline involving space optimization/robotics/scheduling and so on... not just splitting traffic through multi-level loadbalancers to pre-computed indexes. also, how about aws services which serves other aws services plus other large interne companies like Netflix?
Uber