Vorwort zur sechsten Auflage
Datenbanken sind nach Softwaretechnik das wichtigste Teilgebiet der Fachrichtung Informatik. In einer aktuellen Umfrage der Gesellschaft für Informatik (GI) bezeichnen sich 30,32 Prozent der Informatiker als Datenbänker1, der stärkste Wert nach dem Gebiet Softwaretechnik mit 33,39 Prozent. Selbst dem Fachgebiet Wirtschaftsinformatik ordnen sich weniger GI-Mitglieder zu (24,54 Prozent). Und weitere Gebiete wie Technische Informatik (11,44 Prozent), Künstliche Intelligenz (8,68 Prozent) und Computergraphik (4,38 Prozent) sind weit abgehängt.
Datenbanken, genauer das Gebiet der Verwaltung großer Mengen strukturierter Daten, ist auch eines der alten, klassischen Gebiete der Informatik. Datenbanksysteme gibt es auf heutzutage veralteten Datenbankmodellen wie dem hierarchischen und Netzwerk-Modell seit den sechziger Jahren, das derzeit immer noch verbreitetste relationale Datenbankmodell ist bereits in den siebziger Jahren in der Forschung und dann in den achtziger Jahren in Form von kommerziellen Datenbank-Management-Systemen eingeführt worden. Die auch aus den siebziger Jahren stammende Datenbanksprache SQL ist immer noch intergalactic dataspeak, also die Standardsprache für die Verwaltung strukturierter Daten. Analysiert man große Online-Stellenportale wie das von Monster, so ist SQL nach Java und fast gleichauf mit C++ die drittgefragteste Sprache der Informatik — weit vor Python und anderen modernen Programmiersprachen und weit vor anderen Daten- und Dokumentbeschreibungssprachen wie XML und JSON.
Datenbanken hatte man aufgrund der langen Vorgeschichte im neuen Jahrtausend sowohl als Forschungsgebiet als auch als modernes Lehrgebiet in der Informatik den schleichenden Tod vorausgesagt: Relationale Datenbanksysteme waren nun einmal einfach da, veränderten sich kaum noch, gehörten zur Folklore für Informatiker. Das Kerngebiet der Informatik schien aus der Mode zu kommen.
Aber plötzlich erlebte das Forschungs- und Lehrgebiet Datenbanken einen riesigen Boom als Kernstück moderner Informationssystem-Infrastrukturen: Sowohl die Hardware entwickelte sich in verschiedene Richtungen weiter, als auch Anwendungen wie das Internet, Big Data, Industrie 4.0, das Internet der Dinge und Digitalisierung im allgemeinen Sinne sind abhängig von einer riesigen Menge von Daten, die effizient verwaltet und wiedergefunden werden muss. Und im Sinne von Big Data Analytics und Maschinellem Lernen müssen Daten heutzutage auch nicht nur wiedergefunden werden, es müssen auch komplexe Muster in riesigen Datenmengen gefunden werden und sie müssen statistisch analysiert werden.
All das führte dazu, dass sich in den 10er Jahren dieses Jahrhunderts das Gebiet Datenbanken dynamischer entwickelt als je zuvor. Und obwohl in diesem Lehrbuch für eine erste Grundvorlesung Datenbanken im Bachelor-Studium der Informatik, Wirtschaftsinformatik oder Technischen Informatik im Wesentlichen die klassischen Grundlagen wie das relationale Datenbankmodell und SQL vorgestellt werden müssen, müssen sich die Autoren auch auf die vielfältigen Neuentwicklungen einstellen. Die führen dazu, dass das Buch in dieser sechsten Auflage von 2018 wieder umstrukturiert wurde. Wir stellen im Folgenden kurz die Veränderungen von der ersten zur fünften Auflage vor und beschreiben dann, welche Neuerungen diese sechste Auflage bestimmen.
Von der ersten zur fünften Auflage
Abbildung 1: Die zweite und dritte Auflage des Biberbuches
Die erste Auflage des Biber-Buches erschien im September 1995, die zweite im Januar 2000, die dritte dann in 2008 (Abbildung 1 zeigt die Cover der Auflagen 2 und 3). In der Zeit bis zur dritten Auflage, immerhin über zehn Jahre, waren wichtige Themen wie SQL:2003, XML, objektrelationale Datenbanken, Data Warehouses und die Verwaltung multimedialer Daten dazugekommen. Weiterhin hatten sich auch im Aufbau, in laufenden Beispielen und in der Didaktik in den Vorlesungen zum Buch diverse Änderungen ergeben, die zur völligen Neuentwicklung schon bestehender Buchkapitel in der dritten Auflage führte.
Die Überarbeitung in der dritten Auflage wurde auch dazu genutzt, um den Stoff des Buches neu zu organisieren. Diese Umstrukturierung wurde auch dadurch motiviert, dass in einer nur zweistündigen Vorlesung die ersten Kapitel in den vorherigen Auflagen zu gehaltvoll waren, um direkt chronologisch als Stoff für eine Vorlesung herzuhalten. Seit der dritten Auflage ist das Buch in drei Teile aufgeteilt:
Der erste Teil bearbeitet umfassend die Kernkonzepte der relationalen Datenbanken, ohne auf Spezialitäten und andere Datenmodelle einzugehen. Er bildet den Kern einer Vorlesung „Grundlagen von Datenbanken“ auch mit geringerem Stundenumfang.
Der zweite Teil vertieft die Themen des ersten Teils, und kann insbesondere für eine 3- oder 4-stündige Vorlesung herangezogen werden. Zusammen geben die ersten beiden Teile eine umfassende Behandlung von Theorie, Entwurfsmethoden und Sprachkonzepten für relationale Datenbanken inklusive der ausführlichen Behandlung von SQL.
Der dritte Teil behandelt Alternativen und Erweiterungen bei Datenmodellen. Hiervon können ausgewählte Teile in eine Grundvorlesung übernommen werden, oder die Basis für Spezialvorlesungen bilden. In diesen Kapiteln wird die Sprach- bzw. Anwendungssicht in den Vordergrund gestellt; Implementierungsaspekte werden im Buch „Datenbanken: Implementierungstechniken“ [SSH11] der Autoren behandelt und sind deshalb hier ausgeblendet.
Abbildung 2: Die vierte und fünfte Auflage des Biberbuches
In der fünften Auflage [SSH13] (siehe Abbildung 2) wurden erstmals Teile wieder aus dem Buch entfernt: Der Stoff zu Datenbankkonzepten für Data- Warehouse-Anwendungen wurde derart umfangreich, dass wir ihn aus dem
Buch herausnahmen und stattdessen auf ein eigenes Spezialbuch zu dieser Thematik verweisen mussten [KSS12]. Des weiteren wurden aufgrund von Anregungen von Lesern die Abschnitte zur relationalen Entwurfstheorie und zu SQL an einigen Stellen überarbeitet. Neu hinzugekommen waren Abschnitte zu Datenbankzugriffen in der Cloud, zu RDF-Daten und zu temporalen Daten.
Die hier vorliegende sechste Auflage
Die sechste Auflage bietet nun sowohl einige Umstrukturierungen, neue Kapitel zu aktuellen Themen als auch (leider) wieder Streichungen bestimmter Kapitel. Einige kleinere Fehler, die in den bisherigen Auflagen übersehen oder unglücklicherweise neu eingebaut wurden, haben wir in dieser sechsten Auflage auch korrigiert— und wahrscheinlich unvermeidlicherweise auch neue Fehler eingebaut. Im Wesentlichen haben wir aber den Stand der Technik auf das Jahr 2018 gebracht und beispielsweise den Stand der SQL-Standardisierung auf die derzeit aktuelle Version SQL:2016. Im Folgenden geben wir einen Überblick über die Änderungen. Eine Änderung auf dem Cover möchten wir noch erwähnen: Der Biber als Logo für die gesamte Buchreihe findet sich auch weiterhin (stilisiert und klein) auf dem Cover, hat aber dort seine seitenfüllende Präsenz verloren. Als Ausgleich haben wir in Abbildung 3 noch einmal den Biber in voller Schönheit präsentiert (gezeichnet von Arved Sattler).
Abbildung 3: Der Biber als Logo für die gesamte Buchreihe (Zeichnung von Arved Sattler)
Umstrukturierungen. Während die oben für die dritte Auflage beschriebene Aufteilung des Buches in Teile eins bis drei stabil bleibt, wurden bestehende Kapitel aufgetrennt und verschoben bzw. Teile des Stoffes neu zugeordnet.
Kapitel 1 haben wir stark gekürzt, da die Einführung in das klassische relationale Datenbankmodell nun in einem eigenen Kapitel direkt anschließend erfolgt.
Kapitel 2 ist neu und führt nun das relationale Datenbankmodell zunächst informal, aber bereits sehr frühzeitig im Buch ein.
In Kapitel 5 wird das relationale Datenbankmodell und die Relationenalgebra als erstes Anfragemodell formal eingeführt. Die alternativen Anfragekalküle werden aber erst im zweiten Teil des Buches in Kapitel 10 eingeführt.
Ebenso werden im Kapitel 7 über den Relationalen Datenbankentwurf nur noch die Kriterien für einen guten Datenbankentwurf und das einfachste Entwurfsverfahren, die Dekomposition, vorgestellt. Erweiterte Kriterien und Verfahren werden nun auch erst in einem eigenen Kapitel 9 im zweiten Teil des Buches aufgegriffen.
Der dritte Teil des Buches ab Kapitel 17 ist völlig neu strukturiert und sortiert worden. Hier beschreiben wir die diversen Erweiterungen des Relationenmodells und in den letzten Jahrzehnten entstandenen alternativen Datenbankmodelle, die in vielen Fällen auch als Erweiterungen in den SQL-Standard mit eingeflossen sind.
Neue Kapitel zu neuen Themen. In den letzten Jahren sind diverse Datenbanktechniken neu entwickelt worden, in eigenen Linien von Datenbanksystemen auch bereits umgesetzt und breit verwendet worden, teilweise aber auch bereits als Erweiterungen in den aktuellen SQL-Standard aufgenommen worden. Diese neuen Techniken werden in eigenen Abschnitten oder Kapiteln eingeführt, etwa die Erkennung von Tupelmustern in relationalen Datenbanken als neue Analyseform in SQL:2016 (Abschnitt 11.6) und erweiterte Programmierschnittstellen als Verbindung von Java mit relationalen Datenbanken (Abschnitt 14.4 zu JPA: Java Persistence API). Stark erweitert wurden im Bereich des Datenschutzes Anonymitätsmaße und die Prinzipien der datensparsamen Anfrageverarbeitung (Abschnitt...