Hive入門(二)分割槽

2022-09-12 03:39:10 字數 1030 閱讀 8806

hive查詢中一般會掃瞄整個表內容,會消耗很多時間。有時候只需要查詢表中的一部分資料,因此建表時引入了partition(分割槽)概念。

表中的乙個 partition 對應於表下的乙個目錄,所有的 partition 的資料都儲存在對應的目錄中,因此,使用分割槽,很容易對資料進行部分查詢。

注意:

建立分割槽必須在建表前。 

a) 單分割槽建表語句:create table day_table (id int, content string) partitioned by (dt string);

單分割槽表,按天分割槽,在表結構中存在id,content,dt三列。以dt為資料夾區分

b) 雙分割槽建表語句:create table day_hour_table (id int, content string) partitioned by (dt string, hour string);

雙分割槽表,按天和小時分割槽,在表結構中新增加了dt和hour兩列。先以dt為資料夾,再以hour子資料夾區分

如果是分割槽外部表一定要對外部表執行alter table table_name add partition。否則是根本訪問不到資料的

假定有hive中有empl_ext(外部表),有分割槽(logdate string);

alter

table empl_ext add partition (logdate=『2015-02

-26』) location 『hdfs://nameservice1/vod_pb/』;

load data inpath '

hdfs://nameservice1/vod_pb/

' overwrite into

table empl_ext partition(logdate=

'2015-02-26

');

當資料被載入至表中時,不會對資料進行任何轉換。load操作只是將資料複製至hive表對應的位置。資料載入時在表下自動建立乙個目錄,檔案存放在該分割槽下

hive計畫(二)分割槽

使用hive e 可以執行多條語句 hive e sentence1 sentence2 進入hive 後檢視當前路徑 pwd hive 介面使用命令檢視hdfs路徑 dfs ls 使用desc可以檢視表的資訊 desc 檢視分割槽表的分割槽資訊 show partitions一般分割槽資訊不存在於...

kafka入門(二)分割槽和group

topic 在kafka中訊息是按照topic進行分類的 每條發布到kafka集群的訊息都有乙個類別,這個類別被稱為topic parition 乙個topic可以配置幾個parition,每乙個分割槽都是乙個順序的 不可變的訊息佇列,並且可以持續的新增。分割槽中的訊息都被分了乙個序列號,稱之為偏移...

Hive(二) 分區分桶,內部表外部表

hive是hadoop生態圈中實現資料倉儲的一項技術。雖然hadoop和hdfs的設計侷限了hive所能勝任的工作,但是hive仍然是目前網際網路中最適合資料蒼鷺的應用技術。不論從 品相還是舉止 hive都像乙個關係型資料庫。使用者對資料庫 表和列這類術語比較熟悉的話,那麼掌握hive的查詢語言hq...