(1)基本型別
資料型別
所佔位元組
開始支援版本
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開始支援
(2)混合型別:
array
array
型別是由一系列相同資料型別的元素組成,這些元素可以通過下標來訪問。比如有乙個
array
型別的變數
fruits
,它是由
組成,那麼我們可以通過
fruits[1]
來訪問元素
orange
,因為array
型別的下標是從
0開始的;
array(「test1」,」test2」)
mapmap
包含key->value
鍵值對,可以通過
key來訪問元素。比如」
userlist」
是乙個map
型別,其中
username
是key
,password
是value
;那麼我們可以通過
userlist['username']
來得到這個使用者對應的
password;
map(「username」,」zhu」)
struct
struct
可以包含不同資料型別的元素。這些元素可以通過」點語法」的方式來得到所需要的元素,比如
user
是乙個struct
型別,那麼可以通過
user.address
得到這個使用者的位址。
struct(「zhu」,」2428922)
例子:
create table employees (
name string,
salary float,
subordinates array,
deductions map,
address struct) partitioned by (country string, state string);
表已經建立完成,現在說說hive的資料文字編碼:
指定分割標記:
create table employees (
name string,
salary float,
subordinates array,
deductions map,
address struct) partitioned by (country string, state string);
row formate delimited
fields terminated by ',';
Hive學習筆記 Hive中的分桶
對於每乙個表 table 或者分割槽,hive可以進一步組織成桶,也就是說桶是更為細粒度的資料範圍劃分。hive也是針對某一列進行桶的組織。hive採用對列值雜湊,然後除以桶的個數求餘的方式決定該條記錄存放在哪個桶當中。把錶 或者分割槽 組織成桶 bucket 有兩個理由 1 獲得更高的查詢處理效率...
Hive學習筆記 Hive 引數
第一部分 hive 引數 hive.exec.max.created.files 說明 所有hive執行的map與reduce任務可以產生的檔案的和 預設值 100000 hive.exec.dynamic.partition 說明 是否為自動分割槽 預設值 false hive.mapred.re...
Hive學習筆記 Hive概述
1.1 資料倉儲 可以利用資料倉儲來儲存我們的資料,但是資料倉儲有別於我們常見的一般資料庫。資料倉儲是乙個面向主題的 整合的 不可更新的 隨時間不變化的資料整合,它用於支援企業或組織的決策分析處理。物件導向的 倉庫中的資料是按照一定的主題進行組織的。主題即使用者使用資料倉儲進行決策時所關心的重點方面...