Speziell entwickelt für Zeitreihendaten.
Installation¶
docker run -d -p 8086:8086 \
-e DOCKER_INFLUXDB_INIT_MODE=setup \
-e DOCKER_INFLUXDB_INIT_USERNAME=admin \
-e DOCKER_INFLUXDB_INIT_PASSWORD=password123 \
-e DOCKER_INFLUXDB_INIT_ORG=myorg \
-e DOCKER_INFLUXDB_INIT_BUCKET=metrics \
influxdb:2.7
Schreiben¶
curl -X POST 'http://localhost:8086/api/v2/write?bucket=metrics' \
-H 'Authorization: Token TOKEN' \
-d 'cpu,host=server01 usage=85.5'
Flux-Abfragen¶
from(bucket:"metrics")
|> range(start:-1h)
|> filter(fn:(r)=>r._measurement=="cpu")
|> aggregateWindow(every:5m,fn:mean)
Wann InfluxDB einsetzen¶
InfluxDB ist optimiert fuer Szenarien, in denen Sie grosse Mengen zeitgestempelter Daten schreiben — Server-Monitoring, IoT-Sensoren, Anwendungsmetriken oder Finanz-Tick-Daten. Im Gegensatz zu PostgreSQL komprimiert InfluxDB aeltere Daten automatisch und ermoeglicht Retention Policies fuer automatisches Loeschen nach einer bestimmten Zeit.
Flux ist eine funktionale Abfragesprache, die das Verketten von Datentransformationen ueber den Pipe-Operator |> ermoeglicht. Sie koennen einfach Aggregationen ueber Zeitfenster erstellen, Anomalien erkennen oder gleitende Durchschnitte berechnen. Fuer die Visualisierung integriert sich InfluxDB hervorragend mit Grafana. In Produktionsumgebungen empfehlen wir Retention Policies und Continuous Queries fuer automatisches Downsampling aelterer Daten.
InfluxDB für Zeitreihen¶
Effizienter als PostgreSQL für Metriken und IoT.