Google Maps — Notes
Functional
- Render map at any zoom.
- Place search + geocoding (address ↔ lat/lng).
- Driving/transit/walking route with ETA.
- Live traffic + incidents.
- Turn-by-turn navigation.
- Reviews, photos, Street View.
Non-functional
- p99 tile fetch < 100 ms (cached).
- Route < 500 ms for typical city query.
- Multi-region, 99.99% availability.
Capacity
- Trillions of tiles served / yr; petabytes of map data.
- Tens of billions of probe pings/day.
Schema (abstract)
- Tile =
(z,x,y) → image / vector blob in object store + CDN.
- POI table sharded by S2 cell.
- Road graph stored as adjacency lists per region.
Trade-offs
- Vector tiles lighter on bandwidth + stylable at client; raster simpler.
- CH preprocessing expensive but cuts query time by 1000×.
- Probe data privacy: aggregate, decay, anonymize.
Refs
- "Customizable Route Planning" (Microsoft Research) on CH variants.
- S2 Geometry library docs.
- Google Maps engineering talks; "How Google Maps draws roads".
- ByteByteGo "Design Google Maps".