Query Compilation Without Regrets

Engineering high-performance query execution engines is a challenging task. Query compilation provides excellent performance, but at the same time introduces significant system complexity, as it makes the engine hard to build, debug, and maintain. To overcome this complexity, we propose Nautilus, a...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Proceedings of the ACM on management of data 2024-05, Vol.2 (3), p.1-28, Article 165
Hauptverfasser: Grulich, Philipp M., Lepping, Aljoscha P., Nugroho, Dwi P. A., Pandey, Varun, Del Monte, Bonaventura, Zeuch, Steffen, Markl, Volker
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 28
container_issue 3
container_start_page 1
container_title Proceedings of the ACM on management of data
container_volume 2
creator Grulich, Philipp M.
Lepping, Aljoscha P.
Nugroho, Dwi P. A.
Pandey, Varun
Del Monte, Bonaventura
Zeuch, Steffen
Markl, Volker
description Engineering high-performance query execution engines is a challenging task. Query compilation provides excellent performance, but at the same time introduces significant system complexity, as it makes the engine hard to build, debug, and maintain. To overcome this complexity, we propose Nautilus, a framework that combines the ease of use of query interpretation and the performance of query compilation. On the one hand, Nautilus provides an interpretation-based operator interface that enables engineers to implement operators using imperative C++ code to ensure a familiar developer experience. On the other hand, Nautilus mitigates the performance drawbacks of interpretation by introducing a novel trace-based, multi-backend JIT compiler that translates operators into efficient code. As a result, Nautilus bridges the gap between compilation and interpretation and provides the best of both worlds, achieving high performance without sacrificing the productivity of engineers.
doi_str_mv 10.1145/3654968
format Article
fullrecord <record><control><sourceid>acm_cross</sourceid><recordid>TN_cdi_crossref_primary_10_1145_3654968</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>3654968</sourcerecordid><originalsourceid>FETCH-LOGICAL-a848-cb240c5cf71d9c5fa69e6bb3adbe0b44e4c228395d9f9870deb463130552ffff3</originalsourceid><addsrcrecordid>eNpNj81Lw0AUxBdRsNTi3VM89RR9-5ndo4TaCgVRCh7D7uatRpqm7KaH_vdNaSvO5Q3Mj8cMIfcUnigV8pkrKYzSV2TENFe5kgW__udvySSlXwBgRnFq1Ig8fuww7rOya7fN2vZNt8m-mv6n2_XZJ35H7NMduQl2nXByvmOyep2tykW-fJ-_lS_L3Gqhc--YAC99KGhtvAxWGVTOcVs7BCcECs-GGkbWJhhdQI1ODBU4SMnCID4m09NbH7uUIoZqG5vWxn1FoTpuq87bBvLhRFrf_kGX8AB0sUgW</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Query Compilation Without Regrets</title><source>ACM Digital Library Complete</source><creator>Grulich, Philipp M. ; Lepping, Aljoscha P. ; Nugroho, Dwi P. A. ; Pandey, Varun ; Del Monte, Bonaventura ; Zeuch, Steffen ; Markl, Volker</creator><creatorcontrib>Grulich, Philipp M. ; Lepping, Aljoscha P. ; Nugroho, Dwi P. A. ; Pandey, Varun ; Del Monte, Bonaventura ; Zeuch, Steffen ; Markl, Volker</creatorcontrib><description>Engineering high-performance query execution engines is a challenging task. Query compilation provides excellent performance, but at the same time introduces significant system complexity, as it makes the engine hard to build, debug, and maintain. To overcome this complexity, we propose Nautilus, a framework that combines the ease of use of query interpretation and the performance of query compilation. On the one hand, Nautilus provides an interpretation-based operator interface that enables engineers to implement operators using imperative C++ code to ensure a familiar developer experience. On the other hand, Nautilus mitigates the performance drawbacks of interpretation by introducing a novel trace-based, multi-backend JIT compiler that translates operators into efficient code. As a result, Nautilus bridges the gap between compilation and interpretation and provides the best of both worlds, achieving high performance without sacrificing the productivity of engineers.</description><identifier>ISSN: 2836-6573</identifier><identifier>EISSN: 2836-6573</identifier><identifier>DOI: 10.1145/3654968</identifier><language>eng</language><publisher>New York, NY, USA: ACM</publisher><subject>Data management systems ; Database management system engines ; DBMS engine architectures ; Information systems</subject><ispartof>Proceedings of the ACM on management of data, 2024-05, Vol.2 (3), p.1-28, Article 165</ispartof><rights>ACM</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-a848-cb240c5cf71d9c5fa69e6bb3adbe0b44e4c228395d9f9870deb463130552ffff3</cites><orcidid>0009-0007-5035-6493 ; 0000-0002-4082-7788 ; 0000-0002-1314-9061 ; 0000-0001-5361-7715 ; 0009-0000-5654-411X ; 0000-0001-9497-2895 ; 0009-0009-0964-026X</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktopdf>$$Uhttps://dl.acm.org/doi/pdf/10.1145/3654968$$EPDF$$P50$$Gacm$$Hfree_for_read</linktopdf><link.rule.ids>314,780,784,2282,27924,27925,40196,76228</link.rule.ids></links><search><creatorcontrib>Grulich, Philipp M.</creatorcontrib><creatorcontrib>Lepping, Aljoscha P.</creatorcontrib><creatorcontrib>Nugroho, Dwi P. A.</creatorcontrib><creatorcontrib>Pandey, Varun</creatorcontrib><creatorcontrib>Del Monte, Bonaventura</creatorcontrib><creatorcontrib>Zeuch, Steffen</creatorcontrib><creatorcontrib>Markl, Volker</creatorcontrib><title>Query Compilation Without Regrets</title><title>Proceedings of the ACM on management of data</title><addtitle>ACM PACMMOD</addtitle><description>Engineering high-performance query execution engines is a challenging task. Query compilation provides excellent performance, but at the same time introduces significant system complexity, as it makes the engine hard to build, debug, and maintain. To overcome this complexity, we propose Nautilus, a framework that combines the ease of use of query interpretation and the performance of query compilation. On the one hand, Nautilus provides an interpretation-based operator interface that enables engineers to implement operators using imperative C++ code to ensure a familiar developer experience. On the other hand, Nautilus mitigates the performance drawbacks of interpretation by introducing a novel trace-based, multi-backend JIT compiler that translates operators into efficient code. As a result, Nautilus bridges the gap between compilation and interpretation and provides the best of both worlds, achieving high performance without sacrificing the productivity of engineers.</description><subject>Data management systems</subject><subject>Database management system engines</subject><subject>DBMS engine architectures</subject><subject>Information systems</subject><issn>2836-6573</issn><issn>2836-6573</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2024</creationdate><recordtype>article</recordtype><recordid>eNpNj81Lw0AUxBdRsNTi3VM89RR9-5ndo4TaCgVRCh7D7uatRpqm7KaH_vdNaSvO5Q3Mj8cMIfcUnigV8pkrKYzSV2TENFe5kgW__udvySSlXwBgRnFq1Ig8fuww7rOya7fN2vZNt8m-mv6n2_XZJ35H7NMduQl2nXByvmOyep2tykW-fJ-_lS_L3Gqhc--YAC99KGhtvAxWGVTOcVs7BCcECs-GGkbWJhhdQI1ODBU4SMnCID4m09NbH7uUIoZqG5vWxn1FoTpuq87bBvLhRFrf_kGX8AB0sUgW</recordid><startdate>20240529</startdate><enddate>20240529</enddate><creator>Grulich, Philipp M.</creator><creator>Lepping, Aljoscha P.</creator><creator>Nugroho, Dwi P. A.</creator><creator>Pandey, Varun</creator><creator>Del Monte, Bonaventura</creator><creator>Zeuch, Steffen</creator><creator>Markl, Volker</creator><general>ACM</general><scope>AAYXX</scope><scope>CITATION</scope><orcidid>https://orcid.org/0009-0007-5035-6493</orcidid><orcidid>https://orcid.org/0000-0002-4082-7788</orcidid><orcidid>https://orcid.org/0000-0002-1314-9061</orcidid><orcidid>https://orcid.org/0000-0001-5361-7715</orcidid><orcidid>https://orcid.org/0009-0000-5654-411X</orcidid><orcidid>https://orcid.org/0000-0001-9497-2895</orcidid><orcidid>https://orcid.org/0009-0009-0964-026X</orcidid></search><sort><creationdate>20240529</creationdate><title>Query Compilation Without Regrets</title><author>Grulich, Philipp M. ; Lepping, Aljoscha P. ; Nugroho, Dwi P. A. ; Pandey, Varun ; Del Monte, Bonaventura ; Zeuch, Steffen ; Markl, Volker</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a848-cb240c5cf71d9c5fa69e6bb3adbe0b44e4c228395d9f9870deb463130552ffff3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2024</creationdate><topic>Data management systems</topic><topic>Database management system engines</topic><topic>DBMS engine architectures</topic><topic>Information systems</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Grulich, Philipp M.</creatorcontrib><creatorcontrib>Lepping, Aljoscha P.</creatorcontrib><creatorcontrib>Nugroho, Dwi P. A.</creatorcontrib><creatorcontrib>Pandey, Varun</creatorcontrib><creatorcontrib>Del Monte, Bonaventura</creatorcontrib><creatorcontrib>Zeuch, Steffen</creatorcontrib><creatorcontrib>Markl, Volker</creatorcontrib><collection>CrossRef</collection><jtitle>Proceedings of the ACM on management of data</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Grulich, Philipp M.</au><au>Lepping, Aljoscha P.</au><au>Nugroho, Dwi P. A.</au><au>Pandey, Varun</au><au>Del Monte, Bonaventura</au><au>Zeuch, Steffen</au><au>Markl, Volker</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Query Compilation Without Regrets</atitle><jtitle>Proceedings of the ACM on management of data</jtitle><stitle>ACM PACMMOD</stitle><date>2024-05-29</date><risdate>2024</risdate><volume>2</volume><issue>3</issue><spage>1</spage><epage>28</epage><pages>1-28</pages><artnum>165</artnum><issn>2836-6573</issn><eissn>2836-6573</eissn><abstract>Engineering high-performance query execution engines is a challenging task. Query compilation provides excellent performance, but at the same time introduces significant system complexity, as it makes the engine hard to build, debug, and maintain. To overcome this complexity, we propose Nautilus, a framework that combines the ease of use of query interpretation and the performance of query compilation. On the one hand, Nautilus provides an interpretation-based operator interface that enables engineers to implement operators using imperative C++ code to ensure a familiar developer experience. On the other hand, Nautilus mitigates the performance drawbacks of interpretation by introducing a novel trace-based, multi-backend JIT compiler that translates operators into efficient code. As a result, Nautilus bridges the gap between compilation and interpretation and provides the best of both worlds, achieving high performance without sacrificing the productivity of engineers.</abstract><cop>New York, NY, USA</cop><pub>ACM</pub><doi>10.1145/3654968</doi><tpages>28</tpages><orcidid>https://orcid.org/0009-0007-5035-6493</orcidid><orcidid>https://orcid.org/0000-0002-4082-7788</orcidid><orcidid>https://orcid.org/0000-0002-1314-9061</orcidid><orcidid>https://orcid.org/0000-0001-5361-7715</orcidid><orcidid>https://orcid.org/0009-0000-5654-411X</orcidid><orcidid>https://orcid.org/0000-0001-9497-2895</orcidid><orcidid>https://orcid.org/0009-0009-0964-026X</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2836-6573
ispartof Proceedings of the ACM on management of data, 2024-05, Vol.2 (3), p.1-28, Article 165
issn 2836-6573
2836-6573
language eng
recordid cdi_crossref_primary_10_1145_3654968
source ACM Digital Library Complete
subjects Data management systems
Database management system engines
DBMS engine architectures
Information systems
title Query Compilation Without Regrets
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-05T14%3A24%3A19IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-acm_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Query%20Compilation%20Without%20Regrets&rft.jtitle=Proceedings%20of%20the%20ACM%20on%20management%20of%20data&rft.au=Grulich,%20Philipp%20M.&rft.date=2024-05-29&rft.volume=2&rft.issue=3&rft.spage=1&rft.epage=28&rft.pages=1-28&rft.artnum=165&rft.issn=2836-6573&rft.eissn=2836-6573&rft_id=info:doi/10.1145/3654968&rft_dat=%3Cacm_cross%3E3654968%3C/acm_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true