1、Hive原理及查询优化

hive的结构图:

 

164320_pd7c_2828556.png

hive中最重要的就是Compiler解析器,hive当客户端提交一条sql,Driver将sql提交给compiler,compiler和dirver交互拿到meatastore中元数据信息,经过解析生成mapreduce任务提交给driver,driver再将任务提交给hadoop。

compiler执行流程

164720_Yi0C_2828556.png

Parser:将sql字符串转换成为Parser  Tree的形式(此法分析,语法分析,转化成为Tree)(AST:抽象查询树)

Semantic  Analyzer:(语义解析)通过递归下降的方式将Parser Tree 转换为查询块的图,并填充元数据和校验(QB:查询块)

Logical Plan  Generator:转换成一系列的逻辑执行计划,也就是逻辑操作符构成的树。(Operator Tree:操作符构成的图)

Logical Optimizer:对逻辑执行计划生成的Operators图改写。(如相同key的join的改写)(Operator Tree:操作符构成的图)

Physical Plan  Generator:物理执行计划,将逻辑执行计划切分、改写成为物理执行计划(M/R作业,客户端操作等)(Task Tree:由Task构成的有向无环图)

Physical Optimizer:优化物理执行计划(Task Tree:由Task构成的有向无环图)

逻辑优化器

173506_6ROs_2828556.png

谓词下推优化器:就是将where条件如果可能在join前提前处理。

72

 

 

 

转载于:https://my.oschina.net/captainliu/blog/1575548

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值