c't 5/2019
S. 154
Praxis
Zeitreihendatenbanken
Aufmacherbild
Bild: Albert Hulm

Geschichtsschreiber

InfluxDB: Spezialisierte Datenbank für Messwerte und Logging

Eine SQL-Datenbank ist meist die erste Wahl für alle Arten von Daten. Für Messwerte ist der Generalist aber nicht unbedingt die beste Lösung. Eine Zeitreihendatenbank wie InfluxDB arbeitet schneller und kann alte Daten automatisch zusammenfassen.

Messwerte können aus vielen Quellen stammen: zum Beispiel von physischen Sensoren, seien sie im vernetzten Zuhause, im Rechenzentrum oder in einer Industrieanlage. Aber auch Software kann Messwerte produzieren: Prozessor- und Netzwerkauslastung, Anzahl von Anfragen oder Bestellungen. Gründe, solche Messwerte zu speichern, gibt es ebenfalls viele: um Ursachen für Probleme zu finden, Durchschnittswerte zu berechnen oder übersichtliche Diagramme zu generieren.

Wer schon eine relationale Datenbank wie MySQL, MariaDB oder SQL Server im Einsatz hat, ist versucht, diese Datenbank auch für Zeitreihendaten, also die Zuordnung von Messwerten zu Datum und Uhrzeit, einzusetzen. Um zu verstehen, welches Problem Zeitreihendatenbanken lösen, kann man das Vorgehen bei einer MySQL-Datenbank einmal durchdenken. Es genügt eine Tabelle mit drei Spalten: Name des Messwerts, gemessener Wert, Zeitstempel. Das Speichern klappt mit INSERT INTO noch problemlos.