hive小结

1.what is hive?

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件转换成一张表,并提供类sql查询功能。
本质是:将HSQL转换成mapreduce的过程!
1) hive处理的数据在hdfs上
2)hive分析数据的地层是MapReduce
3)执行程序在yarn上。

2.hive的优缺点

优点:
1、 可扩展性, 横向扩展,Hive 可以自由的扩展集群的规模,一般情况下不需要重启服务
横向扩展:通过分担压力的方式扩展集群的规模
纵向扩展: 一台服务器cpu i7-6700k 4核心8线程,8核心16线程,内存64G => 128G
2、 延展性,Hive 支持自定义函数,用户可以根据自己的需求来实现自己的函数
3、 良好的容错性,可以保障即使有节点出现问题,SQL 语句仍可完成执行
4、更友好的接口:操作接口采用类 SQL 的语法,提供快速开发的能力
5、更低的学习成本:避免了写 MapReduce,减少开发人员的学习成本
6、更好的扩展性:可自由扩展集群规模而无需重启服务,还支持用户自定义函数

缺点 :
1、Hive 不支持记录级别的增删 改操作,但是用户可以通过查询生成新表或者将查询结
果导入到文件中(当前选择的 hive-2.3.2 的版本支持记录级别的插入操作)
2、Hive 的查询延时很严重,因为 MapReduce Job 的启动过程消耗很长时间,所以不能
用在交互查询系统中。
3、Hive 不支持事务(因为不没有增删改,所以主要用来做 OLAP(联机分析处理),而
不是 OLTP(联机事务处理),这就是数据处理的两大级别)。

3.hive的架构

4、hive的基本使用

1、 创建库:create database if not exists mydb;
2、 查看库:show databases;
3、 切换数据库:use mydb;
4、 创建表:create table if not exists t_user(id string, name string)
或 create table t_user(id string, name string) row format delimited fields terminated by ‘,’;
5、 查看表列表:show tables;
6、 插入数据:insert into table t_user values (‘1’,‘huangbo’), (‘2’,‘xuzheng’), (‘3’,‘wangbaoqiang’);
7、 查询数据:select * from t_user;
8、 导入数据:
a) 导入 HDFS 数据:load data inpath ‘/user.txt’ into table t_user;
b) 导入本地数据:load data local inpath ‘/home/hadoop/user.txt’ into table t_user;
user.txt 的数据为:
4,liudehua
5,wuyanzu
6,liangchaowei
9、再次查询数据:select * from t_user;

小技能补充:
1、 进入到用户的主目录,使用命令 cat /home/hadoop/.hivehistory 可以查看到 hive 执行的
历史命令
2、 执行查询时若想显示表头信息时,请执行命令:
Hive> set hive.cli.print.header=true;
3、 hive的执行日志的存储目录在 j a v a . i o . t m p d i r / {java.io.tmpdir}/ java.io.tmpdir/{user.name}/hive.log中,假如使用hadoop
用户操作的 hive,那么日志文件的存储路径为:/temp/hadoop/hive.log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值