Detailseite
Rekursive Berechnungen auf relationalen Daten
Antragsteller
Professor Dr. Torsten Grust
Fachliche Zuordnung
Datenmanagement, datenintensive Systeme, Informatik-Methoden in der Wirtschaftsinformatik
Softwaretechnik und Programmiersprachen
Softwaretechnik und Programmiersprachen
Förderung
Förderung seit 2023
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 511062611
Bring' Deine Berechnungen nah an die Daten! Dieses uralte Mantra der Datenbankgemeinde formuliert die Erwartung, dass ein SQL-Datenbanksystem mit unmittelbarem Zugang zu den Daten deutlich effizienter agiert als ein externer Prozessor, dem wir die Daten zuerst senden müssten. Der Slogan trifft tatsächlich zu, solange die Berechnungen anfrageartig sind und vor allem Filter, die (Re-)Kombination von Daten, Gruppierung oder Aggregation involvieren. Deutlich weniger klar ist, wie sich komplexe Algorithmen, die oft auf iterativem Kontrollfluss oder Rekursion basieren, mittels genau dieser SQL-Systeme ausführen lassen. Seit der Einführung von SQL:1999 unterstützen moderne Datenbanksysteme tatsächlich Formen von Rekursion. Die dazu eingesetzten SQL-Sprachkonstrukte unterliegen jedoch syntaktischen Restriktionen, basieren auf Semantiken die vielen Entwicklern schwer zugänglich bleiben und zeigen ein ernüchterndes Laufzeitverhalten. In Konsequenz erscheint iteratives oder rekursives SQL oft nicht praktikabel. Projekt RECORD untersucht Compilations- und Implementationstechniken, die (1) die Formulierung von iterativen und rekursiven Algorithmen in lesbarer, kompakter (sogar eleganter) Form ermöglichen und (2) relationale Datenbanksysteme als effiziente und skalierbare Laufzeitsysteme einsetzen, um Berechnungen direkt auf den Daten durchzuführen. Wir adoptieren etablierte Techniken, die originär für (funktionale) Programmiersprachen entwickelt wurden, und adaptieren diese, so dass eine Anwendung auf rekursive SQL-Funktionen und iterative PL/SQL-Prozeduren im imperativen Programmierstil möglich wird. Unser Fokus liegt auf nicht-invasiven Techniken, die existierende Datenbanksysteme nicht auf den Kopf stellen. Wir nehmen uns aber die Freiheit, chirurgische Eingriffe an Systemen vorzunehmen, sofern diese signifikante Laufzeitvorteile versprechen. Es gibt keinen Mangel an daten-intensiven Problemdomänen, deren Bedarf an datenbankgestützten Berechnungen stetig wächst. RECORD wird die grundlegenden Datenstrukturen und Algorithmen dieser Domänen untersuchen, um die eigenen Resultate zu verifizieren und zu zeigen, dass rekursive Berechnungen auf relationalen Daten durchaus praktikabel und effizient sein können.
DFG-Verfahren
Sachbeihilfen