Lesson 5 of 16
40. Design Video Upload and Streaming (YouTube)

40.4 What do we store?

3 min read+10 XP
originals object storage (cold tier after processing) v77/original.mp4 renditions object storage + CDN v77/720p/seg00042.ts, v77/master.m3u8 videos video_id, owner, title, status (uploading | processing | ready | failed), duration, renditions available, created_at (sharded SQL or wide-column) jobs video_id, step, state, attempts (processing pipeline state) view_counts video_id → count (sharded counters, flushed periodically)

Interviewer pushback:

  • "Why keep the original after transcoding?" → To re-encode later with better codecs or new qualities without asking the creator to upload again. It moves to a cheap, cold storage tier (Chapter 11).

Memory code: "Original kept cold, renditions served hot, status in the database."