(5)hadoop学习——hive是什么?
来源:互联网 发布:邓肯体测数据 编辑:程序博客网 时间:2024/06/15 12:17
Hive——hdfs上的数据仓库
hive的架构主要分为以下几部分:
Driver组件:它的作用是将我们写的HiveQL(类SQL)语句进行解析、编译优化,生成执行计划,然后调用底层的mapreduce计算框架。
Metastore组件:元数据服务组件,这个组件存储hive的元数据,hive的元数据存储在关系数据库里,hive支持的关系数据库有derby、mysql。
Thrift服务:thrift是facebook开发的一个软件框架,它用来进行可扩展且跨语言的服务的开发,hive集成了该服务,能让不同的编程语言调用hive的接口。
Thrift客户端:下面的架构图里没有写上Thrift客户端,但是hive架构的许多客户端接口是建立在thrift客户端之上,包括JDBC和ODBC接口。
WEBGUI:hive客户端提供了一种通过网页的方式访问hive所提供的服务。这个接口对应hive的hwi组件(hive web interface),使用前要启动hwi服务。(用的较少)
如下图:Driver组件
一个hql语句,提交之后,具体的执行步骤:
由上图可以看出,Driver具体分为解析器、编译器、优化器。
首先由解析器进行词法分析,如果不符合语法,直接报错。
符合语法之后则编译为MapReduce程序,优化器优化之后再hdfs上执行。
所以hive说穿了就是将开发人员的hql语句转换为MapReduce程序之后,处理hdfs上的数据,免去了开发人员开发MapReduce的成本,大大降低了使用hadoop的门槛。
Metastore组件
hive的元数据不像表里的数据存在hdfs上,而是存在关系型数据库中。hive默认的元数据库为derby数据库,存储hive的元数据。一般现实中会存在远程服务器的mysql数据库。hive的元数据记录的是表的基本信息和属性。
Thrift服务:
能让不同的编程语言调用hive的接口,支持jdbc和odbc。
Thrift客户端和WEBGUI
了解较少,在工作中暂未用过。
这篇主要介绍了hive的架构和组成部分,下一篇具体介绍hive的文件存储以及基本用法。
- (5)hadoop学习——hive是什么?
- hadoop学习——Hive
- hadoop学习(一)——hadoop是什么
- Hadoop学习(三)——Hive学习1
- Hadoop学习(四)——Hive学习2
- (7)hadoop学习——hive的复杂数据类型
- 【hadoop学习笔记】——Hive
- hadoop学习笔记(八)——hadoop整合hive
- Hadoop学习笔记—17.Hive框架学习
- Hadoop学习笔记—17.Hive框架学习
- 【Hadoop】Hive官方文档翻译——Hive Tutorial(上)(Hive 入门指导)
- (6)hadoop学习——hive的文件存储和基本数据类型
- Hadoop学习笔记(三):Hive简介
- Hadoop之hive学习
- Hadoop之hive学习
- Hadoop学习记录-Hive
- hadoop学习--hive
- Hadoop之hive学习
- mysql update操作
- spring框架之自动配置
- 20170504@Math类中的方法
- springmvc处理器适配器两种
- 选择技术/插件总结
- (5)hadoop学习——hive是什么?
- Spring Boot中Web应用的统一异常处理
- 多个正则引擎的比较(pcre re2 hyperscan)
- 多重jar, lib包含时,出现jar包含错误的解决方法
- 实现页面的回到顶部功能
- USB开发简述
- spring框架之注解
- 实名认证 芝麻认证 人脸识别 集成
- 柯氏音(听诊)法 测血压