Danner Blog

Took the sourest lemon that life has to offer and turned it into something resembling lemonade.

StarRocks Optimizer:Cost

All of this relies on a good cost model. A good cost model needs good statistics. 源码目录:com.starrocks.sql.optimizer.OptimizerTaskTest#testTwoJoin CostModel.calculateCost 统计信息 Cost 计算依赖于Sta...

StarRocks Optimizer:Memo

优化器的核心部分,但如果对标题中的Memo 概念不熟悉,建议多看几遍参考资料(理论知识看参考资料,这里只有流程解读)。 源码目录:com.starrocks.sql.optimizer.OptimizerTaskTest#testTwoJoin RuleRewrite 后 LOGICAL_JOIN {INNER JOIN, onPredicate = null , Predicate ...

【译】Query Engines:Push vs. Pull

原文地址:https://justinjaffray.com/query-engines-push-vs.-pull/ 人们经常谈论基于“拉”和“推”的查询引擎,虽然从名词看很容易理解各自的含义,但有些细节可能有点难以理解。有人已经对两者的区别深思熟虑,Snowflake’s Sigmod paper : 基于推送的执行是指关系运算符将其结果推送给下游运算符,而不是等待下游运算符拉...

StarRocks Optimizer:RuleRewrite

根据规则对逻辑计划优化重写,案例分析: 源码目录:com.starrocks.sql.optimizer.OptimizerTaskTest#testFilterPushDownRule SQL: select t1 from ( select * from ( select t1, t2, t3 from table ) where t2 = 1 ) ...

StarRocks SQL Binder

从 SQL 文本到分布式物理执行计划, 在 StarRocks 中,需要经过以下 5 个步骤: 1、SQL Parse: 将 SQL 文本转换成一个 AST(抽象语法树) 2、SQL Analyze:基于 AST 进行语法和语义分析 => 本文 3、SQL Logical Plan: 将 AST 转换成逻辑计划 4、SQL Optimize:基于关系代数...

2023


StarRocks 学习:AST2LogicalPLan

从 SQL 文本到分布式物理执行计划, 在 StarRocks 中,需要经过以下 5 个步骤: 1、SQL Parse: 将 SQL 文本转换成一个 AST(抽象语法树) 2、SQL Analyze:基于 AST 进行语法和语义分析 3、SQL Logical Plan: 将 AST 转换成逻辑计划 4、SQL Optimize:基于关系代数、统计信息、Cost...

Flink FLIP-27

Source 变化有点大,之前看过,现在重新记录下。 FLIP-27: Refactor Source Interface: https://cwiki.apache.org/confluence/display/FLINK/FLIP-27%3A+Refactor+Source+Interface 流程 SourceEnumerator.start 获取...

Flink Window TVF

表值函数(table-valued function, TVF)

<数据密集型应用系统设计>读书笔记(三)

批处理系统 使用 UNIX工具进行批处理 unix 命令链(awk, s时, grep, sort , uniq和xargs的组合) ,可以在几分钟内完成许多数据分析 任务,并且表现令人十分满意。UNIX工具的最大局限在于它们只能在一台机器上运行。 MapReduce与分布式文件系统 MapReduce 有点像分布在数千台机器上的UNIX工具。 MapReduce 是一个编程框架,...