李林超博客
首页
归档
留言
友链
动态
关于
归档
留言
友链
动态
关于
首页
大数据
正文
01.Hive基本概念
Leefs
2021-11-27 PM
764℃
0条
[TOC] ### 一、Hive简介 + 最初,Hive是由Facebook开发,后来由Apache软件基金会开发,并作为进一步将它作为名义下Apache Hive为一个开源项目。 + Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。 + Hive数据仓库工具能**将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行**。 + Hive定义了简单的类SQL查询语言,称为 **HiveQL**,它允许熟悉 SQL的用户查询数据。 官网地址:https://hive.apache.org/ ### 二、Hive本质 **HQL转换MP流程** ![01.Hive基本概念01.png](https://lilinchao.com/usr/uploads/2021/11/1239130451.png) **说明** + Hive本质是将HQL转换为MapReduce程序 + sql分析 -> 将sql封装成为MapReduce模板 -> 通过hive框架匹配相应的模板 + 执行**程序运行在yarn**上 + Hive 处理的数据存储在HDFS + 简单的说hive就是hdfs的简单一种映射 + 比如:hive的一张表映射hdfs上的一个文件,hive的一个数据库就映射为hdfs上的文件夹 + Hive分析数据底层默认实现是MapReduce,可以手动修改为spark + Hive相当于Hadoop的一个客户端 + Hive不是分布式 ### 三、Hive使用场景 + Hive构建在基于静态批处理的Hadoop之上,Hadoop通常都有较高的延迟并且在作业提交和调度的时候需要大量的开销。因此,Hive并不能够在大规模数据集上实现低延迟快速的查询,例如,Hive在几百MB的数据集上执行查询一般有分钟级的时间延迟。 + Hive查询操作过程严格遵守Hadoop MapReduce的作业执行模型,Hive将用户的HiveQL语句通过解释器转换为MapReduce作业提交到Hadoop集群上,Hadoop监控作业执行过程,然后返回作业执行结果给用户。 + Hive的最佳使用场合是大数据集的批处理作业,例如,网络日志分析。 ### 四、Hive优缺点 #### 4.1 优点 (1)操作接口采用类SQL语法,提供快速开发的能力(简单、容易上手)。 (2)避免了去写MapReduce,减少开发人员的学习成本。 (3)Hive的执行延迟比较高,因此Hive常用于数据分析,对实时性要求不高的场合。 (4)Hive优势在于处理大数据,对于处理小数据没有优势,因为Hive的执行延迟比较高。 (5)Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。 #### 4.2 缺点 (1)**Hive 的 HQL 表达能力有限** + 迭代式算法无法表达 + 数据挖掘方面不擅长,由于MapReduce数据处理流程的限制,效率更高的算法却无法实现。 (2)**Hive 的效率比较低** + Hive自动生成的 MapReduce 作业,通常情况下不够智能化 + Hive调优比较困难,粒度较粗 ### 总结 在大数据应用场景下,Hive更多是作为Hadoop的一个数据仓库工具,并不直接存储数据,但是却不可或缺。 *附文章来源:* *参考《尚硅谷大数据技术之Hive》*
标签:
Hadoop
,
Hive
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:
https://www.lilinchao.com/archives/1653.html
上一篇
MySQL高级应用窗口函数(四)
下一篇
02.Hive架构原理
取消回复
评论啦~
提交评论
栏目分类
随笔
2
Java
326
大数据
229
工具
31
其它
25
GO
43
标签云
散列
Eclipse
Typora
Golang
FileBeat
Yarn
Java阻塞队列
NIO
Zookeeper
随笔
Scala
ajax
LeetCode刷题
数据结构
Git
HDFS
国产数据库改造
Spark Core
MyBatis-Plus
Golang基础
Hive
高并发
人工智能
Http
Map
排序
ClickHouse
链表
锁
栈
友情链接
申请
范明明
庄严博客
Mx
陶小桃Blog
虫洞