Hive是Facebook开源用于解决海量结构化日志的数据统计,是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。本质是将HQL转化成MapReduce程序。
Hive 的优点有
1)由于操作接口采用类SQL语法,容易上手。
2)避免了写MapReduce,减少开发人员的学习成本。
3)Hive自持用户自定义函数,用户可以根据需求实现自己的函数。
Hive 的缺点点有
1)Hive的延迟性较高,不适合数据量小的实时性要求高的场景。
2)由于Hive的HQL的表达能力有限,无法表达迭代式算法不擅长数据挖掘。(每次迭代都是一个MR,多次迭代就是多个MR。数据挖掘是对数据不停的迭代处理)
3)Hive自动生成的MapReduce作业,通常情况下无法智能化。(慢)
4)Hive调优比较困难,粒度较粗。(根据模板来做,比较固定。)
5)Hive不适用于增删改操作,也无法使用索引.
Hive的架构