calcite-demo 2023-10-10 之前:An Apache-calcite demo, baseed on V1.18.0. 2023-10-10 更新:更新 calcite 版本从 1.18.0 -> 1.35.0 对 calcite 还不熟悉的, 可以先移步我的另外一篇介绍文章 食用本 demo 请结合 DOC 此工程包含了三个 package easy 包含了:select from csv、SQL parser、validate、optimization(RBO/CBO)。 medium:中级,结合自定义 schema,cost,rules 实现完整的过程。 rewrite:重写 sql 部分,翻了其他的仓库,没找到比较好的基于 calcite 的 rewrite 实现,可以参考下这个 demo。 建议从 easy 入门,了解 calcite 处理一条 SQL 的过程: SQL -Parser-> SqlNode -validate-> SqlNode -Rel(Rex)-> RelNode -Optimization( HepPlanner/VolcanoPlanner)-> findBestExp 再进入到 medium 阶段,开始接触自定义 schema(表信息),cost(成本),优化规则(rules)