Social graph partitioning

DesignHard50 minMeta and Microsoft style

Your task

Design the partitioning strategy for a social graph store with 1B vertices (users) and 200B edges (friendships/follows), supporting queries like 'friends of friends' (2-hop) and 'mutual connections' with p95 under 200ms, plus heavy write traffic as the graph changes. Some vertices are super-nodes (celebrities with 50M+ edges). The graph doesn't fit on one machine. Describe how you partition vertices/edges across machines, how multi-hop traversals execute, how you handle super-nodes, and the central trade-off.

It covers

  • Graph partitioning
  • Edge cuts
  • Traversal