Abstract
Big-data systems have gained significant momentum, and Apache Spark is becoming a de-facto standard for modern data analytics. Spark relies on SQL query compilation to optimize the execution performance of analytical workloads on a variety of data sources. Despite its scalable architecture, Spark's SQL code generation suers from significant runtime overheads related to data access and de-serialization. Such performance penalty can be significant, especially when applications operate on human-readable data formats such as CSV or JSON. In this paper we present a new approach to query compilation that overcomes these limitations by relying on runtime profiling and dynamic code generation. Our new SQL compiler for Spark produces highly-efficient machine code, leading to speedups of up to 4.4x on the TPC-H benchmark with textual-form data formats such as CSV or JSON.
| Original language | English |
|---|---|
| Pages (from-to) | 754-767 |
| Journal | Proceedings of the VLDB Endowment |
| Volume | 13 |
| Issue number | 5 |
| DOIs | |
| Publication status | Published - 2020 |
| Externally published | Yes |
Funding
The work presented in this paper has been supported by Oracle (ERO project 1332) and the Swiss National Science Foundation (project 200020 188688). We thank the VLDB reviewers for their detailed feedback and the VM Research Group at Oracle Labs for their support. Oracle, Java, and HotSpot are trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
| Funders | Funder number |
|---|---|
| VM Research Group at Oracle Labs | |
| Schweizerischer Nationalfonds zur Förderung der Wissenschaftlichen Forschung | 200020 188688 |
Fingerprint
Dive into the research topics of 'Dynamic speculative optimizations for SQL compilation in apache spark'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver