用集群腳本功能安裝大象醫生優化你的大數據作業
dr-elephant是linkedin開源的大數據作業診斷優化工具,可以讀取作業的日誌信息,給出可視化的問題診斷和優化建議。
本文介紹如何在emr集群上安裝大象醫生,並提供一個優化hive參數的完整示例。大象診斷的詳情文檔可以看官方文檔,後續本博客也會發表一些使用經驗。
注意:目前大象醫生還不支持spark2,社區正在開發,敬請期待。
安裝大象醫生
集群腳本功能介紹
參照 集群腳本功能介紹
準備腳本
下載 腳本,放在您的oss合適的目錄裏。
運行腳本
本文用的示例集群是EMR3.4.2版本,3節點,4核16GB的默認配置。
1. 集群列表頁麵點擊對應集群的管理按鈕
左側菜單單擊集群腳本,進入該集群的集群腳本執行界麵
單擊右上角創建並執行,進入創建界麵。
選擇剛才的腳本,設置名字,節點請隻選擇master節點,ha集群選擇集群詳情中第一個master節點,點擊確認,完成添加並執行操作。
集群腳本列表可以看到新創建的集群腳本,點擊刷新可以更新集群腳本的狀態。
等待集群腳本完成
安裝完成後,可以在master節點的
/root/dr-elephant-2.0.13/logs/application.log
看到Listening for HTTP on /0.0.0.0:8098
說明啟動成功,按照文檔用端口動態轉發功能打開UI,服務端口是8098。
本示例用ssh -i /path/id_rsa -N -L 8158:ip:8098 root@ip
,
本地瀏覽器打開https://localhost:8158/
,可以看到:
運行作業並優化
運行示例程序
使用交互式工作台的的hivedemo,依次運行,直到下麵的語句運行結束。
查看運行診斷
等待幾分鍾,可以在大象診斷的UI上看到剛才hive作業的診斷
有個reducer Memory的顏色不是綠色,點擊查看,可以看到是分配的reduce內存多,而實際用的少
點擊explain,可以看到解釋和優化建議
優化作業
根據優化建議,我們調整一下作業內容,set mapreduce.reduce.memory.mb=600;
,新建一張表,
等待幾分鍾,可以看到這次診斷沒有
相應提示了。
最後更新:2017-11-02 12:03:51