Hive学习之路(一):Hive的基本概念与安装配置

本文介绍了Hive的基本概念,包括它是基于Hadoop的数据仓库工具,提供SQL查询功能,适用于大数据批处理场景。接着详细阐述了Hive的安装与配置过程,包括内嵌、本地和远程模式,特别展示了远程模式的详细步骤。同时,对比了Hive与HBase的主要区别。文章适合初学者理解Hive的用途和入门安装。
摘要由CSDN通过智能技术生成

一、初识Hive

1.Hive的基本概念

Hive是Apache社区的开源项目,是建立在Hadoop之上的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据。

也就是说,Hive是一个数据仓库工具,它不提供数据存储功能,数据存储在Hadoop集群上,其本质是对HDFS结构化数据的管理,为其建立一张张的表,并对MapReduce进行封装,通过类SQL语句处理数据,Hive会将类SQL语句转化为MapReduce作业跑在YARN上。

2.Hive的适用场景

Hive 并不适合那些需要低延迟的应用,例如,联机事务处理(OLTP)。Hive 查询操作过程严格遵守Hadoop MapReduce 的作业执行模型,Hive 将用户的HiveQL 语句通过解释器转换为MapReduce 作业提交到Hadoop 集群上,Hadoop 监控作业执行过程,然后返回作业执行结果给用户。Hive 的最佳使用场合是大数据集的批处理作业,例如,网络日志分析。

3.Hive执行作业的过程

在这里插入图片描述
1.Execute Query:hive界面如命令行或Web UI将查询发送到Driver(任何数据库驱动程序如JDBC、ODBC,等等)来执行。

2.Get Plan:Driver根据查询编译器解析query语句,验证query语句的语法,查询计划或者查询条件。

3.Get Metadata:编译器将元数据请求发送给Metastore(任何关系型数据库)。

4.Send Metadata:Metastore将元数据作为响应发送给编译器。

5.Send Plan:编译器检查要求和重新发送Driver的计划。到这里,查询的解析和编译完成。

6.Execute Plan:Driver将执行计划发送到执行引擎。

7.Execute Job:Hadoop内部执行的是mapreduce工作过程,任务执行引擎发送一个任务到资源管理节点(ResourceManager),资源管理器分配该任务到任务节点,由任务节点上开始执行mapreduce任务。

7.1 Metadata Ops:在执行引擎发送任务的同时,对hive的元数据进行相应操作。

8.Fetch Result:执行引擎接收数据节点(data node)的结果。

9.Send Results:执行引擎发送这些合成值到Driver。

10.Send Results:Driver将结果发送到Hive接口。

4.Hive与HBase的区别

1.HBase是建立在Hadoop之上的NoSQL,是非关系型数据库,Hive是数据仓库,不是数据库。
2.HBase提供海量数据的随机定位和实时读写,毫秒级别内响应查询请求,Hive的查询并不能在短时间内响应。
3.HBase只提供数据的存储和查询功能,没有数据的处理能力,Hive提供类SQL的方式对数据进行处理,底层转变为MapReduce跑在YARN上。
4.Hive和HBase是两种基于Hadoop的不同技术,Hive是一种类SQL的引擎,并且运行MapReduce任务,Hbase是一种在Hadoop之上的NoSQL 的Key/Value数据库。

二、Hive的安装与配置

Hive是建立在Hadoop之上的类SQL引擎,因此在安装Hive之前首先安装Hadoop集群并运行。详情请移步:Hadoop完全

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值