• 執行計划
– 查詢sql執行之前,先對該sql做一個分析,列出需要完成這一項查詢的詳細方案
– 命令:explain sql、profile
要點:
• 1、SQL優化,使用之前調用執行計划
• 2、選擇合適的文件格式進行存儲
• 3、避免產生很多小文件(如果有其他程序產生的小文件,可以使用中間表)
• 4、使用合適的分區技術,根據分區粒度測算
• 5、使用compute stats進行表信息搜集
• 6、網絡io的優化:
– a.避免把整個數據發送到客戶端
– b.盡可能的做條件過濾
– c.使用limit字句
– d.輸出文件時,避免使用美化輸出
• 7、使用profile輸出底層信息計划,在做相應環境優化
• 8、如果是刷新表的新增元數據要使用refresh 表名 來刷新,不要使用impala-shell -r 或 invalidate metadata
• 9、如果執行SQL的結果內容較多的話可以使用 impala-shell -B 將一些不必要的樣式輸出去掉