c't 26/2019
S. 124
Wissen
Generische Bäume in PostgreSQL
Aufmacherbild
Bild: Albert Hulm

Schematisch aufforsten

Dynamische Baumstrukturen in PostgreSQL speichern

SQL-Datenbanken speichern nur flache Tabellen. Reale Daten liegen aber oft baumartig strukturiert vor. Mit einem generischen Konzept für die Tabellen und den modernen Array- und JSON-Feldern von PostgreSQL speichert die Datenbank beliebige Daten und prüft dabei auch deren Struktur.

Texte zu speichern für Blogs, Flugblätter oder Magazine erscheint einfach: Eine Datenbankanwendung speichert Artikel mit Überschriften, Autorenzeilen und etwas Text mittels SQL und erzeugt daraus automatisch alle nötigen Dateien für den Webserver oder das Desktop-Publishing-Programm.

Doch in der Praxis tauchen schnell Begehrlichkeiten auf. Beispielsweise sollen Textkästen in den Artikeln die Leser mit Zusatzinfos versorgen – und schon müsste das Datenbankschema für die neue Anwendung angepasst werden. Schreiben außer dem Programmierer andere Autoren mit der Software, fehlen denen die Fähigkeiten, das System an neue Bedürfnisse anzupassen („Im Fließtext hervorgehobene Zitate wären doch toll!“). Der Programmierer wird zwangsläufig zum Flaschenhals.