優點
1.Impala不需要把中間結果寫入磁碟,省掉了大量的I/O開銷。2.省掉了MapReduce作業啟動的開銷。MapReduce啟動task的速度很慢(默認每個心跳間隔是3秒鐘),Impala直接通過相應的服務進程來進行作業調度,速度快了很多。
3.Impala完全拋棄了MapReduce這個不太適合做SQL查詢的範式,而是像Dremel一樣借鑑了MPP並行資料庫的思想另起爐灶,因此可做更多的查詢最佳化,從而省掉不必要的shuffle、sort等開銷。
4.通過使用LLVM來統一編譯運行時代碼,避免了為支持通用編譯而帶來的不必要開銷。
5.用C++實現,做了很多有針對性的硬體最佳化,例如使用SSE指令。
6.使用了支持Datalocality的I/O調度機制,儘可能地將數據和計算分配在同一台機器上進行,減少網路開銷。
功能
1.Impala可以根據Apache許可證作為開源免費提供。2.Impala支持記憶體中數據處理,它訪問/分析存儲在Hadoop數據節點上的數據,而無需數據移動。
3.使用類SQL查詢訪問數據。
4.Impala為HDFS中的數據提供了更快的訪問。
5.可以將數據存儲在Impala存儲系統中,如ApacheHBase和Amazons3。
6.Impala支持各種檔案格式,如LZO,序列檔案,Avro,RCFile和Parquet。