Evolving our real-time timeseries storage again: Built in Rust for performance at scale

Datadog rebuilt its real-time timeseries database (RTDB) storage engine in Rust as Monocle after outgrowing Cassandra, Redis, MDBM, and a Go B+ tree plus a separate RocksDB path for DDSketch distributions. The design shards the keyspace early with a shard-per-core model (for example, 24 storage shards on a 32-core machine), ingesting from Kafka partitions over MPSC channels into per-shard LSM trees on single-threaded Tokio schedulers, with tiered compaction, a unified series cache, and permit- and cost-based query throttlers (including CoDel). At peak scale the rewrite delivered a 60x increase in ingestion performance and 5x faster queries, turning extreme outliers that used to take minutes into results that return in seconds.

Published
2025-08-04
Scale
60x increase in ingestion performance, 5x faster queries at peak scale, extreme query outliers from minutes to seconds
Techniques
shard-per-core LSM tree tiered compaction series cache query throttling
Stack
Rust Tokio LSM tree Kafka DDSketch Monocle

See also

The best scaling write-ups, weekly

One email a week. No spam.