Design a Multi-Tenant Interactive Analytics Platform
Design a platform where many tenants load data and run interactive SQL over it. Loads arrive continuously; queries must return in seconds over terabytes; tenants must be isolated from each other in both performance and visibility; and compute must scale up and down with demand.
Cover how data is stored, how ingestion becomes visible to queries, how a query is planned and executed, how tenants are isolated, and the consistency model a query sees.
Hints
Hint 1
Store data as immutable columnar files in object storage; a transactional metadata service holds each table's file list, per-file statistics and snapshots.
Hint 2
Stateless coordinators plan queries from the metadata — pruning files by statistics — and elastic worker pools execute them; an ingest writes new files, then commits a new snapshot atomically.
Hint 3
The decision to defend is strong consistency for metadata with snapshot isolation for queries, so data files never need coordination, and per-tenant compute pools versus a shared pool.
Asked at
Sign in to talk to the interviewer — ask what's in scope, what scale to design for, or for a nudge when you're stuck. Conversations save to your account.