Design Google Drive

Design a cloud storage service that stores files and keeps them in sync across a user's devices.

File storage and sync · Hard

Functional requirements

  • Upload and download files
  • Sync changes across devices
  • Share files with other users
  • File version history

Scale & non-functional requirements

  • 50M users, 10 GB each
  • Large files up to 10 GB
  • Strong consistency for file metadata

Hints

  • Split files into chunks — why?
  • How do devices learn about changes?
  • How do you resolve conflicting edits?

More system design questions

Try AI Flowchart free →