Hive
简介
Apache Hive是一个数据仓库软件在Hadoop中处理结构化数据,有助于使用SQL读取,编写和管理驻留在分布式存储中的大型数据集。可以将结构投影到已存储的数据中。提供了命令行工具和JDBC驱动程序以将用户连接到Hive
特点
优点(1)操作接口采用类SQL语法,简单、快速
(2)可以替代MapReduce程序,sqoop
(3)可以处理海量数据
(4)支持UDF,自定义函数
缺点(1)处理数据延迟高,慢
(2)HQL的表达能力有限
架构图
(1)用户通过客户端的CLI和JDBC来操作Hive
(2)Hive将元数据存储在数据库中,如mysql、derby
(3)SQL解析器、编译器、query优化器和execution执行器完成HQL查询语句从词法分析、语法分析、编译、优化以及查询计划的生成
(4)生成的查询结果存储在HDFS中
(5)调用底层MapReduce进行查询和计算
数据类型
Java数据类型 | Hive数据类型 | 长度 |
---|---|---|
byte | TINYINT | 1个字节(有符号整数) |
short | SMALLINT | 2个字节(有符号整数) |
int | INT | 4个字节(有符号整数) |
long | BIGINT | 8个字节(有符号整数) |
boolean | BOOLEAN | |
float | FLOAT | 单精度浮点 |
double | DOUBLE | 双精度浮点 |
string | STRING | 1个字节 |