TU Darmstadt / ULB / TUprints

Data-intensive Systems on Modern Hardware : Leveraging Near-Data Processing to Counter the Growth of Data

Vinçon, Tobias (2022)
Data-intensive Systems on Modern Hardware : Leveraging Near-Data Processing to Counter the Growth of Data.
Technische Universität Darmstadt
doi: 10.26083/tuprints-00023016
Ph.D. Thesis, Primary publication, Publisher's Version

[img] Text
Thesis_TobiasVincon.pdf
Copyright Information: CC BY-NC-ND 4.0 International - Creative Commons, Attribution NonCommercial, NoDerivs.

Download (11MB)
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Data-intensive Systems on Modern Hardware : Leveraging Near-Data Processing to Counter the Growth of Data
Language: German
Referees: Koch, Prof. Dr. Andreas ; Teubner, Prof. Dr. Jens ; Petrov, Prof. Dr. Ilia
Date: 2022
Place of Publication: Darmstadt
Collation: xxiv, 225 Seiten
Date of oral examination: 8 December 2022
DOI: 10.26083/tuprints-00023016
Abstract:

Over the last decades, a tremendous change toward using information technology in almost every daily routine of our lives can be perceived in our society, entailing an incredible growth of data collected day-by-day on Web, IoT, and AI applications.

At the same time, magneto-mechanical HDDs are being replaced by semiconductor storage such as SSDs, equipped with modern Non-Volatile Memories, like Flash, which yield significantly faster access latencies and higher levels of parallelism. Likewise, the execution speed of processing units increased considerably as nowadays server architectures comprise up to multiple hundreds of independently working CPU cores along with a variety of specialized computing co-processors such as GPUs or FPGAs.

However, the burden of moving the continuously growing data to the best fitting processing unit is inherently linked to today’s computer architecture that is based on the data-to-code paradigm. In the light of Amdahl's Law, this leads to the conclusion that even with today's powerful processing units, the speedup of systems is limited since the fraction of parallel work is largely I/O-bound.

Therefore, throughout this cumulative dissertation, we investigate the paradigm shift toward code-to-data, formally known as Near-Data Processing (NDP), which relieves the contention on the I/O bus by offloading processing to intelligent computational storage devices, where the data is originally located.

Firstly, we identified Native Storage Management as the essential foundation for NDP due to its direct control of physical storage management within the database. Upon this, the interface is extended to propagate address mapping information and to invoke NDP functionality on the storage device. As the former can become very large, we introduce Physical Page Pointers as one novel NDP abstraction for self-contained immutable database objects.

Secondly, the on-device navigation and interpretation of data are elaborated. Therefore, we introduce cross-layer Parsers and Accessors as another NDP abstraction that can be executed on the heterogeneous processing capabilities of modern computational storage devices. Thereby, the compute placement and resource configuration per NDP request is identified as a major performance criteria. Our experimental evaluation shows an improvement in the execution durations of 1.4x to 2.7x compared to traditional systems. Moreover, we propose a framework for the automatic generation of Parsers and Accessors on FPGAs to ease their application in NDP.

Thirdly, we investigate the interplay of NDP and modern workload characteristics like HTAP. Therefore, we present different offloading models and focus on an intervention-free execution. By propagating the Shared State with the latest modifications of the database to the computational storage device, it is able to process data with transactional guarantees. Thus, we achieve to extend the design space of HTAP with NDP by providing a solution that optimizes for performance isolation, data freshness, and the reduction of data transfers. In contrast to traditional systems, we experience no significant drop in performance when an OLAP query is invoked but a steady and 30% faster throughput.

Lastly, in-situ result-set management and consumption as well as NDP pipelines are proposed to achieve flexibility in processing data on heterogeneous hardware. As those produce final and intermediary results, we continue investigating their management and identified that an on-device materialization comes at a low cost but enables novel consumption modes and reuse semantics. Thereby, we achieve significant performance improvements of up to 400x by reusing once materialized results multiple times.

Alternative Abstract:
Alternative AbstractLanguage

Über die letzten Jahrzehnte erkennt man in dem täglichen Leben unserer Gesellschaft eine gewaltige Veränderung hin zu der Nutzung von Informationstechnologie, welche einen enormen Anstieg an gesammelten Daten aus Web, IoT und KI Applikationen nach sich zieht.

Zeitgleich werden magnet-mechanische HDDs durch Halbleiterspeicher wie SSDs ersetzt, welche durch ihren modernen nicht-flüchtigen Speicher signifikant schnellere Zugriffszeiten als auch einen höheren Parallelismus aufweisen. Ebenfalls steigt die Ausführungsgeschwindigkeit der Recheneinheiten erheblich, da heutige Serverarchitekturen bis zu mehreren Hundert unabhängig arbeitenden CPU Kernen zusammen mit einer Vielzahl an spezialisierten Co-Prozessoren wie GPUs oder FPGAs aufweisen.

Allerdings ist die Belastung durch die Übertragung der stetig wachsenden Daten hin zu den bestmöglichen Verarbeitungseinheiten inhärent an die heutige Computerarchitektur gekoppelt, welche auf dem Prinzip Daten-bei-Verarbeitungseinheit basiert. Unter Berücksichtigung des Prinzips von Amdahl lässt sich schlussfolgern, dass selbst mit den heutigen leistungsstarken Recheneinheiten eine Beschleunigung der Systeme limitiert ist, da der Anteil an zu parallelisierender Arbeit stark an I/O gebunden ist.

Im Rahmen dieser kumulativen Dissertation untersuchen wir daher den Wechsel zum Verarbeitungseinheit-zu-Daten Prinzip, bekannt als Near-Data Processing (NDP), welches die Belastung vom I/O Bus nimmt, indem die Verarbeitung auf intelligente rechengestützte Speichergeräte ausgelagert wird, wo sich die Daten ursprünglich befinden.

Zunächst identifizieren wir Native Storage Management als essenzieller Grundbaustein für NDP, da es direkt den physikalischen Speicherbereich zentral innerhalb der Datenbank verwaltet. Darauf aufbauend wird die Schnittstelle zum Versenden von Adressverwaltungsinformationen und um Aufrufmöglichkeiten von NDP Funktionalitäten erweitert. Da das Erstere sehr groß werden kann, führen wir Physical Page Pointers als eine neuartige NDP Abstraktion für abgeschlossene, unveränderbare Datenbankobjekte ein.

Zum Zweiten wird die Navigation und Interpretation von Daten auf dem Gerät ausgearbeitet. Dabei führen wir schichtübergreifende Parsers und Accessors als eine weitere NDP Abstraktion ein, welche auf den heterogenen Verarbeitungsmöglichkeiten von modernen rechenfähigen Speichergeräten ausgeführt werden können. Dadurch ist die Platzierung der Verarbeitung und die Konfiguration der Ressourcen pro NDP Anfrage als ein wesentliches Leistungskriterium identifiziert worden. Unsere experimentelle Evaluierung ergibt eine Verbesserung der Ausführungszeit von 1,4x bis zu 2,7x verglichen mit traditionellen Systemen. Darüber hinaus schlagen wir ein Framework zur automatischen Generierung von Parsers und Accessors für FPGAs vor, um deren Anwendung in NDP zu vereinfachen.

Zum Dritten untersuchen wir das Zusammenspiel von NDP und modernen Arbeitslastcharakteristiken wie HTAP. Dafür präsentieren wir verschiedene Auslagerungsmodelle und fokussieren auf eine ununterbrochene Ausführung. Durch das Verschicken des Shared State mit den jüngsten Änderungen der Datenbank an das rechengestützte Speichergerät ist dieses in der Lage, Daten mit transaktionalen Garantien zu verarbeiten. Somit erreichen wir auch eine Erweiterung des HTAP Gestaltungsraums durch NDP, indem wir eine Lösung aufzeigen, die sowohl auf Leistungsisolation, Neuheitswert der Daten als auch die Reduktion von Datenübertragungen optimiert. Im Gegensatz zu traditionellen Systemen erleben wir keinen signifikanten Leistungsrückgang, wenn eine OLAP Anfrage aufgerufen wird, sondern einen stabilen und 30% schnelleren Durchsatz.

Zuletzt schlagen wir in-situ Ergebnisverwaltung und -Konsum sowie NDP Pipelines zur flexiblen Datenverarbeitung auf heterogener Hardware vor. Da diese End- als auch Zwischenergebnisse produzieren, untersuchen wir deren Verwaltung und identifizieren, dass eine Materialisierung auf dem Gerät mit nur geringen Kosten verknüpft ist, aber neuartige Konsummodelle und Semantiken in der Wiederverwendung ermöglicht. Durch die mehrfache Wiederverwendung von einmal materialisierten Ergebnisse erreichen wir eine signifikante Leistungsverbesserung von bis zu 400x.

German
Uncontrolled Keywords: Near-data processing, In-situ processing, database architecture, computational storage, growth of data, storage management, HTAP, result-set handling
Status: Publisher's Version
URN: urn:nbn:de:tuda-tuprints-230162
Classification DDC: 000 Generalities, computers, information > 004 Computer science
Divisions: 20 Department of Computer Science > Embedded Systems and Applications
Date Deposited: 23 Dec 2022 13:39
Last Modified: 05 Jan 2023 07:02
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/23016
PPN: 503271764
Export:
Actions (login required)
View Item View Item