一、Hive 底层原理
1. Hive 基本概念
1)Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类 SQL 查询功能。
2)Hive 本质:将 HQL 转化成 MapReduce 程序;Hive 处理的数据存储在 HDFS;Hive 分析数据底层的实现是 MapReduce
执行程序运行在 Yarn 上
2. Hive 底层执行架构
1)在 Hive 这一侧,总共有五个组件:
UI:用户界面。可看作我们提交SQL语句的命令行界面;
DRIVER:驱动程序。接收查询的组件。该组件实现了会话句柄的概念;
COMPILER:编译器。负责将 SQL 转化为平台可执行的执行计划。对不同的查询块和查询表达式进行语义分析,并最终借助表和从 metastore 查找的分区元数据来生成执行计划;
METASTORE:元数据库。存储 Hive 中各种表和分区的所有结构信息;
EXECUTION ENGINE:执行引擎。负责提交 COMPILER 阶段编译好的执行计划到不同的平台上;
2)基本流程:
步骤1ÿ