Spark_算子調優
2916
2025-04-02
一. 問題背景與現象
1.某局點elasticsearch集群,單個ES數據實例cpu使用率持續很高,導致客戶入庫業務持續阻塞
如下圖,單實例cpu使用率達到了5106%
二.原因分析
1.看是哪類任務導致實例cpu使用率高(寫入還是查詢)
curl -XGET --tlsv1.2 --negotiate -k -u : "https://127.0.0.1:24100/_cat/tasks?"|grep EsNode1@ip
需把EsNode1@ip換成對應的實例名稱
如下圖,第一列全部是data/write/bulk任務(bulk表示寫入任務),說明為寫入業務造成此實例cpu使用率高
2.看相應任務,找到對應索引
如果是寫入任務導致,執行以下命令
curl -XGET --tlsv1.2 --negotiate -k -u : ?"https://127.0.0.1:24100/_tasks?nodes=EsNode1@ip&human&actions=*data/write/bulk&detailed"
需把EsNode1@ip換成對應的實例名稱
如下圖
indices[idx_theme_person_new]說明是idx_theme_person_new索引的寫入業務造成了此實例的cpu使用率很高
requests[10000]:idx_theme_person_new一批如庫的數據量過大,每次入庫的數據量是10000條,單條文檔數量是3.92kb,每批數據將近38mb
如果是其它業務導致,則需對語句做相應修改。將上述命令的data/write/bulk改為其它類型
例如查詢則執行以下命令:
curl -XGET --tlsv1.2 --negotiate -k -u : ?"https://127.0.0.1:24100/_tasks?nodes=EsNode1@ip&human&actions=*data/read/search&detailed"
把EsNode2@192.168.67.2換成對應的實例名稱
三.解決辦法
1.將idx_theme_person_new索引的寫入業務先停止,后續整改此索引的業務。將一批bulk寫入數據大小控制在15mb以內
2.為緊急恢復,可先重啟cpu使用率高的ES實例,同時將idx_theme_person_new索引的寫入業務停止
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。