编译器将Hive SQL 转换成一组操作符(Operator)
操作符是Hive的最小处理单元
每个操作符处理代表一道HDFS操作或MapReduce作业
Hive编译过程:
- 将SQL转换成抽象语法树 Parser
- 将抽象语法树转换成查询块 Semantic Analyzer
- 将查询块转换成逻辑查询计划 Logic Plan Generator
- 重写逻辑查询计划 LogicalOptimizer
- 将逻辑计划转成物理计划( M/R jobs ) Physical Plan Generator
- 选择最佳的Join策略 PhysicalOptimizer