Google Maps has about a billion daily active users, covers 99% of the world, and takes in something like 25 million updates a day.
We’re going to build a simplified version. Three features:
- Location updates — the client reporting where you are
- Navigation — a route from A to B, with an ETA
- Map rendering — the actual map on your screen
Each one turns out to be a different kind of problem. Rendering is a storage and CDN economics problem. Navigation is a graph algorithms problem, and the graph is far too large to hold in memory. Location updates are a write throughput problem — a million per second at peak.
Continue reading »








