Detailseite
ReProVide: Query-Optimierung und Near-Data-Processing auf rekonfigurierbaren SoCs für Big Data Analyse
Antragsteller
Professor Dr.-Ing. Richard Lenz, seit 10/2022; Professor Dr.-Ing. Jürgen Teich; Dr.-Ing. Stefan Wildermann
Fachliche Zuordnung
Sicherheit und Verlässlichkeit, Betriebs-, Kommunikations- und verteilte Systeme
Rechnerarchitektur, eingebettete und massiv parallele Systeme
Rechnerarchitektur, eingebettete und massiv parallele Systeme
Förderung
Förderung seit 2017
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 361498444
Die schnelle und energieeffiziente Analyse von Petabytes an Daten erfordert eine massiv parallele Verarbeitung bereits an der Datenquelle. Das Ziel des ReProVide-Projekts ist es, neuartige FPGA-basierte Lösungen zur intelligenten Speicherung und quellnahen Datenverarbeitung zusammen mit neuartigen Optimierungstechniken bereitzustellen, die die Geschwindigkeit und Rekonfigurierbarkeit von FPGA-Hardware für die skalierbare und leistungsfähige Reduktion großer Datenmengen nutzen. In Phase I haben wir die dafür notwendigen Grundlagen geschaffen, insbesondere einen FPGA-basierten Architekturentwurf für rekonfigurierbare Data-Provider-Units (RPUs). RPUs bieten direkte Schnittstellen zu einer Vielzahl von Speichertypen (wie SSDs). Die Architektur ermöglicht die Ausführung von Software, aber auch das dynamische Laden von anfragespezifische Hardware-Beschleunigern durch dynamische Hardware-Rekonfiguration des FPGAs. Für die Integration von RPUs in ein DBMS wurden neue Kostenmodelle entwickelt, die die Eigenschaften eines RPU-Systems berücksichtigen. Wir haben eine neuartige hierarchische (mehrstufige) Abfrage-Optimierungstechnik erfunden, um zu entscheiden, a) welche Operationen sich lohnen, einer RPU zugeordnet zu werden (Query Partitioning) und b) wie die zugeordneten (Sub-)Abfragen oder Datenbankoperatoren auf der RPU eingesetzt und ausgeführt werden sollen (Query Placement). Der Abfrageoptimierer teilt sich die Arbeit zwischen dem globalen Optimierer des DBMS und einem architekturspezifischen lokalen Optimierer, der auf dem CPU-System einer RPU läuft. In der zweiten Phase sind unsere Forschungsziele folgende: 1.) Datenstromverarbeitung: RPUs könnten auch für die Filterung von Datenströmen vielfältige Vorteile bieten. Hier muss eine Fülle grundlegend neuer Hardwarekonzepte zur Unterstützung nicht- relationaler und vor allem von Datenstromoperatoren untersucht werden. Angestrebt werden RPUs, die für eine viel vielfältigere Klasse von Aufgaben einsetzbar sind, einschließlich Fensteroperationen und Datenvorbereitungsfunktionen. 2.) Skalierbarkeit: Die Benutzerinteraktion mit modernen Datenbanken umfasst in der Regel nicht nur eine, sondern eine Abfolge von Abfragen auf relationalen und nicht standardisierten Daten (Anfragesequenzen). Gleichzeitig laufen mehrere Anwendungen gleichzeitig. Wir werden einen RPU-Cluster mit acht Knoten entwerfen, der an Netzwerk und Speicher angeschlossen ist und die verteilte und parallele Datenverarbeitung auf großen Datenbanken und Datenströmen ermöglicht. Dies erfordert Konzepte zur Datenpartitionierung sowie neuartige Techniken zur Anfrageoptimierung unter Nutzung von Informationen über Anfragesequenzen. 3.) Demonstrator: Als Testplattform und Nachweis der Vorteile des ReProVide-Ansatzes im Allgemeinen und eines FPGA-basierten RPU-Clusters im Besonderen wollen wir sowohl analytisch als auch experimentell die Margen der Energieeinsparungen bewerten, die durch eine datennahe Verarbeitung möglich werden.
DFG-Verfahren
Schwerpunktprogramme
Ehemaliger Antragsteller
Professor Dr.-Ing. Klaus Meyer-Wegener, bis 10/2022