分割槽表的查詢
讓分割槽表和資料產生關聯的三種方式
create
table student(id int
,name string)
partitioned by
(day string)
row format delimited fields
terminated
by','
;
load
data
local inpath '/home/data'
into
table student partition
(day
='2020-11-29'
);
select
*from student where
day=
'2020-11-29'
;
select
*from student where
day=
'2020-11-29'
;
select
*from student where
day=
'2020-11-20'
orday
='2020-11-29'
;
alter
table table_name add
partition
(day
='2020-11-29');
//增加多個
alter
table table_name add
partition
(day
='2020-11-29'
)partition
(day
='2020-11-30'
);
alter
table table_name drop
partition
(day
='2020-11-29');
//同時刪除多個分割槽
alter
table table_name drop
partition
(day
='2020-11-29'),
partition
(day
='2020-11-30'
);
create
table student(id int
,name string)
partitioned by
(day string,
hour string)
row format delimited fields
terminated
by','
;
load
data
local inpath '/home/data'
into
table student partition
(day
='2020-11-29'
,hour
='13'
);
select
*from student where
day=
'2020-11-29'
;select
*from student where
day=
'2020-11-29'
andhour
='13'
;
msck repair table student;
alter
table student add
partition
(day
='2020-10-11'
);
load
data
local inpath '/home/data.txt'
into
table student partition
(day
='2020-11-29'
);
//開啟動態分割槽功能(預設true,開啟)
hive.
exec
.dynamic.
partition
=true
//設定為非嚴格模式(動態分割槽模式,預設strict,表示必須指定至少乙個富趣味靜態分割槽,
//nonstrict模式表示允許所有的分割槽欄位都可以是使用動態分割槽)
hive.
exec
.dynamic.
partition
.mode
=nonstrict
//在所有執行mr的節點上,最大一共可以建立多少個動態分割槽,預設是一千
hive.
exec
.max.dynamic.partitions=
1000
//這個是每個mr節點上最大的動態分割槽數、這個需要根據實際情況來定,比如儲存了一年的資料,要動態分割槽,
//如果是以天來分割槽的話,那麼動態分割槽應該大於365,否則會報錯
hive.
exec
.dynamic.partitions.pernode=
100//整個mrjob最大可以建立多少hdfs檔案,預設1000000
hive.
exec
.max.
create
.file
=100000
//當有空分割槽生成時是否丟擲異常,一般不需要設定,預設false
hive.error.
on.empty.
partition
=false
create
table student(id int
,name string)
partitioned by
(day string)
row format delimited fields
terminated
by','
;
insert
into
table student partition
(day
)select id,name,
dayfrom dept;
hive 分割槽表
partitioned by create table tb name name string partitioned by age int row format delimited fields terminated by t load data local inpath file path in...
hive分割槽表
partition對應於資料庫的 partition 列的密集索引 在 hive 中,表中的乙個 partition 對應於表下的乙個目錄,所有的 partition 的資料都儲存在對應的目錄中 例如 test表中包含 date 和 city 兩個 partition 則對應於date 201302...
hive 分割槽表
建立分割槽表的原因 單錶資料量隨著時間越來越大。為了避免全表掃瞄,引入分割槽。hive分割槽和mysql分割槽表的區別?hive分割槽使用表外字段,mysql使用表內字段。hive分割槽表細節?1.hive分割槽的字段是乙個偽欄位,它不會在表中真實存在,可以用來過濾查詢等 2.乙個表或者乙個分割槽可...