2011-04-04 33 views

回答

6

這個網站http://wiki.apache.org/hadoop/Hive/LanguageManual是你在處理Hive時的朋友。 :)

,解決將數據加載到配置單元的頁面是http://wiki.apache.org/hadoop/Hive/LanguageManual/DML 即頁指出

如果被使用,則 目標表的內容(或 分區)重寫關鍵字將被刪除,並 替換爲 文件路徑引用的文件。否則文件路徑中涉及 的文件將被添加到 表中。請注意,如果目標表 (或分區)已經有一個文件 ,它的名稱與包含在filepath中的任何 文件名衝突 - 然後 現有文件將被新文件替換 。

對於您的情況,您沒有使用OVERWRITE關鍵字,因此文件將被添加到表中。 (除非它們是相同的文件,在這種情況下它們將被覆蓋)

+0

假設我每天創建文件,例如20130808.csv並且必須重新導入這一天的數據。那麼我所要做的就是再次導入具有相同文件名20130808.csv的同一個文件,並且更新後的版本將被添加到表中?或者我必須通過某種查詢自己刪除行? – webDEVILopers 2013-08-08 13:00:29

+0

只是爲了更新,如果你們一次又一次地使用相同的文件加載,那將一次又一次地添加到表中,這並不是說你會得到覆蓋文件,你會使用相同的下一次加載。只是要提防這一點。 – 2017-12-13 13:43:12

0

如果使用OVERWRITE關鍵字,則目標表(或分區)的內容將被刪除並由文件路徑引用的文件替換;否則文件路徑引用的文件將被添加到表中。

相關問題