Facebook Instagram Twitter Vimeo Youtube
Sign in
  • Home
  • About
  • Team
  • Buy now!
Sign in
Welcome!Log into your account
Forgot your password?
Privacy Policy
Password recovery
Recover your password
Search
Logo
Sign in
Welcome! Log into your account
Forgot your password? Get help
Privacy Policy
Password recovery
Recover your password
A password will be e-mailed to you.
Thursday, October 16, 2025
Sign in / Join
  • Contact Us
  • Our Team
Facebook
Instagram
Twitter
Vimeo
Youtube
Logo
  • Home
  • News
    • News

      Cloudflare Thwarts Record-Breaking 22.2 Tbps DDoS Attack by Paige Henley

      3 October 2025
      News

      Ransomware Attack Hits Major European Airports via Collins Aerospace Software by Husain Parvez

      3 October 2025
      News

      Steam Pulls Game After Malware Steals Over $150,000 in Crypto by Husain Parvez

      3 October 2025
      News

      Mexican Senate Advances Framework for National Cybersecurity Law by Husain Parvez

      1 October 2025
      News

      CBK Launches Sector-Wide Cybersecurity Centre Amid Rising Attacks by Husain Parvez

      27 September 2025
  • Data Modelling & AI
    • AllBig dataBusiness AnalyticsData ScienceData Structure & AlgorithmDatabasesVector DatabaseDeep LearningEthical HackingGenerative AIMachine Learning
      Big data

      Smarter Retrieval for RAG: Late Chunking with Jina Embeddings v2 and Milvus

      15 October 2025
      Big data

      From Word2Vec to LLM2Vec: How to Choose the Right Embedding Model for RAG

      8 October 2025
      Big data

      How to Debug Slow Search Requests in Milvus

      4 October 2025
      Big data

      When Context Engineering Is Done Right, Hallucinations Can Be the Spark of AI Creativity

      2 October 2025
    • Big data
    • Business Analytics
    • Databases
    • Data Structure & Algorithm
    • Data Science
    • Deep Learning
    • Ethical Hacking
    • Generative AI
    • Machine Learning
    • Security & Testing
  • Mobile
    • AllAndroidIOS
      Android

      Google is working on dedicated ‘Bills’ and ‘Travel’ folders for Gmail

      15 October 2025
      Android

      Mint Mobile’s big bet on 5G home internet might change everything

      15 October 2025
      Android

      Honor’s new Robot Phone concept is giving DJI Pocket fans something to look forward to

      15 October 2025
      Android

      Spotify’s AI DJ goes bilingual, while podcasts get set to make the jump to Netflix

      15 October 2025
    • Android
    • IOS
  • Languages
    • AllAjaxAngularDynamic ProgrammingGolangJavaJavascriptPhpPythonReactVue
      Languages

      Working with Titles and Heading – Python docx Module

      25 June 2025
      Languages

      Creating a Receipt Calculator using Python

      25 June 2025
      Languages

      One Liner for Python if-elif-else Statements

      25 June 2025
      Languages

      Add Years to datetime Object in Python

      25 June 2025
    • Java
    • Python
    • Ajax
    • Php
    • Python
    • Golang
    • Dynamic Programming
    • React
    • Vue
    • Java
    • Javascript
    • NodeJS
    • Angular
  • Guest Blogs
  • Discussion
  • Our Team
HomeData Modelling & AIBig dataDesigning a Proximity Service like Yelp
Big dataGuest Blogs

Designing a Proximity Service like Yelp

Algomaster
By Algomaster
15 June 2025
0
2
Share
Facebook
Twitter
Pinterest
WhatsApp

    Designing a Proximity Service like Yelp

    Ashish Pratap Singh's avatar

    Ashish Pratap Singh
    May 15, 2025
    ∙ Paid

    Services like Yelp, Zomato, or Google Maps have become an essential part of how we discover the world around us.

    Whether you’re looking for the best coffee shop within walking distance, a nearby gym that’s open late, or the top-rated restaurant in your city—these platforms deliver location-aware results in milliseconds, personalized and filtered to your needs.

    But how does such a system work under the hood?

    In this blog, we’ll walk through the system design of a proximity service like Yelp—a platform that helps users search for nearby businesses, view detailed listings, read and write reviews, and save favorites for future visits.

    We’ll dive deep into the high-level architecture, database design, API design, indexing strategies, caching, scalability, and how to handle billions of data points with milli-seconds latency.


    1. Requirements

    Before diving into the architecture, lets clearly define what we’re building.

    1.1 Functional Requirements

    • Search & Discovery: Users can search for nearby places (restaurants, gyms, salons, etc.) using their current location. Support filters like:

      • Distance (e.g., within 2 km, 5 km)

      • Category (e.g., cafe, spa, grocery store)

      • Ratings (e.g., 4 stars and above)

      • Open Hours (e.g., currently open)

    • Business Listing Details: Each place should have a detailed page showing:

      • Name, address, contact

      • Photos, opening hours, services

      • Location on a map

      • User reviews and ratings

    • Reviews & Ratings: Users can leave ratings (1 to 5 stars) and written reviews.

    • Business Management: Business owners can create a new listing or update details

    • Favorites: Users can bookmark or save favorite places for quick access later.

    1.2 Non-Functional Requirements

    • Scalability: The system should handle millions of users and tens of millions of listings and reviews

    • Low Latency: Search results should be returned within <200ms

    • High Availability: The service should remain operational even if individual components fail. Availability target: 99.99% uptime

    • Eventual Consistency: For certain operations (e.g., newly posted reviews or updated listings), the system can be eventually consistent rather than strongly consistent.


    2. Capacity Estimation

    Traffic Assumptions

    Let’s assume this service operates at global scale:

    • Monthly Active Users (MAU): 50 million

    • Daily Active Users (DAU): ~10 million (20% of MAU)

    • Avg. searches/user/day: 5

    • Reviews/day: ~5 million

    • New businesses added/day: 100,000

    Peak traffic may be 2–3X average load, especially during weekends, holidays, or lunch/dinner hours.

    Storage Estimation

    Business Listings

    • Assume 100 million listings

    • Each listing ≈ 2 KB (name, category, address, etc.)

    • Total = ~200 GB

    Relatively small footprint, fits well in relational or document DBs. Queryable fields (category, rating, location) should be indexed.

    Reviews

    • Assume 1 billion reviews (historical)

    • Data per review ≈ 1 KB (text + metadata)

    • Total = 1B x 1KB = ~1 TB

    Media (Photos)

    • Average photos/business: 5

    • Size per photo: ~200 KB (optimized JPEG or WebP)

    • Storage = 100M listings × 5 × 200 KB = ~100 TB

    Stored in object storage like Amazon S3, not in databases. Backed by CDN for efficient global delivery.

    Favorites

    • Assume 100M total saved favorites

    • Data per favorite ≈ 50 bytes (user_id, business_id, timestamp)

    • Total = 100M × 50bytes = 5GB


    3. High-Level Architecture

    This post is for paid subscribers

    Already a paid subscriber? Sign in
    Share
    Facebook
    Twitter
    Pinterest
    WhatsApp
      Previous article
      15 System Design Building Blocks You Should Know
      Next article
      How to Choose the Right Database in a System Design Interview
      Algomaster
      Algomasterhttps://blog.algomaster.io
      RELATED ARTICLES
      Guest Blogs

      Interviewed With Kyle Smith – Founder and CEO of Escalated by Shauli Zacks

      15 October 2025
      Guest Blogs

      Interview With Paul Reid – VP Adversary Research at AttackIQ by Shauli Zacks

      15 October 2025
      Guest Blogs

      45 Resources for Whistleblowers and Dissidents Around the World by Tom Read

      15 October 2025

      LEAVE A REPLY Cancel reply

      Log in to leave a comment

      Most Popular

      Google is working on dedicated ‘Bills’ and ‘Travel’ folders for Gmail

      15 October 2025

      Mint Mobile’s big bet on 5G home internet might change everything

      15 October 2025

      Interviewed With Kyle Smith – Founder and CEO of Escalated by Shauli Zacks

      15 October 2025

      Interview With Paul Reid – VP Adversary Research at AttackIQ by Shauli Zacks

      15 October 2025
      Load more
      Algomaster
      Algomaster
      202 POSTS0 COMMENTS
      https://blog.algomaster.io
      Calisto Chipfumbu
      Calisto Chipfumbu
      6745 POSTS0 COMMENTS
      http://cchipfumbu@gmail.com
      Dominic
      Dominic
      32361 POSTS0 COMMENTS
      http://wardslaus.com
      Milvus
      Milvus
      88 POSTS0 COMMENTS
      https://milvus.io/
      Nango Kala
      Nango Kala
      6728 POSTS0 COMMENTS
      neverop
      neverop
      0 POSTS0 COMMENTS
      https://geeksforgeeks.org
      Nicole Veronica
      Nicole Veronica
      11892 POSTS0 COMMENTS
      Nokonwaba Nkukhwana
      Nokonwaba Nkukhwana
      11953 POSTS0 COMMENTS
      Safety Detectives
      Safety Detectives
      2684 POSTS0 COMMENTS
      https://www.safetydetectives.com/
      Shaida Kate Naidoo
      Shaida Kate Naidoo
      6852 POSTS0 COMMENTS
      Ted Musemwa
      Ted Musemwa
      7113 POSTS0 COMMENTS
      Thapelo Manthata
      Thapelo Manthata
      6805 POSTS0 COMMENTS
      Umr Jansen
      Umr Jansen
      6801 POSTS0 COMMENTS

      EDITOR PICKS

      Google is working on dedicated ‘Bills’ and ‘Travel’ folders for Gmail

      15 October 2025

      Mint Mobile’s big bet on 5G home internet might change everything

      15 October 2025

      Interviewed With Kyle Smith – Founder and CEO of Escalated by Shauli Zacks

      15 October 2025

      POPULAR POSTS

      Google is working on dedicated ‘Bills’ and ‘Travel’ folders for Gmail

      15 October 2025

      Mint Mobile’s big bet on 5G home internet might change everything

      15 October 2025

      Interviewed With Kyle Smith – Founder and CEO of Escalated by Shauli Zacks

      15 October 2025

      POPULAR CATEGORY

      • Languages45985
      • Data Modelling & AI17573
      • Java15156
      • Android14949
      • Mobile12983
      • Guest Blogs12731
      • Javascript12713
      • Data Structure & Algorithm10077
      Logo

      ABOUT US

      We provide you with the latest breaking news and videos straight from the technology industry.

      Contact us: hello@geeksforgeeks.org

      FOLLOW US

      Blogger
      Facebook
      Flickr
      Instagram
      VKontakte

      © NeverOpen 2022

      • Home
      • News
      • Data Modelling & AI
      • Mobile
      • Languages
      • Guest Blogs
      • Discussion
      • Our Team