Hive優化面試題


對待像我這種2年開發經驗的同學

一般都會被問到。 在面試中,我們只要簡短的介紹就好了。

首先低調一波,我可能懂的比你少,我就簡單說說

1.在排序中,我們使用的是sortBy,它是基於索引,效率高於order by

2.我們在分區的時候采用靜態分區,靜態分區只是讀取配置文件,而動態分區需要重復的讀取其它分區的標識,大量的制造了不必要的開銷

3.在對待groupBy的數據傾斜的方面,我們設置hive.group.sviWind=ture,這表明它會自動進行負載均衡,去除了數據傾斜的問題

4.hive比較擅長處理大文件,大文件會有效的減少過多job,task的創建,這里我們使用UDF和UDAF來處理數據。UDF是單一處理,解決BUG,UDAF是多行處理,還有UDTF,這里我們不用還是說簡單說一下

是單一輸入,多行輸出。

5.減少job和task的數量,我們使用表的鏈接。

6.小表join大表

7.大表join大表,過濾空key

8.設置並行數

9.關閉推測執行

10.設置索引

 

在送點彩蛋,如果被問到hive中有哪些常用函數,

嗯.!有窗口函數,分析函數,比如row_number,distct,Rank,over by,lag,DENSE_RANK


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM