1.概述
Apache Calcite是面向Hadoop新的查询引擎,它提供了标准的SQL语言、多种查询优化和连接各种数据源的能力,除此之外,Calcite还提供了OLAP和流处理的查询引擎。正是有了这些诸多特性,Calcite项目在Hadoop中越来越引入注目,并被众多项目集成。
2.SQL引擎
SQL引擎一般分为以下几个步骤
解析-验证-优化-执行
-
Parser
: Calcite通过java CC将SOL解析成未校验的AST语法树 -
Validate
:校验Parser产生的AST是否合法,如验证Schema、Field -
Optimize
:优化RelNode树,将其转换为物理执行计划 -
Execute
:将物理执行计划转换为特定平台的执行程序