Skip to content

Instantly share code, notes, and snippets.

Feature InfluxDB Prometheus
Purpose High-performance time-series database (TSDB). Monitoring system with a built-in TSDB.
Data Model Time-series optimized (tags, fields, timestamps). Multi-dimensional with labels.
Collection Model **Push**: Data sent to InfluxDB. **Pull**: Prometheus scrapes metrics.
Query Language **InfluxQL** and **Flux** (complex queries). **PromQL** (designed for monitoring).
Scalability Requires enterprise tools for clustering. Scales horizontally with **Thanos**/**Cortex**.
Retention Configurable policies per database. Time-based retention, scraping-dependent.
Alerting External tools required (e.g., Grafana). Native alerting with **Alertmanager**.

The tree layout implements the Reingold-Tilford algorithm for efficient, tidy arrangement of layered nodes. The depth of nodes is computed by distance from the root, leading to a ragged appearance. Cartesian orientations are also supported. Implementation based on work by Jeff Heer and Jason Davies using Buchheim et al.'s linear-time variant of the Reingold-Tilford algorithm. Data shows the Flare class hierarchy, also courtesy Jeff Heer.