hadoop hive集群_hive是如何与hadoop结合的?hive的架构大致构成是?hive的运行流程是?...

最近小编的一位朋友小华学习了hiveSQL的一些常见场景及应用,也通过很多示例做了大量练习, 在心态上有一点小飘了,于是前两天去面试了一家大数据公司。

面试官一开始也是给面子,问了hiveSQL操作窗口函数的两道SQL题,小华都毫无疑问做出来了,心里正美着的时候,面试官来了hive的灵魂三问:hive是如何与hadoop结合的?hive的架构大致构成是?hive的运行流程是?于是傻眼的小华面试完之后来找到小编,希望小编能够说一下hive这方面的内容。

297e96c70205526ee5f2ab17d4992c6f.png

要说明白hive的整体工作流程,首先需要了解一下hive的架构设计

Hive架构设计包括三个部分

一、Hive Clients,Hive客户端,它为不同类型的应用程序提供不同的驱动,使得Hive可以通过类似Java、Python等语言连接,同时也提供了JDBC和ODBC驱动。

二、Hive Services,Hive服务端,客户端必须通过服务端与Hive交互,主要包括:

1.用户接口组件(CLI,HiveServer,HWI),它们分别以命令行、与web的形式连接Hive。

Driver组件,该组件包含编译器、优化器和执行引擎,它的作用是将hiveSQL语句进行解析、编译优化、生成执行计划,然后调用底层MR计算框架。

2.Metastore组件,元数据服务组件。Hive数据分为两个部分,一部分真实数据保存在HDFS中,另一部分是真实数据的元数据,一般保存在MySQL中,元数据保存了真实数据的很多信息,是对真实数据的描述。

三、Hive Storage and Computing ,包括元数据存储数据库和Hadoop集群。Hive元数据存储在RDBMS中,Hive数据存储在HDFS中,查询由MR完成。

对Hive整体架构设计有一定了解之后,我们再来看看Hive实际的工作流程

0a6e32dc797420326f52292e3112ef81.png

接下来细化一下每个步骤。

b61164bf99c448275207245d0b406486.png


简而言之,Hive接到命令之后,首先会去元数据库获取元数据,然后把元数据信息和作业计划发送Hadoop集群执行任务,再将最终的结果返回。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值