hive 優化(一)超大資料集動態分割槽優化

2021-09-11 10:49:41 字數 566 閱讀 6403

需求:     一張300+欄位,1億資料量的表,去重並重新按照天分割槽 ,

(1)方案:直接全表去重並按照字段 動態分割槽 

結果 : 失敗,由於資料量和字段過多,全表去重(row_number over())和 動態分割槽 都消耗過多資源,根本無法執行成功

(2)方案: 1.全表去重到中間表

2.中間表動態分割槽至原表

結果:失敗, 中間表執行成功使用15分鐘,但是中間表動態分割槽至原表時,整個集群檔案操作符飆公升,導致集群hbase 節點也不停 掉,程式也報broken_pip 的錯誤,搞的大家很鬱悶。冷靜分析如下:原表全表去重之後沒做任何處理,導致生成了1099個reduce檔案(集群單job 最大redece 數量),而每個檔案大約含有100個分割槽日期,這就導致了每個檔案要生成100個小檔案。一共要生成10萬個檔案,導致整個集群檔案操作符沾滿,進而影響集群和hbase

(3)最終方案。

1.全表去重到中間表 時 distribute

by   分割槽字段,這樣就可以 將相同分割槽的資料放到同乙個檔案中 用時 15 分鐘

2.新處理過的中間表 動態分割槽至原表, 用時3分鐘,問題完美解決

大資料hadoop系列 Hive優化

map階段的優化 作業會通過input的目錄產生乙個或多個map任務。a 假設input目錄下有1個檔案a,大小為780m,那麼hadoop會將該檔案a分隔成7個塊 6個128m的塊和1個12m的塊 從而產生7個map數 b 假設input目錄下有3個檔案a,b,c,大小分別為10m,20m,130...

優化大資料量的KML資料集

在google earth 的幫助檔案中,有對優化大資料集處理的簡單說明 在該幫助裡,對大型資料檔案做了圖塊化向量資料 regionating vector data 僅限專業版 的處理。建議用於大型資料檔案 向量資料圖塊化可限制較高海拔位置顯示的定點數量,自動提公升資料的質量。當放大畫面時,將會看...

大資料基礎之HIVE(一) 基礎知識,初學必看

1 基於hadoop的資料倉儲解決方案 將結構化的資料檔案對映為資料庫表 提供類sql的查詢語言hql hive query language hive讓更多的人使用hadoop 2 hive成為apache頂級專案 hive始於2007年的facebook 官網 hive.apache.org 1...