首页 理论教育 Hive的组成架构

Hive的组成架构

时间:2023-06-24 理论教育 版权反馈
【摘要】:图7.1Hive 的组成架构用户接口用户接口也就是Hive 的客户端,主要有三个:Web 接口、CLI 接口和JDBC/ODBC 客户端。用户可以通过Hive 的用户接口与底层数据存储系统进行互动。Hive 驱动引擎Hive 驱动引擎是Hive 的核心,包括四个部分:SQL Parser 解析器、Physical Plan 编译器、Query Optimizer 优化器和Execution 执行器。用户通过Hive 接口发送HQL,Hive 通过驱动引擎结合MetaStore 元数据,将HQL 翻译成MapReduce 去执行。

Hive的组成架构

Hive 的组成架构如图7.1 所示。

图7.1 的组成架构图描述了Hive 的不同单元,每个单元有各自的功能。

图7.1 Hive 的组成架构

(1)用户接口

用户接口也就是Hive 的客户端,主要有三个:Web 接口、CLI 接口和JDBC/ODBC 客户端。用户可以通过Hive 的用户接口与底层数据存储系统进行互动。Web 接口就是通过Web 浏览器访问、操作和管理Hive,非常方便直观。CLI 接口即Hive 的命令行接口,这是最常用的客户端。JDBC/ODBC 客户端指应用程序通过JDBC 或ODBC 协议连接至Hive,从而发送执行命令。

(2)Hive 驱动引擎(www.xing528.com)

Hive 驱动引擎是Hive 的核心,包括四个部分:SQL Parser 解析器、Physical Plan 编译器、Query Optimizer 优化器和Execution 执行器。

用户通过Hive 接口发送HQL,Hive 通过驱动引擎结合MetaStore 元数据,将HQL 翻译成MapReduce 去执行。首先,使用SQL Parser 解析器将HQL 语句转换成语法树,接着使用Physical Plan 编译器将语法树编译为逻辑执行计划,然后通过Query Optimizer 优化器对逻辑执行计划进行优化,最后将优化的结果使用Execution 执行器调用底层MapReduce 框架执行逻辑执行计划。

(3)元数据库

Hive 选择一些关系型数据库(如MySQL、Derby 等),用来存放Hive 的基础信息。默认使用的是Derby。

(4)Hadoop

Hive 是构建在Hadoop 之上的,其数据文件存储在底层的HDFS 或HBASE 中,通过MapReduce框架完成Hive 的查询工作,并将结果返回给客户端。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈