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