HIVE 第三章 表分割槽

2021-09-12 03:15:53 字數 1425 閱讀 4966

3.表篇分割槽

不用於關聯式資料庫partition中的字段可以不再table中,但是partition中的字段可以如同table中column一樣使用這樣可以加快查詢速度,因為只用查詢乙個目下檔案就可以了這裡分割槽分為單分割槽partition乙個column,多分割槽partition多個column單分割槽就乙個目錄,多分割槽也是乙個目錄,並巢狀多個目錄

例項:按照 country 和 state 給employee多分割槽

create table employees (

name string,

salary float,

subordinates array,

deductions map,

address struct

partitioned by (country string, state string);

檢視partition

show partitions employees;

show partitions employees partition(country='us');

新增partition(不區分大小寫)

alter table employees add partition(country='us',state='dallas')

alter table employees add partition(country='us',state='dallas') location '/home/hadoop/us-dallas'

alter table employees add partition(country='us',state='dallas') location '/home/hadoop/us-dallas' partition(country='us',state='ca') location '/home/hadoop/us-dallas'

刪除partition,分割槽資料和元資料都被刪除

alter table employees drop partition(country='us',state='dallas');

向分割槽中新增資料

load data inpath '/home/hadoop/resource/dallas' into table employees partition(country='us',state='dallas');

分割槽的屬性

set hive.mapred.mode=strict;屬性禁止沒有where的語句執行在partition的table上(防止資料量巨大得table,執行這樣沒有限制的語句)

set hive.mapred.mode=nonstrict;

第三章 結構表

線性表 零個或多個相同特性的資料元素的有限序列。首先它是乙個序列,元素之間是有順序 的,第乙個元素無前驅,最後乙個元素無後繼,其他的都有且只有乙個前驅和後繼。而所有元素按這種1對1的鄰接關係構成的整體就是線性表。線性表的儲存結構 線性表有順序表和鏈式兩類儲存結 構 一 順序表 順序表就是把線性表中的...

第三章 鍊錶

redis中除了鍊錶鍵之外,發布與訂閱 慢查詢 監視器等功能也用到了鍊錶,redis伺服器本身還使用鍊錶來儲存多個客戶端的狀態資訊,以及使用鍊錶來構建客戶端輸出緩衝區。鍊錶節點定義 typedef struct listnode listnode 鍊錶型別定義 無環 表頭節點的prev指標和表尾節點...

第三章 表,棧,佇列

在實踐中如果知道變動將要發生的地方,那麼向鍊錶插入或從鍊錶中刪除一項的操作不需要移動很多的項,而只涉及常熟個節點鏈的改變 雙鏈表 1.arraylist與linkedlist的優缺點 arraylist 查詢快,增刪慢 linkedlist 增刪快,查詢慢 使用linkedlist的優點在於新項的插...