M3DB

active

by M3 project (Uber, Chronosphere) · since 2018 · also known as M3, M3 Coordinator, M3 Aggregator

Uber-born distributed TSDB and aggregator for Prometheus-scale metrics with tunable replication.

time-seriesdatabase engineopen source (permissive)mature

Overview

M3 is the metrics platform Uber built to replace a Graphite-on-Cassandra stack. M3DB is a distributed, replicated time-series store with its own compressed on-disk format, M3 Coordinator accepts Prometheus remote write and serves PromQL and Graphite queries, and M3 Aggregator downsamples streams before they reach storage. It handles billions of series in production, but it is operationally heavy, with etcd, placement management and separate namespaces per resolution. After years with few releases, v1.6.0 shipped in September 2026. Chronosphere, the main sponsor and commercial heir of M3, was acquired by Palo Alto Networks in early 2026.

Strengths & trade-offs

Strengths

  • +Proven at Uber scale with billions of series
  • +Streaming aggregation tier reduces cardinality before storage
  • +Tunable read/write consistency levels (one, majority, all)
  • +Speaks both Prometheus and Graphite protocols
  • +Official Kubernetes operator for M3DB clusters

Trade-offs

  • −Many components plus etcd make operations complex
  • −Long release gaps and a small contributor base outside its sponsors
  • −Documentation lags the code
  • −No object-storage tier; retention is bounded by cluster disks

Great for

  • +Very large Prometheus remote-write backends
  • +Migrating Graphite at scale to PromQL
  • +Multi-resolution metrics retention

Think twice for

  • −Small teams wanting low operational overhead
  • −Logs and traces
  • −SQL analytics

Capabilities

Native or official first-party support · 4 of 25 tracked

✓TTL / expiry
✓Durable persistence
✓Compression
✓Streaming ingest
–Transactions
–Joins
–Secondary indexes
–Full-text search
–Vector search
–Geospatial
–JSON
–Change data capture
–Triggers
–Stored procedures
–Materialized views
–Pub/Sub
–Columnar storage
–In-memory
–Encryption at rest
–Role-based access
–Time travel
–Branching
–Online schema changes
–Offline sync
–Runs in WebAssembly

Scale & consistency

Comfortable data size
Massive · Multi-PB
Horizontal scaling
Native
Multi-region
No
Transactions
None
Consistency
Tunable
Schema
Schemaless
Architecture
Distributed, Client server
Query languages
PromQL, Graphite, M3QL

Shards series across nodes with configurable replication factor; multi-region is done with separate clusters and cross-cluster queries.

Deployment

Self-hosted Vendor-managed cloud Serverless Embedded Edge Kubernetes operator

Ecosystem

compatible withPrometheus, Graphite
apis & protocolsPrometheus remote write/read, Carbon plaintext, HTTP API
client languagesGo
used byUber

Alternatives to M3DB

Compare all→
VictoriaMetricsTime-Series26.8

Resource-frugal, Prometheus-compatible metrics database, run as a single binary or a sharded cluster.

m3db vs victoriametrics →
Grafana MimirTime-Series15.8

Grafana Labs' horizontally scalable, multi-tenant long-term store for Prometheus and OTLP metrics.

m3db vs grafana-mimir →
ThanosTime-Series13.1

Sidecar-plus-object-storage layer giving Prometheus global queries, HA dedup and long retention.

m3db vs thanos →
PrometheusTime-Series70.8

CNCF-graduated pull-based monitoring system with a local TSDB, PromQL and alerting rules.

m3db vs prometheus →
GraphiteTime-Series25.2

Veteran metrics stack: Carbon ingestion, Whisper files and the render API that shaped modern dashboards.

m3db vs graphite →
CortexTime-Series7.2

CNCF multi-tenant, horizontally scalable long-term storage for Prometheus metrics on object storage.

m3db vs cortex →

M3DB FAQ

What is M3DB?

M3DB is a time-series database by M3 project (Uber, Chronosphere), first released in 2018. M3 is the metrics platform Uber built to replace a Graphite-on-Cassandra stack. M3DB is a distributed, replicated time-series store with its own compressed on-disk format, M3 Coordinator accepts Prometheus remote write and serves PromQL and Graphite queries, and M3 Aggregator downsamples streams before they reach storage. It handles billions of series in production, but it is operationally heavy, with etcd, placement management and separate namespaces per resolution. After years with few releases, v1.6.0 shipped in September 2026. Chronosphere, the main sponsor and commercial heir of M3, was acquired by Palo Alto Networks in early 2026.

Is M3DB open source?

Yes. M3DB is open source. License: Apache License 2.0.

Does M3DB support ACID transactions?

No. M3DB does not provide ACID transactions; its consistency model is tunable.

Does M3DB scale horizontally?

M3DB scales horizontally out of the box, with built-in sharding or partitioning. It is comfortable at massive scale (Multi-PB).

How can I run M3DB?

You can self-host it.

What is M3DB best for?

M3DB is a strong fit for very large Prometheus remote-write backends, migrating Graphite at scale to PromQL and multi-resolution metrics retention. Think twice for small teams wanting low operational overhead.

What are the best alternatives to M3DB?

Common alternatives to M3DB include VictoriaMetrics, Grafana Mimir, Thanos, Prometheus and Graphite. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.

How popular is M3DB?

M3DB ranks #416 of 844 databases on the WhichDB Score (4.2/100), and #26 among time-series databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.