Zeitreihendatenbank
Eine Zeitreihendatenbank (englisch time series database, TSDB) ist eine Datenbank, die für das Speichern und die Analyse von Zeitreihen wie Sensordaten oder Aktienkursen optimiert ist. Anwendungsdomänen sind zum Beispiel das Internet der Dinge, der Kapitalmarkt, das Monitoring von IT-Systemen oder die Forschung auf physiologischen Signalen.[1]
Eigenschaften
[Bearbeiten | Quelltext bearbeiten]Ein Datensatz einer Zeitreihendatenbank besteht aus
- einem Zeitstempel,
- dem zugehörigen Wert (z. B. gemessene Temperatur in °C) sowie
- optional Metadaten (oft in Form von „Tags“).
Je nach Datenbank kann ein Datensatz gegebenenfalls auch mehrere Werte (multivariate Zeitreihe) oder weitere Zeitstempel enthalten (z. B. Messzeitpunkt und Auswertungszeitpunkt).
Zeitreihendatenbanken sind häufig spaltenorientierte NoSQL-Datenbanken (oder basieren auf solchen), da diese Anforderungen der Zeitreihenanalyse effizienter als klassische relationale Datenbanken mit Fokus auf ACID erfüllen können.
Weitere typische Kennzeichen von Zeitreihendatenbanken sind:[2]
- Standardmäßige Indizierung über Zeitstempel
- Keine oder schwache Konsistenzgarantien (vgl. auch CAP-Theorem), stattdessen
- Skalierbarkeit auf sehr große Datenmengen (z. B. mehrere 100.000 Messwerte pro Sekunde, mehrere Terabyte Daten/Tag)
- Schnelles Erzeugen von Datensätzen (engl. ingestion rate; Zeitreihendaten werden nie oder nur sehr selten aktualisiert)
- Zeitbezogene Abfragen sind bereits eingebaut oder einfach zu formulieren und werden mit hoher Geschwindigkeit ausgeführt, die Einrichtung kontinuierlicher Abfragen ist möglich (z. B. Mittelwert über die vergangene Stunde)
- Ältere Daten können automatisch gelöscht oder reduziert werden (Downsampling, Aggregation, Kompression)
Beispiele für Zeitreihendatenbanksysteme
[Bearbeiten | Quelltext bearbeiten]Beispiele für Zeitreihendatenbanksysteme sind:[3][4][5]
- Apache Druid
- CrateDB
- Graphite Whisper
- InfluxDB
- kdb+
- OpenTSDB
- Prometheus
- QuestDB[6]
- RRDtool
- TimescaleDB
Literatur
[Bearbeiten | Quelltext bearbeiten]- Andreas Bader, Oliver Kopp, Michael Falkenthal: Survey and Comparison of Open Source Time Series Databases. In: BTW 2017 – Workshopband. Lecture Notes in Informatics (LNI), Gesellschaft für Informatik, Bonn 2017, ISBN 978-3-88579-660-2, S. 249–268 (online).
- Dmitry Namiot: Time Series Databases. In: Proceedings of the XVII International Conference «Data Analytics and Management in Data Intensive Domains» (DAMDID/RCDL’2015), Obninsk 2015, urn:nbn:de:0074-1536-8 (online)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ What the heck is time-series data (and why do I need a time-series database)? Abgerufen am 4. Januar 2021.
- ↑ Sam Fangman: The Time Has Come for a New Type of Database. Abgerufen am 4. Januar 2021.
- ↑ DB-Engines Ranking of Time Series DBMS. Abgerufen am 4. Januar 2021.
- ↑ Preetam Jinka: List of Time Series Databases. Abgerufen am 5. Januar 2021.
- ↑ Anforderungen für Zeitreihendatenbanken im industriellen IoT. Abgerufen am 22. Januar 2023.
- ↑ QuestDB | High performance time series database. Abgerufen am 3. Juni 2024 (englisch).