Hive表建立分區外部表並且添加每天的增量數據爲分區

一、數據倉庫建設過程中,我們都有每天的增量數據進來,我們需要把增量數據映射到我們的hive表中,但是爲了數據能夠被其他部門共同使用,並且需要對我們的原始數據進行綜合管理,在數據倉庫建設的第一層,我們就要使用外部表進行處理。

(外部表和內部表的區別自行查資料)

二、介紹一下怎麼從外部的一個文件怎麼映射成外部表並且分區,並且數據不會move到hive的相關目錄下面。

 

 1、將文件(textFile)上傳到hdfs中:

2、建外部表:

CREATE EXTERNAL TABLE tb_out_1 ( id String, name STRING, gender int ) 
PARTITIONED BY (dt int)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t' 
stored as TEXTFILE

注意要有分區字段!

一般公司裏面都是parquert格式,但是爲了演示方便,就使用了textfile格式

3、添加分區的信息和分區數據

alter table tb_out_1 
add partition (dt='20190808') 
location '/user/yanqingz/data/test/20190808/';

4、分配成功後文件還是存在原來的位置,並且分區數據已經有了:

這樣我們即實現了外部表的優勢,又將來源數據綜合管理(儘量將所有的來源數據都放在統一的文件夾裏面),而且每天的增量數據都可以通過add partition去添加。

 

完美。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章