Skip to content

Yelp / Nearby Places — Notes#

Functional#

  • Search places by category + name + location.
  • Place detail (hours, photos, reviews, menus).
  • Write review, upload photo.
  • Check-in, reservations integration.
  • Owner tools.

Non-functional#

  • p99 nearby search < 300 ms.
  • 99.95% availability.
  • Read-heavy (50:1).

Capacity#

  • 200M+ places globally; 200M+ reviews.
  • Photos in TB-PB range.

Schema#

  • places(id, name, geo, category, hours, owner_id, rating_avg, review_count)
  • reviews(id, place_id, user_id, text, rating, photos[], ts, is_filtered)
  • geo_index(cell_id, [place_id])

Trade-offs#

  • Quadtree vs geohash vs S2: S2 is sphere-aware, popular now.
  • Filtered reviews: trust vs author goodwill.
  • Personalization vs objective ranking: hybrid scoring.

Refs#

  • Yelp engineering blog (Mussel, search, Spam Filter).
  • Google S2 docs; Uber H3 hexes.
  • ByteByteGo "Design Yelp".