Hive Compiler过程
通过Parser将HiveQL转换成AST,通过Semantic Analyzer将AST转换为QB,通过Logical Plan Generator将QB转换成Operator Tree,通过Logical Optimizer对Operator Tree进行优化,通过Physical Plan Generator将Operator Tree转换为Tast Tree,最后通过Physical Optimizer对Task Tree进行优化
1、Parser:将HiveQL字符串转换为Parse Tree的形式
2、Semantic Analyzer:将Parse Tree转换为查询块QB,并填充元数据
3、Logical Plan Generator:转换成一系列的逻辑执行计划,也就是逻辑操作符构成的树 Operator Tree
4、Logical Optimizer:执行一些特定的优化算法并改写Operator Tree
5、Physical Plan Generator:将逻辑执行计划切分、改写成为物理执行计划(如M\R、Tez作业)
6、Physical Optimizer:优化物理执行计划,如Auto Map Join
如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。
如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】。
如果,您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是【刘超★ljc】。
本文版权归作者,禁止转载,否则保留追究法律责任的权利。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步