Apache Calcite是一个Query处理,优化,和Query语言的框架。
好多数据处理Engine内部都采用Calcite来做JDBC,SQL query优化等。参加Powered by Calcite列表
文章中提到
As organizations have invested in data processing systems tailored towards their specific needs, two overarching problems have arisen:
• The developers of such specialized systems have encountered related problems, such as query optimization [4, 25]
or the need to support query languages such as SQL and related extensions (e.g., streaming queries [26]) as well as
language-integrated queries inspired by LINQ [33]. Without a unifying framework, having multiple engineers independently develop similar optimization logic and language support wastes engineering effort.
• Programmers using these specialized systems often have to integrate several of them together. An organization might
rely on Elasticsearch, Apache Spark, and Druid. We need to build systems capable of supporting optimized queries
across heterogeneous data sources [55].
这点很有意思。真的能跨应用来做Query吗?