hive的內建資料型別可以分為兩大類:(1)、基礎資料型別;(2)、複雜資料型別。其中,基礎資料型別包括:tinyint,smallint,int,bigint,boolean,float,double,string,binary,timestamp,decimal,char,varchar,date。下面的**列出這些基礎型別所佔的位元組以及從什麼版本開始支援這些型別。
資料型別
所佔位元組
開始支援版本
tinyint
1byte,-128 ~ 127
smallint
2byte,-32,768 ~ 32,767
int4byte,-2,147,483,648 ~ 2,147,483,647
bigint
8byte,-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
boolean
float
4byte單精度
double
8byte雙精度
string
binary
從hive0.8.0開始支援
timestamp
從hive0.8.0開始支援
decimal
從hive0.11.0開始支援
char
從hive0.13.0開始支援
varchar
從hive0.12.0開始支援
date
從hive0.12.0開始支援
複雜型別包括array,map,struct,union,這些複雜型別是由基礎型別組成的。
map:map包含key->value鍵值對,可以通過key來訪問元素。比如"userlist"是乙個map型別,其中username是key,password是value;那麼我們可以通過userlist['username']來得到這個使用者對應的password;
struct:struct可以包含不同資料型別的元素。這些元素可以通過"點語法"的方式來得到所需要的元素,比如user是乙個struct型別,那麼可以通過user.address得到這個使用者的位址。
union: uniontype,他是從hive 0.7.0開始支援的。
建立乙個包含複製型別的**可以如下
1
create table employees (
2
name string,
3
salary float,
4
subordinates array,
5
deductions map,
6
address struct
7
) partitioned by (country string, state string);
Hive內建資料型別
hive的內建資料型別可以分為兩大類 1 基礎資料型別 2 複雜資料型別。其中,基礎資料型別包括 tinyint,smallint,int,bigint,boolean,float,double,string,binary,timestamp,decimal,char,varchar,date。下面...
hive 內建資料型別
hive的內建資料型別可以分為兩大類 1 基礎資料型別 2 複雜資料型別。其中,基礎資料型別包括 tinyint,smallint,int,bigint,boolean,float,double,string,binary,timestamp,decimal,char,varchar,date。下面...
Hive內建資料型別
一 概述 hive的內建資料型別可以分為兩大類 基礎資料型別 複雜資料型別 二 基本資料型別包括 資料型別 所佔位元組 開始支援版本 tinyint 1byte,128 127 smallint 2byte,32,768 32,767 int4byte,2,147,483,648 2,147,483...