由於前期大家使用impala的時候都比較隨意,再加上對impala的原理不清楚,因此在使用的過程中對impala帶來了很大的壓力。
經過前段時間的研究和實驗。我整理了乙份impala使用文件,供組內小夥伴使用。
只有通過hdfs增加或刪除分割槽中檔案後,才需要人為更新元資料,其餘情況依賴impala自帶更新機制即可。
通過hdfs增加或刪除分割槽中檔案後一律使用refresh tablename操作,效能損耗最低。
日常查詢操作一律不加-r引數。如果出現提示元資料過期(該提示為目前版本bug,不必理會),可斷開重連或者使用refresh操作。
注意:如果在同乙個shell指令碼中,先執行了ddl操作,然後又對相應的庫執行查詢,會出現元資料同步延遲導致無法讀取資訊的操作。
使用場景:
通過hdfs新增或刪除分割槽下檔案
使用規範:
通過hdfs在分割槽中新增和刪除檔案後,使用refresh tablename操作
其餘任何操作不需要使用。
使用建議:
如果提示某張表元資料可能過期時,可以斷開impala-shell後重連或者使用該語句。
日常impala任務,可以取消指令碼中的-r引數,使用refresh tablename代替。
在查詢端,不需要執行任何元資料相關的操作。
該操作等同於invalidate metadata
。
使用場景:
通過hive修改元資料
通過hdfs新增或刪除分割槽下檔案
使用規範:
個人任務指令碼中不使用
查詢任務時不使用
使用建議:
除非在短時間內通過hdfs或者hive修改了大量的元資料,否則不要使用。
使用場景:
使用場景同-r引數
使用規範:
個人任務指令碼中不使用
查詢任務時不使用
使用建議:
使用hive進行表ddl操作後需要執行invalidate metadata tablename
使用場景:
同refresh tablename
使用規範:
一律使用refresh操作代替該操作。
在shell指令碼(使用impala)中如果先執行ddl操作,而且需要立即執行查詢或者插入操作,需要在查詢或者插入操作執行invalidate metadata tablename
操作。
總體說明:
1.大批量的任務以後通過負載均衡
2.jdbc和impala-shell分別使用相應的連線埠
使用舉例:
jdbc:hive2://host:25003/;auth=nosasl
使用舉例:
通過shell執行的指令碼,統一使用impala統一提交指令碼
為便於impala提交任務管理,以及集群節點故障後保證impala提交任務能正常執行,以後impala的shell任務統一使用平台提供的指令碼。
統一分配impala連線資訊。
統一分配mysql連線資訊。
排程系統:/path/get_ds_conf.sh
提交機:/path/get_ds_conf.sh
impala使用舉例
#!/bin/bash
source /path/get_ds_conf.sh
#獲得配置資料
impala_commond=`getimpalacommand`
$"select * from table limit 100"
mysql使用舉例
#!/bin/bash
source /path/get_ds_conf.sh
mysql_commond=`getmysqlcommand`
$"select * from table limit 100"
文件在四五月份的時候就整理了,今天突然想起來這茬了,就整理處理,從word裡面摘出來一部分內容。
2016-08-31 15:40:00 hzct
Impala實踐之十三 Impala建表時的關鍵字
由於經常要幫資料分析抽表,因此自己寫了個自動生成impala和sqoop指令碼的工具,結果今天發現乙個庫中17張表,只成功匯入了12張。仔細檢查才發現是是由於impala建表時候字段使用了location關鍵字的原因。建表語句 impala shell i ip 25004 q drop table...
Impala實踐之十一 parquet效能測試
之前一直考慮更換impala的檔案儲存格式為parquet,但是沒有立即使用,最近又做了一些測試,看看parquet是否真的有用。在測試的時候順便測了一下compute語句的效果,一起作為參考。下面抽出乙個小業務的部分測試結果來展示。庫名和表名當然不是真的。表名行數 字段數物理儲存大小 ain342...
Impala實踐之五 一次系統任務堵塞記錄 思考
前言 前段時間,imppala資源告警,各種任務失敗,查詢堵塞,因此公司集群公升級。這次遷移的確必須,因為當時的集群規模很小,資源太緊張了。遷移集群後,今天集群再次出問題,導致乙個下午沒什麼事都沒乾,查了一下午的錯誤。事件發展 1.階段一 下午2點17分 資料組反映集群崩潰,hue介面不能登入,登入...