转载请务必将下面这段话置于文章开头处。


本文转发自技术世界
<https://yq.aliyun.com/go/articleRenderRedirect?url=http%3A%2F%2Fwww.jasongj.com%2F>
,原文链接
<https://yq.aliyun.com/go/articleRenderRedirect?url=http%3A%2F%2Fwww.jasongj.com%2Fspark%2Fcbo>
 http://www.jasongj.com/spark/cbo/
<https://yq.aliyun.com/go/articleRenderRedirect?url=http%3A%2F%2Fwww.jasongj.com%2Fspark%2Fcbo%2F>

Spark CBO 背景

上文Spark SQL 内部原理
<https://yq.aliyun.com/go/articleRenderRedirect?url=http%3A%2F%2Fwww.jasongj.com%2Fspark%2Frbo%2F>
中介绍的 Optimizer 属于 RBO,实现简单有效。它属于 LogicalPlan 的优化,所有优化均基于 LogicalPlan
本身的特点,未考虑数据本身的特点,也未考虑算子本身的代价。

本文将介绍
CBO,它充分考虑了数据本身的特点(如大小、分布)以及操作算子的特点(中间结果集的分布及大小)及代价,从而更好的选择执行代价最小的物理执行计划,即
SparkPlan。

Spark CBO 原理

CBO 原理是计算所有可能的物理计划的代价,并挑选出代价最小的物理执行计划。其核心在于评估一个给定的物理执行计划的代价。

物理执行计划是一个树状结构,其






















友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信