HLDArena
HLD-219·Storage & Caching
Medium · 1,000 pts

Collaborative Music Playlist & Synced Lyrics Store

Design a music streaming playlist and time-synced lyrics backend serving album-drop surges while immediately reflecting track additions in shared playlists.

Max p99
≤ 42 ms
Availability
≥ 99.5%
Budget
≤ $4,900

Functional Requirements

  • FR-1GET /playlists/{playlist_id} — Fetches ordered track list and time-synced lyric frames.
  • FR-2POST /playlists/{playlist_id}/tracks — Appends tracks to a collaborative playlist.
  • FR-3PUT & DELETE /playlists/{playlist_id}/tracks/{track_id} — Reorders or removes tracks and immediately updates collaborator caches.
  • FR-4Playlist edits must immediately appear to collaborators (read-after-write) despite 6x storage brownouts.

Workload Profile

Baseline Streaming40,000 Read RPS / 3,500 Playlist Write RPS
Midnight Album Drop118,000 Read RPS / 10,000 Write RPS
Active Working Set28 GB hot playlists & synced lyric payloads
Traffic DistributionHeavy Zipfian skew on featured editorial playlist_id keys

Consistency Model

Read-after-write consistency required on playlist mutations; circuit breakers protect against storage brownouts.

Design Write-up
0 boxes · 0 edges
0 words
Hidden Cases #4–#7 run automatically on Submit
Case 1: Smoke & API ContractInput Workload
Read RPS
2,000 rps
Write RPS
350 rps
Key Distribution
Uniform (Low Skew)
Chaos Fault
None (Healthy Cluster)
Expected Pass CriteriaASSERTIONS
• Tail Latency: p99 ≤ 84 ms
• Availability: ≥ 99.5%
Valid end-to-end Client → Compute → Storage topology