(一) Hive基本概念

what
why
when

什么是Hive?
Hive是facebook开源的(已贡献给apache)用于解决海量结构化日志的数据统计;
Hive是基于hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能;
本质:将HQL转化成MapReduce程序;

hive处理的数据存储在hdfs上;
分析数据底层默认实现mapreduce;
程序运行在yarn上;
(一) Hive基本概念
优缺点
优点:
1.操作接口采用类SQL语法,快速开发;
2.避免去写mr;
3.执行延迟较高,适合用于数据分析,实时性要求不高的场合
4.处理大数据(小数据没优势,每个mr任务是java process,需要开关虚拟机)
5.支持用户自定义函数
缺点:
1.hql表达能力有限,迭代式算法无法表达,数据挖掘不擅长
2.效率低(吞吐量大)
生成的mr不够智能化,hive调优比较困难

Hive架构
(一) Hive基本概念
与传统关系型数据库的区别(why)
hive基于hadoop,处理的数据存储在hdfs上,数据量大,而mysql等存储在块设备或者本地文件系统,数据量相对较小
hive多用来查(olap),而mysql支持实时读写(oltp)
hive通过mr来分析处理数据,mysql通过innodb存储引擎
hive基于hadoop可扩展性比mysql强