bugfree Icon
interview-course
interview-course
interview-course
interview-course
interview-course
interview-course
interview-course
interview-course

System Design Question

Design Facebook Search

bugfree Icon

Hello, I am bugfree Assistant. Feel free to ask me for any question related to this problem

Functional Requirements:

  • Users can search for people, pages, groups, and posts using keywords.
  • Search results should be ranked by relevance (e.g., connection, popularity, recency).
  • Users can filter search results by type (people, posts, groups, pages), time, and other relevant filters.
  • Search should support auto-suggestions as users type.
  • Search should respect user privacy settings (only show results the user is allowed to see).

Non-Functional Requirements:

  • The system should support high availability (99.9% uptime or better).
  • Search queries should return results with low latency (ideally < 1 second).
  • The system must be able to scale horizontally to handle large numbers of users and queries.
  • Search results can be eventually consistent (minor delays in indexing new content are acceptable).
  • The system should be fault tolerant and resilient to node failures.

System Design Diagrams

Zoom In and Out via trackpad or posture