最新 最热

Hive优化器原理与源码解析系列--优化规则HiveJoinCommuteRule(十三)

此篇文章讲解HiveJoinCommuteRule优化规则,此优化规则Rule主要功能是通过改变Join左右两侧的输入RelNode的顺序来试图探索可优化的执行计划。但前提是对Join关联操作之上Project投影操作的RelNode树,形如:...

2022-04-25
1

Hive优化器原理与源码解析系列--优化规则HiveJoinAddNotNullRule(十二)

此篇文章讲解HiveJoinAddNotNullRule优化规则,此优化规则Rule主要功能是将SQL语句中Inner Join关联时,出现在关联条件中的字段存在为null可能的字段,都加上相应字段 is not null条件限制。...

2022-04-25
1

Hive优化器原理与源码解析系列--优化规则HiveProjectMergeRule(十一)

此篇文章讲解HiveProjectMergeRule优化规则,顶层Project投影操作(相当于HSQL中的Select操作)和底部Project投影操作进行合并的优化规则,但前提是这些Project不投影相同的输入引用集。此优化规则中,Hive只实现了matches匹配...

2022-04-25
1

Hive优化器原理与源码解析系列--优化规则ProjectOverIntersectRemoveRule(九)

这篇文章来Hive优化规则ProjectOverIntersectRemoveRule,此优化规则的主要功能是把操作符树中INTERSECT交集操作符的之上的Project投影操作符,在满足一定条件下,把Project投影操作符移除减少执行计划的执行成本。...

2022-04-25
1

Hive优化器原理与源码解析系列--优化规则SortJoinReduceRule(二)

基于成本优化器CBO,常用的优化规则如子查询移除、相关性拆解、笛卡尔积加等值判断转换为内关联,谓词下推等等常用优化规则Rule。如谓词下推优化规则是将判断条件下推到数据源头,来加少中间结果,在成本优化器中,每个RelNode...

2022-04-25
1

Hive优化器原理与源码解析系列--优化规则SortRemoveRule(一)

目前,数据库优化器分两种,一种是基于规则优化器;另一种是基于成本优化器,这两种优化器各有千秋。但现在大部分成熟的数据库优化器都是两种优化器结合起来使用,这样做为了优化器在执行计划Plan的构建速度和准确性之间找到一...

2022-04-25
1

Hive优化器原理与源码解析—统计信息Parallelism并行度计算

Parallelism是有关RelNode关系表达式的并行度以及如何将其Opeartor运算符分配给具有独立资源池的进程的元数据。同一个Operator操作符,并行执行和串性执行相比,在成本优化器CBO看来,并行执行的成本更低。...

2022-04-25
1

Hive优化器原理与源码解析系列—统计信息UniqueKeys列集合

上篇介绍Hive优化器原理与源码解析系列—统计信息中间结果估算文章,TableScan,Project、Filter、Sort等等Operator操作符中间结果大小的估算受到两个因素的影响,选择率Selectivity和记录数RowCount。...

2022-04-25
1

Hive优化器原理与源码解析系列--统计信息中间结果大小计算

之前文章有写过关于基于Operator操作符Selectivity选择率和Predicate谓词的Selectivity选择率的讲解。这篇文章来讲一下基于每个Operator(TableScan、Project、Join、Union、Sort、Aggregate等等)返回记录数RowCount,即...

2022-04-25
1

Hive优化器原理与源码解析系列—统计信息带谓词选择率Selectivity

之前文章有写过关于基于Operator操作符Selectivity选择率讲解,“Hive优化器原理与源码解析系列—统计信息之选择性和基数”,其中有讲过详细讲解Cardinality基数和Selectivity选择率的计算。但这篇文章主要内容讲述stats...

2022-04-25
1