全部產品
Search
文件中心

E-MapReduce:常見問題

更新時間:Jul 01, 2024

本文匯總了使用Impala時的常見問題。

Impala 3.4使用JDBC查詢Impala 10秒提示會話逾時,該怎麼辦?

您可以在Impala控制台通過命令設定FETCH_ROWS_TIMEOUT_MS參數為0,指定會話永不到期。命令樣本如下所示。

jdbc:impala://impala-hive.ymt.io:21050/ymtcube;FETCH_ROWS_TIMEOUT_MS=0

Impala無法找到Hive新增的表,該怎麼辦?

在Impala之外操作中繼資料後,您可以在Impala控制台通過使用命令INVALIDATE METADATA,以重新整理全庫或者某個表的中繼資料。

Impala寫入Hive表資料的時候,是否可以修改寫入檔案的owner?

使用Impala寫入的表檔案的owner預設為Impala,暫不支援修改。

如何調整Impalad可使用的節點記憶體總量?

您可以在EMR控制台Impala服務的配置頁簽,在搜尋地區搜尋mem_limit參數,預設值為80%,表示允許使用本機記憶體的80%來計算。您也可以配置為具體的記憶體大小,例如10G

如何限制單條查詢語句消耗記憶體的大小?

可以使用SQL語句set MEM_LIMIT=Xg限制,在該語句Session範圍內生效。

如何提升非JOIN語句的查詢效率?

對於單條沒有JOIN的查詢語句,您可以在Impala控制台通過命令設定mt_dop參數為n以提升並發度,其中n為每台機器的並發度。

Ranger開啟Impala後,新擴容的Impala節點無法正常工作,該怎麼辦?

  • 問題現象:EMR-5.6.0及之前的版本,在EMR控制台上Ranger開啟Impala並擴容節點後,新擴容的Impala節點無法正常工作。

  • 問題分析:開啟Ranger會將Ranger相關設定檔複製到各個Impalad的配置中,使Impala支援Ranger。然而,在擴容時未觸發此操作,導致新擴容的節點缺少Ranger相關配置,從而無法正常工作。

  • 解決方案:您可以通過以下兩種方式處理。

    • 方式一:在EMR控制台中的Ranger服務的狀態頁簽中,選擇RangerAdmin操作列的image.png > enableImpala,重新執行enableImpala的操作。

    • 方式二:登入叢集的emr-header-1節點,將/etc/ecm/impala-conf目錄下的ranger-hive-audit.xmlranger-hive-security.xmlranger-policymgr-ssl.xmlranger-security.xml四個檔案複製到新擴容節點的/etc/ecm/impala-conf目錄下。