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...
Gespeichert in:
Veröffentlicht in: | Proceedings of the ACM on management of data 2024-05, Vol.2 (3), p.1-28, Article 165 |
---|---|
Hauptverfasser: | , , , , , , |
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 |