1.hive的概念
①hive有facebook实现并开源
②hive是基于hadoop的一个数据仓库工具
③hive存储的数据其实底层存储在hdfs上
④hive将hdfs上的结构化的数据映射为一张数据库表
⑤hive提供HQL(hive sql)查询功能
⑥ hive的本质是将sql语句装换为mapreduce任务运行,使不熟悉mapreduce的用户
很方便地利用hql处理和计算hdfs上的结构化的数据,适用于离线的批量数据计算
⑦hive使用户可以极大简化分布式计算程序的编写,而将精力集中于业务逻辑
2、hive存储
hive依赖于hdfs存储数据,hive将hql装换成mapreduce执行
所以说hive是基于hadoop的一个数据仓库工具,实质就是一款基于hdfs的mapreduce
2、hive 特点
①可扩展性,横向扩展,hive可以自由的扩展集群的规模,一般情况下不需要重启服务
横向扩展:通过分担压力的方式扩展集群的规模
纵向扩展:一台服务器cpu i7-6700k 4核心8线程可扩展为8核心16线程
②延展性,hive支持自定义函数,用户可以根据自己的需求来实现自己的函数
③ 良好的容错性,可以保障即使有节点出现问题,sql语句仍可完成执行
3、hive的缺点
①hive不支持记录级别的增删改操作,但是用户可以通过查询生成新表或者将查询结果导入到文件中
(hive-2.3.3的版本支持记录级别的插入操作)
② hive 的查询延时很严重,因为mapreduce Job 的启动过程消耗很长时间,所以不能用在交互查询系统中
③ hive 不支持事务(因为没有怎删改,所以主要用来做OLAP(联机分析处理)不是OLTP(联机事务处理))