Query Optimisation and Near-Data Processing on Reconfigurable SoCs for Big Data Analysis (Phase II) (ReProVide II INF6)

Third party funded individual grant


Acronym: ReProVide II INF6

Start date : 01.08.2021

End date : 31.07.2024

Website: https://www.dfg-spp2037.de/me943-9/


Project details

Scientific Abstract

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 Phase II 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.

Involved:

Contributing FAU Organisations:

Funding Source

Research Areas