开发者社区> 问答> 正文

Flink SQL的实现原理是什么?具体是作用实现 SQL 解析的啊?

Flink SQL的实现原理是什么?具体是作用实现 SQL 解析的啊?

展开
收起
游客vwuxaq6iqaowc 2021-12-08 14:20:54 748 0
1 条回答
写回答
取消 提交回答
  • Flink 的SQL解析是基于Apache Calcite这个开源框架。 基于此,一次完整的SQL解析过程如下:

    用户使用对外提供Stream SQL的语法开发业务应用

    用calcite对StreamSQL进行语法检验,语法检验通过后,转换成calcite的逻辑树节点;最终形成calcite的逻辑计划

    采用Flink自定义的优化规则和calcite火山模型、启发式模型共同对逻辑树进行优化,生成最优的Flink物理计划

    对物理计划采用janino codegen生成代码,生成用低阶API DataStream 描述的流应用,提交到Flink平台执行

    2021-12-08 14:21:15
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载

相关镜像