1. 程式人生 > >HIve中分割槽資料關聯的三種方式

HIve中分割槽資料關聯的三種方式

之前的分割槽表都是先建立表然後載入資料到分割槽表中,然後就會在HDFS自動建立相關的目錄儲存資料,但是這裡反過來做,先在HDFS中建立相應的目錄,然後把資料直接上傳到這個目錄下,具體如下所示

先在HDFS中建立存放資料的目錄

dfs -mkdir -p /user/hive/warehouse/ys.db/test/month=201809/day=02;

然後直接上傳資料到該目錄下

 dfs -put /opt/package/hive/txt/dept.txt /user/hive/warehouse/ys.db/test/month=201809/day=02;

這時候查詢資料會發現沒有資料,只有相應的欄位

這是因為分割槽表與資料還沒有關聯起來,下面有3中方法進行關聯

1.執行修復命令

msck repair table test;

2.執行新增分割槽

 alter table test add partition(month='201809', day='02');

3.load資料到分割槽

load data local inpath '/opt/package/hive/txt/dept.txt' into table test partition(month='201809',day='02');

這時候再查詢資料就會查到了