Hive SQL执行原理浅析

55 阅读1分钟

Hive 架构

image.png

Hive用户层接口

负责HQL的输入,提供命令行(CLI),JDBC,WEB UI等方式输入HQL

Hive元数据管理(meta store)

元数据包括数据库,数据表,列和列的类型,存储空间,分区,表数据存储的目录等

HQL解析与执行

Driver负责HQL的词法分析,语法分析编译(compiler),优化(optimizer)以及查询计划的生成,生成的查询计划存储在HDFS中,由MapReduce调用执行(executor)

数据存储

Hive本身不存储数据,其数据存储在HDFS中,HQL的查询最终转换为MapReduce作业(也可配置spark作业)执行