YouTube is a video sharing and streaming platform where users can upload, watch, and interact with videos. It supports a wide range of content, including short clips, tutorials, live streams, and full-length movies.
Users can subscribe to channels, comment on videos, like or dislike content, and receive personalized recommendations.
With over 2.5 billion monthly active users, YouTube is the second most visited website in the world, trailing only Google.
In this chapter, we’ll explore the system design of a large-scale video streaming service like YouTube that can accommodate hundreds of millions of daily users and billions of views, all while maintaining low latency and high availability.
Let’s start by clarifying the requirements.