Hive的數據類型
Hive 提供了基本數據類型和復雜數據類型
1.1 原始數據類型
- 整型
- TINYINT — 微整型,只占用1個字節,只能存儲0-255的整數。
- SMALLINT– 小整型,占用2個字節,存儲范圍–32768 到 32767。
- INT– 整型,占用4個字節,存儲范圍-2147483648到2147483647。
- BIGINT– 長整型,占用8個字節,存儲范圍-2^63到2^63-1。
- 布爾型
- BOOLEAN — TRUE/FALSE
- 浮點型
- FLOAT– 單精度浮點數。
- DOUBLE– 雙精度浮點數。
- 字符串型
- STRING– 不設定長度。

1.2 復合數據類型
- Structs:一組由任意數據類型組成的結構。比如,定義一個字段C的類型為STRUCT {a INT; b STRING},則可以使用a和C.b來獲取其中的元素值;
- Maps:和Java中的Map相同,即存儲K-V對的;
- Arrays:數組;

復雜數據類型的聲明必須使用尖括號指明其中數據字段的類型。定義三列,每列對應一種復雜的數據類型,如下所示。
CREATE TABLE complex(
col1 ARRAY< INT>,
col2 MAP< STRING,INT>,
col3 STRUCT< a:STRING,b:INT,c:DOUBLE>
)
1.3 hive的文件格式
TEXTFILE //文本,默認值
SEQUENCEFILE // 二進制序列文件
RCFILE //列式存儲格式文件 Hive0.6以后開始支持
ORC //列式存儲格式文件,比RCFILE有更高的壓縮比和讀寫效率,Hive0.11以后開始支持
PARQUET //列出存儲格式文件,Hive0.13以后開始支持
參考博客:
http://lxw1234.com/archives/2015/06/238.htm
http://www.cnblogs.com/zlslch/p/5659714.html
