Overview
Design a storage system where users upload, download, share, and sync large files across devices, sending only the chunks that changed.
Requirements
- 01Upload and download files up to 10GB, resuming after an interruption
- 02Sync only the chunks that changed when a file is edited
- 03Notify every connected device when a file changes
- 04Keep version history, so a user can restore an earlier version and resolve a conflict
- 05Validate every chunk with SHA-256 so data is never corrupted
Concepts in play
ChunkingDelta SyncS3Metadata DBConflict Resolution