System Design· 1 min read
System Design: Dropbox (File Sync, Chunking, and Deduplication)
Goal: Build a cloud file sync platform serving 500M registered users, 50M DAU, syncing 10B files across 100PB of storage. Support chunked uploads, resumable transfers, delta sync (upload only changed bytes), cross-device sync via WebSocket, content deduplication across users, peer-to-peer LAN sync, and file versioning. Files available on other devices within 10 seconds for files under 10MB on broadband.
Mental model, four ideas that make everything else click:
- A file = ordered list of chunk hashes. Chunks are immutable, content-addressed blobs in object storage.
- Editing a file means producing a new list of hashes. Most stay the same. Only new chunks get uploaded.
- Dedup = identical content produces the same SHA-256 hash, stored once, referenced many times.
- Sync = push metadata via WebSocket, other devices download only missing chunks.
Loading…
CrackingWalnuts