侧边栏壁纸
博主头像
Easy to understand and humorous

行动起来,活在当下

  • 累计撰写 39 篇文章
  • 累计创建 4 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

Calcite 元数据定义

fengyang
2025-10-13 / 0 评论 / 0 点赞 / 2 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
本文最后更新于2025-10-22,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

Calcite 执行流程的核心, 主要是三个部分:

  1. Calcite 元数据的定义
  2. 优化规则的管理
  3. 最优计划的执行

元数据主要用于对 SqlNode 语法树进行校验,并为 CBO 优化中代价的计算提供统计信息。
优化规则被 Calcite 优化器使用,用来对逻辑计划进行改写,并生成最优的执行计划。
最终,执行器会基于最优的执行计划,在不同的存储引擎上进行执行。

calcite_core.png

Calcite 元数据的定义

以calcite example 中的 Caclite 集成 CSV 示例来举例, 元数据文件在 src/test/resources/model.json。

{
"version":"1.0",
// 默认 schema
"defaultSchema":"SALES",
"schemas":[
{
    // schema 名称
    "name":"SALES",
    // type 定义数据模型的类型,custom 表示自定义数据模型
    "type":"custom",
    // schema 工厂类
    "factory":"org.apache.calcite.adapter.csv.CsvSchemaFactory",
    "operand":{
        "directory":"sales"
    }
}]
}
0

评论区