第一部分:Hive简介
什么是Hive
•Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。
•本质是将SQL转换为MapReduce程序
第二部分:为什么使用Hive
•操作接口采用类SQL语法,提供快速开发的能力
•避免了去写MapReduce,减少开发人员的学习成本
•扩展功能很方便

第三部分:Hive与Hadoop的关系

  HIVE简介(一)
第四部分:Hive与传统数据库对比

 

Hive
RDBMS
查询语言
HQL
SQL
数据存储
HDFS
Raw Device or Local FS
执行
MapReduce
Excutor
执行延迟
处理数据规模
索引
0.8版本后加入位图索引
有复杂的索引
 
第五部分:Hive的历史
•由FaceBook 实现并开源
•2011年3月,0.7.0版本 发布,此版本为重大升级版本,增加了简单索引,HAING等众多高级特性
•2011年06月,0.7.1 版本发布,修复了一些BUG,如在Windows上使用JDBC的的问题
• 2011年12月,0.8.0版本发布,此版本为重大升级版本,增加了insert into 、HA等众多高级特性
•2012年2月5日,0.8.1版本发布,修复了一些BUG,如 使 Hive 可以同时运行在 Hadoop0.20.x 与 0.23.0
•2012年4月30日,0.9.0版本发布,重大改进版本,增加了对Hadoop 1.0.0的支持、实现BETWEEN等特性
  
第六部分:Hive的未来发展 
•增加更多类似传统数据库的功能,如存储过程
•提高转换成的MapReduce性能
•拥有真正的数据仓库的能力
•UI部分加强

第七部分:Hive的缺点

  1、Hive的HQL的表达能力有限

      1)迭代式算法无法表达,比如pagerank。

      2)数据挖掘方面,比如kmeans。

  2、Hive的效率比较低

      1)hive自动生成的MapReduce作业,通常情况下不够智能化。

      2)hive调优比较困难

      3)hive可控性比较差


相关文章: