Interview Questions/System Design/Design a Time-Series Metrics Database
AdvancedSystem-Design
45 min

Design a Time-Series Metrics Database

DatabasesStorageObservabilityCompression
Advertisement
Interview Question

Design a horizontally scalable time-series database for metrics with high-cardinality support, rollups, and retention policies.

Key Points to Cover
  • Write path: ingestion, batching, WAL, backpressure
  • Schema/indexing: labels/tags, cardinality control, inverted index
  • Compression & storage layout (LSM/columnar, downsampling, rollups)
  • Query path: aggregations, range queries, precomputed materializations
  • Retention & tiered storage (hot/warm/cold), compaction strategies
  • Multi-tenant isolation and quota/limits
Evaluation Rubric
High-throughput, durable ingest path25% weight
Cardinality-aware schema/indexing25% weight
Efficient query/rollup/compaction25% weight
Retention/tiering and multi-tenancy25% weight
Hints
  • 💡Cardinality explosions often come from unbounded labels.
Potential Follow-up Questions
  • How do you detect label cardinality abuse?
  • How would you store exemplars/traces?
Advertisement