HIve(2) Hive的数据类型
数据类型
基本数据类型
Hive数据类型 | 对应Java数据类型 | 长度(byte) | 举例 |
---|---|---|---|
tinyint | byte | 1 | 10 |
smallint | short | 2 | 20 |
int | int | 4 | 30 |
bigint | long | 8 | 50 |
boolean | boolean | 布尔 | true, false |
float | float | 单精度 | 3.1415 |
double | double | 双精度 | 3.1415926 |
string | string | 字符串 | ‘haha’, “哈哈” |
timestamp | 时间类型 | ||
binary | 字节数组 |
注意
对于Hive的String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以存储2GB的字符数
集合
数据类型 | 描述 | 语法示例 |
---|---|---|
STRUCT | 和c语言中的struct类似,都可以通过“点”符号访问元素内容。例如,如果某个列的数据类型是STRUCT{first STRING, last STRING},那么第1个元素可以通过字段.first来引用。 | struct() 例如struct<street:string, city:string> |
MAP | MAP是一组键-值对元组集合,使用数组表示法可以访问数据。例如,如果某个列的数据类型是MAP,其中键->值对是’first’->’John’和’last’->’D |