Hive将SQL转化为MapReduce的过程

Posted dummyly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hive将SQL转化为MapReduce的过程相关的知识,希望对你有一定的参考价值。

Hive将SQL转化为MapReduce的过程:

  1. Antlr定义SQL的语法规则,完成SQL词法,语法解析,将SQL转化为抽象语法树AST Tree
  2. 遍历AST Tree,抽象出查询的基本组成单元QueryBlock
  3. 遍历QueryBlock,翻译为执行操作树OperatorTree
  4. 逻辑层优化器进行OperatorTree变换,合并不必要的ReduceSinkOperator,减少shuffle数据量
  5. 遍历OperatorTree,翻译为MapReduce任务
  6. 物理层优化器进行MapReduce任务的变换,生成最终的执行计划

以上是关于Hive将SQL转化为MapReduce的过程的主要内容,如果未能解决你的问题,请参考以下文章

hive 与mapreduce

hive--构建于hadoop之上让你像写SQL一样编写MapReduce程序

Hive

大数据小文件问题与企业级解决方案

Hive入门小结

Hive架构原理