天天看點

impala的工作原理的詳解(圖文)

工作原理:

     impala屬于Cloudera,基于記憶體的,可使用者實時的互動式查詢。Cloudera建議Impala叢集記憶體最少128G,Impalad與DataNode運作在同一節點上

impala的工作原理的詳解(圖文)

impala與Hivemetastore database相內建,這兩個元件之間可以共享database和table。

如圖所示,Impala主要由Impalad, State Store和CLI組成。

Impalad: 與DataNode運作在同一節點上,由Impalad程序表示,它接收用戶端的查詢請求(接收查詢請求的Impalad為Coordinator,Coordinator通過JNI調用java前端解釋SQL查詢語句,生成查詢計劃樹,再通過排程器把執行計劃分發給具有相應資料的其它Impalad進行執行),讀寫資料,并行執行查詢,并把結果通過網絡流式的傳送回給Coordinator,由Coordinator傳回給用戶端。同時Impalad也與State Store保持連接配接,用于确定哪個Impalad是健康和可以接受新的工作。在Impalad中啟動三個ThriftServer: beeswax_server(連接配接用戶端),hs2_server(借用Hive中繼資料), be_server(Impalad内部使用)和一個ImpalaServer服務。