Temporal Tables: Zeitreisen in Datenbanken

Temporal Tables trennen aktuelle von historischen Daten und protokollieren Änderungen sowie Löschungen automatisch in einer speziellen Verlaufstabelle. Dadurch lassen sich zeitbasierte Abfragen durchführen, die Auditing, Datenwiederherstellung und Analysen deutlich vereinfachen - ohne den Einsatz manueller Trigger oder zusätzlicher Historientabellen.
Das Konzept wird in relationalen Datenbankmanagementsystemen (RDBMS) wie SQL Server, Oracle und MariaDB unterstützt. Wir erklären die Implementierungen in diesen Systemen und demonstrieren die Funktionsweise anhand von Beispielen. Dazu erstellen wir eine Testtabelle, fügen Daten ein, ändern diese und analysieren den zeitlichen Verlauf. Für RDBMS, die Temporal Tables nicht nativ unterstützen, etwa PostgreSQL, stellen wir einen alternativen Ansatz vor. Dabei wird auch deutlich, wie viel Aufwand Datenbankentwickler mit Temporal Tables einsparen können, wenn es um die Speicherung und Auswertung von Zeitreihendaten geht.