PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/Okta

Design a Metrics Storage Platform

Last updated: Apr 26, 2026

Quick Overview

This question evaluates system-design and distributed-systems skills for time-series metrics storage, focusing on data modeling for counters, gauges, and histograms, ingestion and query pipelines, API design, sharding and storage formats, retention/compaction, availability, and multi-tenant considerations.

  • medium
  • Okta
  • System Design
  • Software Engineer

Design a Metrics Storage Platform

Company: Okta

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

Design a distributed backend for storing and querying application metrics. The system should collect time-series metrics from many services running across multiple machines and regions. Each metric sample contains: - metric name - labels or tags such as service, host, region, and environment - timestamp - numeric value Requirements: - high write throughput for continuous metric ingestion - support counters, gauges, and histogram-like metrics - allow users to query by metric name, label filters, and time range - power dashboards and alerting with low latency for recent data - keep recent data fast to query while retaining historical data cheaply - scale horizontally as the number of services and series grows - tolerate machine and zone failures - support retention, compaction, and downsampling - optionally support multi-tenant isolation and rate limits Describe the API, storage model, sharding strategy, ingestion path, query path, failure handling, and major trade-offs.

Quick Answer: This question evaluates system-design and distributed-systems skills for time-series metrics storage, focusing on data modeling for counters, gauges, and histograms, ingestion and query pipelines, API design, sharding and storage formats, retention/compaction, availability, and multi-tenant considerations.

Related Interview Questions

  • Design High-Throughput Messaging Infrastructure - Okta
Okta logo
Okta
Mar 30, 2026, 12:00 AM
Software Engineer
Technical Screen
System Design
5
0
Loading...

Design a distributed backend for storing and querying application metrics.

The system should collect time-series metrics from many services running across multiple machines and regions. Each metric sample contains:

  • metric name
  • labels or tags such as service, host, region, and environment
  • timestamp
  • numeric value

Requirements:

  • high write throughput for continuous metric ingestion
  • support counters, gauges, and histogram-like metrics
  • allow users to query by metric name, label filters, and time range
  • power dashboards and alerting with low latency for recent data
  • keep recent data fast to query while retaining historical data cheaply
  • scale horizontally as the number of services and series grows
  • tolerate machine and zone failures
  • support retention, compaction, and downsampling
  • optionally support multi-tenant isolation and rate limits

Describe the API, storage model, sharding strategy, ingestion path, query path, failure handling, and major trade-offs.

Solution

Show

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Okta•More Software Engineer•Okta Software Engineer•Okta System Design•Software Engineer System Design
PracHub

Master your tech interviews with 8,000+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.