Database-Supported XML Processors

Relationale Datenbanksysteme (RDBMS) wurden ursprünglich entworfen, um tabellenstrukturierte Daten halten und anfragen zu können. In dieser Vorlesung werden wir untersuchen, wie sich diese Systeme in XML-, XPath- und -XQuery-Prozessoren verwandeln lassen, die Massen von XML-Daten effizienter verarbeiten können, als die weitaus meisten verbreiteteten XML-Prozessoren.

Diese Technologie basiert vor allem auf “cleveren” Abbildungen des XQuery-Datenmodells (geordnete Bäume und Sequenzen) und der XQuery-Semantik auf die tabellenorientierten Strukturen und Anfragesprachen (relationale Algebra und SQL) der RDBMS.

Wir werden dazu u.a.,

  • die Transformation von Bäumen (XML-Daten) in Tabellenstrukturen,
  • die Übersetzung und Auswertung von XPath-Anfragen auf diesen Tabellen,
  • mögliche Änderungen am RDBMS-Kernel, die diese Operationen effizient machen, und
  • die Compilation von XQuery in relationale Programme (relationale Algebra und SQL) und deren Auswertung

untersuchen.

Es werden sich teilweise ungewöhnliche und sehr interessante Sichten auf die Anfrageübersetzung und -verarbeitung, Indexstrukturen, etc. in RDBMS ergeben. Parallel dazu werden wir XML, die Anfragesprachen XPath und XQuery, und XML Schema genauestens kennenlernen.

Diese Veranstaltung wird keine “Trockenübung” sein. Am Lehrstuhl Datenbanksysteme konstruieren wir den XQuery-Compiler Pathfinder, der Code zur direkten Ausführung auf verschiedenen RDBMS erzeugen kann. Wir werden dieses System für die praktische Arbeit in Vorlesung und Übung einsetzen. Übrigens: die Arbeit an Pathfinder läuft unter einer Open-Source-Lizenz. Bei Interesse sind die Teilnehmer dieser Vorlesung eingeladen, den Compiler und sein Laufzeitsystem genau unter die Lupe zu nehmen.

Weitere Literatur

Sind die Materialien des World Wide Web Consortiums (W3C) zu den XML-Standards (Links im Skript), wiss. Artikel zu Pathfinder sowie die Bücher

Semesterwochenstunden / Leistungspunkte / Hörerkreis

  • 2 SWS Vorlesung
  • 2 SWS Übung zur Vorlesung
  • 6 LP (Modul Pr)
  • Studierende im Hauptstudium Diplom Informatik, Bioinformatik und Lehramt Informatik
  • Studierende in Informatik-Masterstudiengängen
  • Studierende in Informatik-Bachelorstudiengängen
  • Teilnehmer, die einen Übungsschein benötigen, müssen im Laufe des Semesters jeweils drei ausgewählte Aufgaben in der Übung vorrechnen. Diese Aufgaben werden auf den Übungszetteln gesondert markiert.

Voraussetzungen

Modul Datenbanksysteme oder vgl. Vorkenntnisse