-
1. Hive Only:一種載入分割槽資料的快速方法。
如果指定的分割槽不存在,Hive 將建立乙個新分割槽。
此命令將:
1) 如果不存在,請將元資料新增到表中進行分割槽。
2)如果存在,則建立乙個子目錄:user hive warehouse call logs call date=2014-10-02
3) 將 HDFS 檔案移動到分割槽子目錄。
2. 檢視、新增和刪除分割槽。
1) 檢視當前表分割槽。
2) 使用 Alter Table 新增或刪除分割槽。
3. 從現有分割槽目錄建立分割槽。
1)HDFS分割槽目錄可以在Hive或Impala之外建立資料,例如通過Spark或MapReduce應用程式。
2) Hive 使用 msck repair table 命令為現有表建立分割槽。
第四,何時使用分割槽。
分割槽用於以下情況。
1)讀取整個資料集需要很長時間。
2) 查詢幾乎只對分割槽字段進行過濾。
3)分割槽列具有合理數量的不同值。
4) 資料生成或 ETL 過程按檔案或目錄名稱對資料進行分段。
5) 分割槽列值不在資料本身中。
5. 何時不使用分割槽。
1)避免將資料劃分為許多小資料檔案。
不要對具有太多唯一值的列進行分割槽。
2)注意:使用動態分割槽時容易發生。
例如,根據 fname 對客戶端表進行分割槽將導致數千個分割槽。
6. 用於分割槽的 Hive。
在較舊的 Hive 版本中,預設情況下未啟用動態分割槽,通過設定以下兩個屬性來啟用:
但是在蜂巢分割槽中有一些問題需要注意,比如:
1)注意:beeline設定的hive變數僅對當前會話有效,系統管理員可以設定永久生效。
2)注意:如果分割槽列具有許多唯一值,則將建立許多分割槽。
此外,我們可以為 hive 配置引數來限制分割槽的數量
1)查詢乙個節點上可以建立的最大動態分割槽數,預設為100個
2) HiveQL 語句預設可以建立的動態分割槽的最大數量為 1000 個
3) 查詢可建立的最大動態分割槽數,預設為 1000000
在個人資料夾下單擊滑鼠右鍵以建立乙個新資料夾。 例如,要建立乙個名為:張三的新資料夾,您首先單擊個人灰塵資料夾下的一封電子郵件,右鍵單擊,建立規則,高階選項,然後勾選發件人為張三派的選項。 >>>More