理论教育 Hive的执行流程详解

Hive的执行流程详解

时间:2023-06-14 理论教育 版权反馈
【摘要】:Hive 将SQL 语句转化为相应的MapReduce 程序,主要分为以下几步:1.通过CLI、Client 或HWI 接收用户提交的SQL 语句。Hive 中调用的Mapper 类为org.apache.Hadoop.hive.ql.exec.Exec Mapper,Reducer 类为org.apache.hadoop.hive.ql.exec.ExecReducer。

Hive的执行流程详解

Hive 将SQL 语句转化为相应的MapReduce 程序,主要分为以下几步:

1.通过CLI、Client 或HWI 接收用户提交的SQL 语句。

2.解析器将SQL 字符串转换成抽象语法树AST,然后将AST 编译生成逻辑执行计划,并进行优化,查询元数据库(元数据库记录着表对应的文件路径),最后将逻辑执行计划转换成物理执行计划。

3. Hive 将SQL 语言里面常用的操作,如select、where、group 等用MapReduce写成很多个模板,所有模板都被封装到Hive 里面;通过Hive 框架匹配出相应的MapReduce 模板生成MapReduce jar 包。Hive 中调用的Mapper 类为org.apache.Hadoop.hive.ql.exec.Exec Mapper,Reducer 类为org.apache.hadoop.hive.ql.exec.ExecReducer。(www.daowen.com)

4.通过hadoop jar 命令来执行这个jar 文件,并生成业务分析结果,不过该jar 文件在MapReduce 结束时就会自动删除。路径大概是在:

/hadoop/tmp/mapred/local/taskTracker/root/jobcache/job_201309092128_0001/jars/job.jar

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈