Affiliation:
1. Technische Universität Berlin, Berlin, Germany
2. Observe Inc., San Mateo, USA
3. Technische Universität Berlin & DFKI GmbH, Berlin, Germany
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.
Funder
German Federal Ministry of Education and Research
Deutsche Forschungsgemeinschaft
Publisher
Association for Computing Machinery (ACM)
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Using and Enhancing NebulaStream - A Tutorial;Proceedings of the 18th ACM International Conference on Distributed and Event-based Systems;2024-06-24