原文:Flink Sql 之 Calcite Volcano优化器(源码解析)

Calcite作为大数据领域最常用的SQL解析引擎,支持Flink , hive, kylin , druid等大型项目的sql解析 同时想要深入研究Flink sql源码的话calcite也是必备技能之一,非常值得学习 我们内部也通过它在做自研的sql引擎,通过一套sql支持关联查询任意多个异构数据源 eg : mysql表join上 hbase表在做一个聚合计算 因为calcite功能比较多, ...

2021-10-19 16:59 2 1677 推荐指数:

查看详情

apache calcite 优化(二)

紧接上篇文章Apache Calcite 处理流程详解(一),这里是 Calcite 系列文章的第二篇,后面还会有文章讲述 Calcite 的实践(包括:如何开发用于 SQL 优化的 Rule)。本篇文章主要介绍 Apache Calcite 优化部分的内容,会先简单介绍一下 RBO 和 CBO ...

Tue Nov 05 08:37:00 CST 2019 0 1029
fxjwind Calcite分析 - Volcano模型

参考,https://matt33.com/2019/03/17/apache-calcite-planner/ Volcano模型使用,分为下面几个步骤, 1和2 初始化 addRelTraitDef,就是把traitDef加到这个结构里面 3. ...

Fri Aug 09 18:47:00 CST 2019 0 662
Flink table&Sql中使用Calcite

Apache Calcite是什么东东 Apache Calcite面向Hadoop新的sql引擎,它提供了标准的SQL语言、多种查询优化和连接各种数据源的能力。除此之外,Calcite还提供了OLAP和流处理的查询引擎。它2013年成为了Apache孵化项目以来,在Hadoop中越 ...

Wed Dec 19 19:40:00 CST 2018 0 4266
源码Flink sql 流式去重源码解析

本文基于 flink 1.12.0 之前尝试了一下 flink sql 的 去重和Top n 功能,只是简单的看了下官网,然后用 sql 实现了功能,但是还有些疑问没有解决。比如:不使用 mini-batch 模式,去重的结果很单一,降序就只输出第一条数据(升序就一直输出最后一条) 为了解 ...

Thu Mar 18 05:12:00 CST 2021 0 555
Flink sql 之 TopN 与 StreamPhysicalRankRule (源码解析)

基于flink1.14的源码解析 公司内有很多业务方都在使用我们Flink sql平台做TopN的计算,今天同事突然问到我,Flink sql 是怎么实现topN的 ? 蒙圈了,这块源码没看过啊 ,业务要问起来怎么办,赶快打开源码补一下 拿到这个问题先冷静分析一下范围 首先肯定属于 ...

Thu Oct 21 01:52:00 CST 2021 1 222
Flink SQL Window源码解析

文章目录 一、概述 二、Window分类 1、TimeWindow与CountWindow 2、TimeWindow子类型 Tumble Window(翻转窗口) Hop Wind ...

Wed Nov 27 05:32:00 CST 2019 0 770
基于calcite做傻瓜式的sql优化(三)

上一篇:基于calcite做傻瓜式的sql优化(二) 上一篇说到的是Hive是如何对sql进行解析,生成ASTNode 那么Hive拿到ASTNode之后,就会触发:BaseSemanticAnalyzer.analyze这个方法; 这个方法非常的重要,从AST到task ...

Tue Nov 24 07:34:00 CST 2020 3 1396
基于calcite做傻瓜式的sql优化(二)

上一篇:基于calcite做傻瓜式的sql优化(一) 因为主要想借助hive的思路来实现对sql优化,所以这一篇主要是梳理一条sql在hive内部大概是什么样的生命周期 首先通过一张图看下,内部sql大概执行流: sql经过一系列的规则处理后,最后变成task tree ...

Tue Nov 24 05:42:00 CST 2020 0 1149
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM