2017-09-15 278 views
0

准入控制嵌入在每個impalad守護程序中,並通過statestore服務進行通信。 impalad後臺程序確定查詢是立即運行還是查詢排隊。 但是,如果突然的請求流導致更多查詢的運行時間超出預期,則整個Impala內存限制和羣集級別的Linux cgroups機制將成爲防止內存過度分配的硬限制。當查詢達到這些限制時,Impala取消查詢。Impala資源管理

這是否意味着Impala資源限制在個別Impala守護程序級別或集羣級別強制執行?

回答

0

答案是兩者。每個impalad daemon都有自己的MEM_LIMIT。超過它將導致查詢被取消。即使這些impalad根據集羣級別的池資源作出接納決定,即使門衛(決定是應該運行還是排隊查詢)處於每個impalad級別,准入控制池也可以在集羣級別運行。這就是爲什麼當有大量查詢發送到不同的impalad實例時,impalad守護進程可能會接受比他們應該更多的查詢,因爲他們當時無法獲取最新的羣集資源使用信息。 CGroup限制不會導致查詢被取消。它確定CPU在爭用CPU時應該得到的CPU的百分比。

+0

每個impalad daemon都有它自己的MEM_LIMIT.Is這是MEM_LIMIT在env.sh中設置的還是它不同? – srini

+0

不知道您的設置,但它作爲-mem_limit選項傳遞給impalad。如果您使用Cloudera Manager,則可以搜索MEM_LIMIT並將其設置在那裏。 – Lan