InfluxDB
InfluxDB is the most-deployed open-source time-series database. Designed by InfluxData (founded 2013), it is purpose-built for high-cardinality timestamped data — metrics, IoT telemetry, application traces, financial ticks, sensor readings — that arrives in heavy write streams and is queried mostly by time range plus tag filters.
Key Features:
- Time-Series-Native Storage. Time-Structured Merge Tree (TSM) is an LSM variant tuned for timestamped, tag-indexed data. Compresses dramatically (10–100×) compared to row stores.
- Tag-Based Indexing. Series are identified by measurement + tags + field. Tag-indexed queries are fast; high-cardinality unbounded tags are the classic pitfall.
- Flux + InfluxQL. Flux is a functional, pipeline-style language designed for time-series transformations; InfluxQL is the older SQL-like dialect.
- Continuous Queries / Tasks. Server-side scheduled aggregations (e.g. 1-min → 5-min downsampling) for retention and dashboard speed.
- Retention Policies. Auto-drop data older than N days; pair with downsampling to keep summaries forever, raw data for a window.
- Telegraf Ecosystem. 200+ input plugins for collecting from system metrics, databases, message brokers, cloud APIs.
- InfluxDB 3.0 (IOx). Newer version rebuilt in Rust on Apache Arrow / Parquet / DataFusion; columnar columnar storage, SQL-first, designed to remove the high-cardinality limitation.
InfluxDB vs. Other Time-Series DBs:
- InfluxDB. Purpose-built TSDB, broad ecosystem, separate from your RDBMS. Eventual cardinality issues in older versions.
- TimescaleDB. Postgres extension — full SQL, joins to relational data, but a proper RDBMS engine underneath.
- Prometheus. Pull-based monitoring TSDB; tightly coupled with metric scraping and alerting; not for raw event ingestion at scale.
- VictoriaMetrics. Prometheus-compatible drop-in with much higher per-node density and lower memory footprint.
Use Cases:
- System and application metrics — CPU, memory, request rates, error counts.
- IoT and industrial telemetry at thousands of sensors per device.
- DevOps observability dashboards (Grafana + InfluxDB / Prometheus is the canonical stack).
- Financial market data — tick storage with downsampling for analytics.