impala性能最佳實(shí)踐
1)根據(jù)數(shù)據(jù)大小選擇合適的文件格式巩螃。對(duì)于每個(gè)表或分區(qū)都達(dá)很多G的數(shù)據(jù)璧针,使用Parquet是性能表現(xiàn)最好的。
2)基于數(shù)據(jù)大小選擇分區(qū)粒度十厢。通常來說等太,最好保證每個(gè)分區(qū)的數(shù)據(jù)不小于256MB。過度分區(qū)會(huì)導(dǎo)致查詢很多不需的分區(qū)而造成查詢太長(zhǎng)蛮放。理想情況下缩抡,表的分區(qū)數(shù)要低于3萬個(gè)。在每個(gè)分區(qū)目錄下包颁,保存的文件應(yīng)該是幾個(gè)大文件缝其,而不要保存很多小文件。如果接收的數(shù)據(jù)本身是很多小文件徘六,要考慮使用INSERT …SELECT語句將一個(gè)表或分區(qū)的數(shù)據(jù)復(fù)雜到其他表或分區(qū),這會(huì)壓縮文件達(dá)到較少的數(shù)量榴都。
3)選擇一個(gè)合適的Parquet block尺寸待锈。
4)將傳輸結(jié)果回客戶端的最小負(fù)載最小化。
5)驗(yàn)證你的查詢的邏輯是不是高效的嘴高。執(zhí)行之前竿音,通過EXPLAIN檢測(cè)一下和屎。
6)驗(yàn)證查詢的性能特征。IO春瞬、內(nèi)存使用柴信、網(wǎng)絡(luò)帶寬、CPU利用率等等宽气。
7)使用合適的操作系統(tǒng)設(shè)置