Hive 执行流程简述

Hive 的架构

Hive 执行流程简述

Hive 的核心驱动 Driver

(1) 解释器:解释器的作用是将 HiveSQL 语句转换为抽象语法树(AST)
(2) 编译器:编译器是将语法树编译为逻辑执行计划
(3) 优化器:优化器是对逻辑执行计划进行优化
(4) 执行器:执行器是调用底层的运行框架执行逻辑执行计划

执行流程简述

  1. 首先客户端或者命令行提交 hql 语句
  2. 在 Driver 中经过解析器将 hql 语句解析成抽象语法树,比对 metaStore 中存储的元数据
    (进行类型判断与语法分析 )
  3. 经过解释器将 hql 转化为一个逻辑计划,该逻辑计划存储在 hdfs 中
  4. 经过优化器对其进行优化
  5. 由执行器调用底层执行框架执行该最优逻辑计划
  6. 生成 MapReduce 任务,运行在 hadoop 集群上