深入理解 Apache Calcite HepPlanner 优化器

注意:本文基于 Calcite 1.35.0 版本源码进行学习研究,其他版本可能会存在实现逻辑差异,对源码感兴趣的读者请注意版本选择。 什么是 RBO Calcite 中的 RBO 规则 HepPlanner 中的基础概念 HepPlanner:基于规则的启发式优化器,实现了 RelOptPlanner 优化器接口; HepProgram:提供了维护各种类型 HepInstruc...

Calcite

Apache Calcite System Catalog 实现探究

注意:本文基于 Calcite 1.35.0 版本源码进行学习研究,其他版本可能会存在实现逻辑差异,对源码感兴趣的读者请注意版本选择。 前言 在上一篇 Apache Calcite SQL Parser 原理剖析一文中,我们详细介绍了 Apache Calcite SQL 解析引擎的实现原理,从基础的 JavaCC 使用,再到 Caclite SQL 解析引擎的内部实现,最后介绍了 C...

Calcite

Apache Calcite SQL Parser 原理剖析

注意:本文基于 Calcite 1.35.0 版本源码进行学习研究,其他版本可能会存在实现逻辑差异,对源码感兴趣的读者请注意版本选择。 前言 在 Apache Calcite 快速入门指南一文中,我们介绍了 Caclite 的执行流程,包括:Parse、Validate、Optimize 和 Execute 四个主要阶段。Parse 阶段是整个流程的基础,负责将用户输入的 SQL 字符...

Calcite

Apache Calcite 快速入门指南

注意:本文基于 Calcite 1.35.0 版本源码进行学习研究,其他版本可能会存在实现逻辑差异,对源码感兴趣的读者请注意版本选择。 Calcite 简介 Apache Calcite 是一个动态数据管理框架,提供了:SQL 解析、SQL 校验、SQL 查询优化、SQL 生成以及数据连接查询等典型数据库管理功能。Calcite 的目标是 One Size Fits All,即一种方案...

Calcite

Apache Calcite 学习资料整理

前言 Apache Calcite 是一个优秀的动态数据管理框架,提供了如:SQL 解析、SQL 校验、SQL 查询优化、SQL 生成以及数据连接查询等典型数据库管理功能。本文主要记录了学习 Calcite 过程中整理收集的资料,希望能够由点及面,逐步深入理解 Calcite 及数据库优化的精髓,也希望能够帮助其他学习 Calcite 的同学。 个人整理 Calcite 知识图谱:思...

Calcite
12