Apache Calcite: A Foundational Framework for Optimized Query Processing Over Heterogeneous Data Sources
arXiv:1802.10233 · doi:10.1145/3183713.3190662
Abstract
Apache Calcite is a foundational software framework that provides query processing, optimization, and query language support to many popular open-source data processing systems such as Apache Hive, Apache Storm, Apache Flink, Druid, and MapD. Calcite's architecture consists of a modular and extensible query optimizer with hundreds of built-in optimization rules, a query processor capable of processing a variety of query languages, an adapter architecture designed for extensibility, and support for heterogeneous data models and stores (relational, semi-structured, streaming, and geospatial). This flexible, embeddable, and extensible architecture is what makes Calcite an attractive choice for adoption in big-data frameworks. It is an active project that continues to introduce support for the new types of data sources, query languages, and approaches to query processing and optimization.
SIGMOD'18
Cited by in corpus (12)
- Are We Ready For Learned Cardinality Estimation?
- Query Processing on Tensor Computation Runtimes
- One SQL to Rule Them All
- RHEEMix in the Data Jungle: A Cost-based Optimizer for Cross-platform Systems
- Sibyl: Forecasting Time-Evolving Query Workloads
- Dataset search: a survey
- GALOIS: A Hybrid and Platform-Agnostic Stream Processing Architecture
- Analytical Engines With Context-Rich Processing: Towards Efficient Next-Generation Analytics
- Relational Playground: Teaching the Duality of Relational Algebra and SQL
- Low Rank Learning for Offline Query Optimization
- SIEVE: Effective Filtered Vector Search with Collection of Indexes
- Measures in SQL