Zum Hauptinhalt springen

Tutorials

Invited Tutorial 1: Efficient Execution of UDF Queries in Modern Data Engines

User-defined functions (UDFs) have been widely used to overcome the expressivity limitations of SQL and complement its declarative nature with functional capabilities. UDFs are particularly useful in today’s applications that involve complex data analytics and machine learning algorithms and logic. However, UDFs pose significant performance challenges in query processing and optimization, largely due to the mismatch of the UDF execution and SQL processing environments. In this tutorial, we present state-of-the-art methods and systems towards efficient execution of UDF queries (i.e., SQL queries with UDFs), including a broad scope of solutions ranging from algebraic, cost-based optimization to low level, physical query optimization, compilation, and execution. We also describe limitations and open issues, and discuss promising future research directions.

Speakers: Alkis Simitsis (Athena Research Center), Yannis Foufoulas (Athena Research Center)

Invited Tutorial 2: Closing the Gap between Theory and Practice in Query Optimization

Query optimization, and in particular the problem of join ordering, has a huge impact on the performance of database systems. Accordingly, it has been widely studied in the literature, but there is a, perhaps surprising, gap between techniques that have been proposed in venues like PODS and the techniques that are used in typical systems. There are several reasons for that, but one of them is that many theoretical approaches look at asymptotic complexity, while systems tends to primarily care about the performance of a query for a given database instance in absolute terms. This tutorial looks at the differences and tries to bring both worlds closer together.

Speaker: Thomas Neumann (TU Munich)