Hive的底层执行流程
Hive的编译过程
Hive的编译过程是将用户提交的Hive SQL语句,经过Hive中的编译器,转换为MapReduce程序。编译器的工作主要分为三个阶段:
1、语法解析:编译器首先接收用户提交的Hive SQL语句,然后使用ANTLR工具进行语法解析,构建语法树;
2、语义分析:编译器根据语法树进行语义分析,检查语句中的表、字段等是否有效,若有效,则进行下一步,否则报错;
3、优化:编译器根据语义分析的结果,对Hive SQL语句进行优化,比如拆分语句、推断字段类型、删除无效操作等;
Hive的执行过程
Hive的执行过程是将编译后的MapReduce程序提交到Hadoop集群,并在Hadoop集群上运行,完成查询任务。执行过程主要分为以下几个步骤:
1、查询解析:Hive会把查询语句转换为抽象语法树,以便进行查询解析;
2、查询转换:把抽象语法树转换为MapReduce程序,并将MapReduce程序提交到Hadoop集群;
3、查询优化:在查询转换过程中,Hive会对MapReduce程序进行优化,比如拆分MapReduce任务、推断字段类型等;
4、查询执行:Hive会把MapReduce程序提交到Hadoop集群,并在Hadoop集群上运行,完成查询任务。
Hive的结果返回
Hive的结果返回是指Hive查询完成后,将结果返回给用户。结果返回的过程主要分为以下几个步骤:
1、结果收集:Hive会将查询结果从Hadoop集群上收集,并存储到HDFS文件系统中;
2、结果处理:Hive会将查询结果进行处理,比如排序、去重等;
3、结果返回:最后,Hive会将查询结果返回给用户,用户可以根据自己的需要进行处理。
上一篇
video中怎么设置播放时间点 下一篇
maven代理仓库的使用方法 猜您想看
-
如何禁用Windows中的触摸键盘
1、查看设备管...
2023年05月15日 -
怎么理解springboot事务管理
一、Sprin...
2023年05月26日 -
Canal1.1.4中怎么使用RocketMQ将MySQL同步到Redis
一、介绍Can...
2023年05月26日 -
Mysql分库分表的方法介绍
Mysql分库...
2023年07月23日 -
怎么在QQ上备份聊天记录?
一、QQ备份聊...
2023年05月15日 -
如何设置电脑的默认浏览器?
如何设置电脑的...
2023年05月03日