Advancing Learned Cost Models For Modern Data Systems
Advancing Learned Cost Models For Modern Data Systems
Data systems form the backbone of every modern IT architecture by storing and processing vast amounts of data. Depending on the workload, the users, and their performance and scalability requirements, modern data systems typically need to be adapted and optimized for high performance, which is a challenging task. However, the way of adapting and optimizing data systems has changed fundamentally in recent years, driven by the megatrend of cloud computing. While companies used to host and optimize their data systems themselves, data systems such as Database Management Systems (DBMSs) or Distributed Stream Processing Systems (DSPSs) are now increasingly being deployed in cloud environments. This trend shifts the task of system adaptation and optimization to the cloud providers, but in fact makes it even more challenging due to the vast diversity of customers and workloads that need to be considered.
At the same time, the trend towards the cloud is a unique opportunity, as it enables cloud providers to collect data from their wide variety of customers, enabling the use of machine learning to adapt and improve data systems automatically. The concept of learned database components was introduced to either optimize or fully replace traditional data system components with the help of machine learning. At the core of this idea, learned database components are trained on previous customer workload traces and, by that, are expected to achieve higher performance than traditional components.
In this thesis, we focus on cost models that serve as a core building block for various system optimizations, such as query optimization, workload and query scheduling or resource admission. Recently, Learned Cost Models (LCMs) were proposed that predict execution costs of a specific database query or a system configuration with the help of machine learning. A core requirement of LCMs is to make precise predictions even for queries or databases that differ significantly from their training data, as queries and databases in real-world data systems constantly evolve. For this reason, recent research on LCMs has primarily focused on two main aspects: improving their accuracy and increasing their generalizability. As a consequence, LCMs were able to provide highly accurate predictions and outperformed traditional approaches substantially – even for scenarios that substantially differ from the training data.
However, in this thesis, we argue that the potential of LCMs remains underexploited and that significant limitations persist with respect to their functionality and evaluation, which we outline below. Critically, these limitations significantly hinder their practical applicability for various optimization tasks. For this reason, we provide four contributions to overcome existing limitations of LCMs and, by that, advance LCMs for modern data systems.
First, existing LCMs are unable to solve various optimization tasks, such as the operator placement on heterogeneous hardware, which is, however, important in distributed systems, IoT, and streaming scenarios. The reason is that they do not yet take hardware and network resources into account, which affect execution costs significantly. Thus, in the first contribution of this dissertation, we first extend LCMs towards Distributed Stream Processing System (DSPS), and then towards the consideration of heterogeneous hardware resources. We propose COSTREAM, a novel LCM that takes hardware and network resources into account and, by that, enables the optimized placement of query operators to the hardware plane. By precisely estimating query execution costs for DSPS, COSTREAM is able to identify optimized initial operator placements that come with low processing latencies and, by that, improves system performance substantially by providing speed-ups of up to 21×.
Second, existing LCMs are unable to take user-defined functions (UDFs) into account. UDFs enable users to express complex or domain-specific computational logic and are increasingly used to analyze and process data within a DBMS. However, as UDFs contain arbitrary user code, query optimizers fail to estimate their effects on a query plan. As a result, they treat UDFs as black boxes and rely on static optimization rules, which often leads to significant performance degradation. Therefore, in the second contribution of this dissertation, we propose to extend LCMs for UDFs. We introduce GRACEFUL, a novel LCM that considers UDFs during cost estimation by leveraging Graph Neural Networks (GNN). Thus, it allows an informed decision about the positioning of UDFs in the physical query plan. Hence, the use of GRACEFUL leads to substantial performance improvements of queries with UDFs, such as speed-ups of up to 50×.
Third, the extent to which the fundamental task of query optimization in DBMSs benefits from the high accuracy of LCMs in terms of system performance has not yet been investigated. Therefore, in the third contribution of this dissertation, we present a comprehensive evaluation study that analyzes seven current LCMs and evaluates in detail how good they really are for query optimization. As a central capability, we investigate how well LCMs are able to select the optimal plan from different candidates and rank plan candidates correctly in fundamental tasks such as join ordering. Our findings indicate that although LCMs are generally capable of learning complex cost functions; they are often still inferior to traditional approaches when selecting optimal execution plans. Therefore, to improve future LCMs, we present recommendations and novel evaluation metrics to improve future LCMs for query optimization.
Finally, given that LCMs are usually based on deep learning architectures, they are typically inexplicable in their prediction and thus exhibit so-called black-box behavior. As a result, it remains unclear how and why exactly LCMs come to a specific prediction, which fundamentally hinders targeted debugging and troubleshooting. Thus, in our fourth contribution, we aim to make LCMs debuggable by explaining their predictions and visualizing what they have really learned. For this, we provide methods, initial results and an interactive demo that facilitate explaining the predictions of LCMs.
Overall, this dissertation presents novel methods and approaches that advance LCMs, address their existing limitations, and unlock their full potential. To enhance their functionality, we propose incorporating heterogeneous hardware resources and UDFs into cost prediction, which demonstrates substantial performance benefits for advanced query optimization problems. To improve the evaluation of LCMs, we conduct a detailed study and introduce novel evaluation metrics and practical recommendations towards making LCMs more applicable for query optimization. Moreover, we apply explainability methods to make the predictions of LCMs more understandable and to enable systematic troubleshooting. Finally, we present and discuss future research directions enabled by this thesis to advance LCMs for modern data systems.
Datensysteme bilden das Rückgrat nahezu jeder modernen IT-Architektur, da sie die zentrale Aufgabe übernehmen, anfallende Datenmengen effizient zu speichern und zu verarbeiten. Allerdings müssen Datensysteme typischerweise je nach Arbeitslast und Anforderungen eines Unternehmens angepasst und optimiert werden, um die erforderliche Systemleistung und Skalierbarkeit zu erreichen, was eine anspruchsvolle Aufgabe darstellt. Die Art und Weise, wie diese Anpassung und Optimierung von Datensystemen vorgenommen wird, hat sich jedoch in den letzten Jahren, vor allem getrieben durch den Trend des Cloud Computings grundlegend verändert. Während viele Unternehmen früher ihre Datensysteme vorrangig selbst betrieben und optimiert haben, werden moderne Datensysteme wie z.B. relationale Datenbanken (RDBMS) oder verteilte Stream-Processing-Systeme (DSPS) heute zunehmend in Cloud-Umgebungen betrieben. Dieser Trend verlagert die Aufgabe der Systemanpassung und -optimierung auf die Cloud-Anbieter, macht sie gleichzeitig aber aufgrund der großen Vielfalt von Kunden und Arbeitslasten mit unterschiedlichen Leistungsanforderungen noch komplexer.
Gleichzeitig stellt der Trend zur Cloud eine einzigartige Chance für Cloud-Anbieter dar, da er es ihnen erlaubt, Daten von einer Vielzahl von Kunden und deren Workloads zu erheben, was den Einsatz von maschinellem Lernen zur automatischen Anpassung und Verbesserung von Datensystemen ermöglicht. Hier wurden in der Forschung gelernte Datenbankkomponenten vorgeschlagen, die darauf abzielen, traditionelle Systemkomponenten mithilfe von maschinellem Lernen zu optimieren oder sogar vollständig zu ersetzen. Der Kern dieser Idee ist, dass gelernte Datenbankkomponenten auf Grundlage vergangener Arbeitslasten von Kunden trainiert werden und diese dadurch eine höhere Leistung als klassische Komponenten erzielen.
Diese Dissertation fokussiert sich auf Kostenmodelle, die als Kernbaustein für verschiedene Systemoptimierungen dienen, wie z.B. Query-Optimierung, Workload- und Abfrageplanung oder Ressourcenzuweisung. In der Forschung wurden kürzlich verschiedene gelernte Kostenkodelle (LCMs) vorgeschlagen, die darauf abzielen, die Ausführungskosten einer bestimmten Datenbankabfrage oder einer bestimmten Systemkonfiguration durch ein gelerntes Modell vorherzusagen und dadurch verschiedene Optimierungen zu ermöglichen. Eine zentrale Anforderung an LCMs ist es, präzise Vorhersagen auch für Abfragen oder Datenbanken zu treffen, die sich erheblich von ihren Trainingsdaten unterscheiden, da sich Abfragen und Datenbanken in realen Datensystemen ständig weiterentwickeln. Aus diesem Grund hat sich die bisherige Forschung zu LCMs vorrangig darauf konzentriert, einerseits ihre Genauigkeit zu verbessern, andererseits dabei auch ihre Verallgemeinbarkeit zu erhöhen. Infolgedessen wurden in jüngster Zeit beträchtliche Leistungen in Form von hochpräzisen Vorhersagen gezeigt und somit traditionelle Ansätze deutlich übertroffen - selbst für Szenarien, die sich deutlich von den Trainingsdaten unterscheiden.
Der zentrale Befund dieser Dissertation ist jedoch, dass das Potenzial von LCMs derzeit nicht voll ausgeschöpft wird, da hinsichtlich ihrer Funktionalität und Evaluation noch grundlegende Einschränkungen bestehen, die wir im Folgenden zusammenfassen. Diese Limitationen schränken die praktische Anwendbarkeit von LCMs für verschiedene Optimierungsaufgaben erheblich ein. Aus diesem Grund stellen wir vier Beiträge vor, um diese bestehenden Einschränkungen zu überwinden und damit LCMs für moderne Datensysteme weiter zu entwickeln und ihre Verwendbarkeit umfassend zu ermöglichen.
Erstens sind bestehende LCMs noch nicht in der Lage, verschiedene Optimierungsaufgaben zu lösen, wie z. B. die Platzierung von Operatoren auf heterogener Hardware, die jedoch in verteilten Systemen, IoT- und Streaming-Szenarien wichtig ist. Der Grund dafür ist, dass diese Modelle nicht in der Lage sind, Hardware- und Netzwerkressourcen zu berücksichtigen, welche die Ausführungskosten erheblich beeinflussen. Daher erweitern wir im ersten Beitrag dieser Dissertation zunächst LCMs für die Verwendung in DSPS und dann in Richtung der Berücksichtigung heterogener Hardwareressourcen. Insbesondere schlagen wir COSTREAM vor, ein neuartiges LCM, das Hardware- und Netzwerkressourcen explizit berücksichtigt und damit die optimierte Platzierung von Abfrageoperatoren auf der Hardwareebene ermöglicht. Durch die genaue Abschätzung der Kosten für die Ausführung von Abfragen für DSPS kann COSTREAM optimierte initiale Operatorplatzierungen identifizieren, die bis zu 21-mal geringeren Verarbeitungslatenzen einhergehen und dadurch die Systemleistung erheblich verbessern.
Zweitens sind bestehende LCMs nicht in der Lage, benutzerdefinierte Funktionen (UDFs) zu berücksichtigen. UDFs ermöglichen es Nutzern, komplexe oder domänenspezifische Berechnungslogik auszudrücken und werden zunehmend verwendet, um Daten innerhalb eines DBMS zu analysieren und zu verarbeiten. Da UDFs jedoch beliebigen Nutzercode enthalten können, sind existierende Query-Optimierer nicht in der Lage, deren Auswirkungen auf einen Queryplan zuverlässig abzuschätzen. Daher behandeln sie UDFs als Black-Box und verlassen sich auf statische Optimierungsregeln, was häufig zu erheblichen Leistungseinbußen führt. Wir schlagen daher im zweiten Beitrag dieser Dissertation vor, LCMs für UDFs zu erweitern. Dafür präsentieren wir GRACEFUL, ein neuartiges LCM, welches UDFs bei der Kostenschätzung berücksichtigt. GRACEFUL ermöglicht durch Kostenschätzungen eine fundierte Entscheidung über die Positionierung von UDFs im physikalischen Abfrageplan. Somit führt die Verwendung von GRACEFUL zu signifikanten Leistungsverbesserungen von Abfragen mit UDFs und ermöglicht Geschwindigkeitssteigerungen von bis zu 50x.
Drittens wurde bisher noch nicht untersucht, in welchem Maße die zentrale Aufgabe der Query-Optimierung in RDBMS von der hohen Genauigkeit von LCMs im Hinblick auf die Systemleistung profitiert. Daher stellen wir im dritten Beitrag dieser Dissertation eine umfassende Evaluierungsstudie vor, welche sieben aktuelle LCMs vergleichend analysiert und detailliert evaluiert, wie gut diese sich für die Query-Optimierung wirklich eignen. Als zentrale Eigenschaft untersuchen wir, wie gut LCMs in der Lage sind den optimalen Plan aus verschiedenen Kandidaten auszuwählen, bzw. diese Kandidaten korrekt zu bewerten und fokussieren uns auf grundlegende Optimierungsaufgaben wie z.B. die Bestimmung der Join-Reihenfolge. Unsere Ergebnisse zeigen, dass, obwohl LCMs zwar grundsätzlich in der Lage sind, komplexe Kostenfunktionen zu erlernen, sie bei der Auswahl möglicher Ausführungspläne den traditionellen Ansätzen oft noch unterlegen sind. Um zukünftige LCMs zu verbessern, stellen wir in diesem Beitrag daher begründete Empfehlungen und hilfreiche Bewertungsmetriken vor.
Schließlich ist festzuhalten, dass sich LCMs in der Regel auf Deep-Learning-Architekturen stützen, welche sich in ihrer Vorhersage typischerweise unerklärbar sind und somit ein sogenanntes Black-Box-Verhalten aufweisen. Hierdurch bleibt unklar, wie und warum LCMs genau zu einer bestimmten Vorhersage kommen, was eine zielgerichtete Fehlerbehebung und Verbesserung der Modelle deutlich erschwert. Daher zielen wir im vierten Beitrag dieser Dissertation darauf ab, die Überprüfbarkeit von LCMs zu gewährleisten, indem wir ihre Vorhersagen erklärbar machen und dadurch visualisieren, was sie wirklich gelernt haben. Zu diesem Zweck stellen wir neue Methoden, erste Ergebnisse und eine interaktive Demo vor, die dabei helfen, die Vorhersagen von LCMs zu erklärbar zu machen.
Insgesamt stellen wir in dieser Dissertation neue Ansätze und Methoden vor, um LCMs weiterzuentwickeln, ihre bestehenden Einschränkungen zu überwinden und ihr Potenzial umfassend auszunutzen. Um die begrenzte Funktionalität zu verbessern, schlagen wir vor, heterogene Hardwareressourcen und UDFs in die Kostenvorhersage einzubeziehen, was signifikante Leistungsvorteile für verschiedene fortgeschrittene Probleme in der Query-Optimierung zeigt. Um die Evaluation von LCMs zu verbessern, führen wir eine umfassende Vergleichsstudie im Hinblick auf deren Einsatz für die Query-Optimierung durch und stellen neue Bewertungsmetriken und praktische Empfehlungen vor. Außerdem wenden wir Methoden der Erklärbarkeit an, um die Vorhersagen von LCMs verständlicher zu machen und eine systematische Fehlersuche zu ermöglichen. Abschließend präsentieren und diskutieren wir zukünftige Forschungsrichtungen, die durch diese Dissertation eröffnet werden, um LCMs für moderne Datensysteme weiterzuentwickeln.
