Victor's Code Journey
Victor's Code Journey

系列 - Apache Calcite

读懂 Apache Calcite 这个嵌入式数据框架。

Calcite 不存数据,却能做完整的 SQL 解析、校验、优化和查询执行——它是 Flink、Elasticsearch、druid 等大量引擎的 SQL 引擎底座。这个系列按 Calcite 内部的处理链路展开:先认识它的定位与边界,再理解元数据 Catalog,然后是 SQL 的解析、验证,最后落到它统一的关系代数模型。

配合 JavaCC 教程一起读会顺很多——Calcite 的 Parser 正是用 JavaCC 实现的。

#篇目这一篇讲什么
01Apache Calcite Quick StartCalcite 是什么,以及它有意省略了哪些数据库能力
02深入理解 Apache Calcite-Catalog元数据注册与查询优化的基础 Catalog
03Apache Calcite:SQL解析基于 JavaCC 实现的 SQL Parser
04Apache Calcite: SQL验证Validator 如何结合 Catalog 完成 SQL 绑定
05Apache Calcite 关系代数Calcite 统一的关系代数模型