Skip to content

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".