EMZETT.
Login

Graphdatenbanken und Zeitreihendatenbanken

Kurz: Graphdatenbanken speichern Beziehungen zwischen Dingen als Netz, Zeitreihendatenbanken speichern Messwerte mit Zeitstempel; beide sind auf ihr Datenmuster spezialisiert.

Genauer: Relationale Datenbanken sind Allrounder. Für bestimmte Datenformen gibt es spezialisierte Datenbanken, die bei diesen Aufgaben viel schneller oder einfacher sind.

Im Detail

Graphdatenbanken

Daten bestehen aus Knoten (Personen, Produkte), Kanten (Beziehungen wie „kennt“, „kaufte“) und Eigenschaften. Abfragen wie „Freunde von Freunden“ oder „kürzester Weg“ sind direkt und schnell, wo SQL viele Joins bräuchte. Beispiele: Neo4j (Abfragesprache Cypher), Amazon Neptune, Memgraph.

MATCH (a:Person {name:'Mia'})-[:KENNT*2]-(b)
RETURN DISTINCT b.name

Einsatz: soziale Netzwerke, Empfehlungen, Betrugserkennung, Wissensgraphen, Netzwerk-Topologie.

Zeitreihendatenbanken

Daten sind Messwerte mit Zeitstempel: Temperatur, Serverlast, Aktienkurse, Sensoren. Typisch: sehr viele Schreibvorgänge, selten Änderungen, Abfragen über Zeiträume (Mittelwert pro Stunde, Maximum der Woche) und automatisches Löschen oder Verdichten alter Daten (Retention, Downsampling). Beispiele: InfluxDB, TimescaleDB (PostgreSQL-Erweiterung), Prometheus, ClickHouse.

SELECT time_bucket('1 hour', zeit) AS stunde, avg(wert)
FROM messungen GROUP BY stunde;

Wann lohnt sich das?

Bei kleinen Datenmengen genügt PostgreSQL oft völlig (mit Rekursion/Indizes, mit TimescaleDB-Erweiterung für Zeitreihen). Spezialisierte Datenbanken lohnen sich, wenn Beziehungstiefe oder Datenvolumen SQL sprengen. Jede zusätzliche Datenbank bringt Betrieb, Backups und Wissen mit sich.

Weitere Typen

Dokumentendatenbanken (MongoDB), Key-Value (Redis), Spaltenfamilien (Cassandra), Vektordatenbanken (für Embeddings und KI-Suche), Suchmaschinen (Elasticsearch). Die Wahl folgt dem Zugriffsmuster, nicht dem Trend.

Siehe auch: NoSQL-Datenbanken, Prometheus, Redis, MongoDB