ElasticSearch調優問題

2022-08-14 21:09:07 字數 683 閱讀 1265

1. 近期遇到乙個es記憶體居高不下的問題,查了查,發現es有個fielddata,當你發起乙個查詢,分析字串的聚合將會被載入到 fielddata,如果這些字串之前沒有被載入過。如果結果中 fielddata 大小超過了指定大小,其他的值將會被**從而獲得空間。預設情況下,設定都是 unbounded ,elasticsearch 永遠都不會從 fielddata 中**資料。設想我們正在對日誌進行索引,每天使用乙個新的索引。通常我們只對過去一兩天的資料感興趣,儘管我們會保留老的索引,但我們很少需要查詢它們。不過如果採用預設設定,舊索引的 fielddata 永遠不會從快取中**! fieldata 會保持增長直到 fielddata 發生斷熔,這樣我們就無法載入更多的 fielddata。這個時候,我們被困在了死胡同。但我們仍然可以訪問舊索引中的 fielddata,也無法載入任何新的值。相反,我們應該**舊的資料,並為新值獲得更多空間。設定

indices.fielddata.cache.size引數就是乙個比較好的解決方案。另外設定

bootstrap.mlockall: true可以允許 jvm 鎖住記憶體,禁止作業系統交換出去,從而提高效能。

監控節點:get _nodes/stats

監控集群:get _cluster/stats

1.   限制es記憶體使用

2.  堆記憶體設定

3.  監控資訊

ElasticSearch 引數調優

系統層面的調優主要是記憶體的設定與避免交換記憶體。es 安裝後預設設定的堆記憶體是1gb,這很明顯是不夠的,那麼接下來就會有乙個問題出現 我們要設定多少記憶體給 es 呢?其實這是要看我們集群節點的記憶體大小,還取決於我們是否在伺服器節點上還是否要部署其他服務。那我們在建立索引的時候,應該建立多少個...

ElasticSearch效能調優

介紹 elasticsearch 效能調優的一些常用引數。一塊好的硬碟,會帶來 es 整體效能 10 倍以上提公升,推薦在 datanode 節點上使用 ssd 硬碟,索引的 data 目錄,存放在 ssd 硬碟上。建議記憶體 128g 時,es 使用的 jvm 記憶體為 30g,lucene 會消...

Elasticsearch調優記錄

部署elasticsearch服務,主要提供記錄使用者登入日誌 訪問日誌,統計,查詢等功能。遇到的問題為 cpu使用率激增到60 左右,最高值到達90 伺服器監控系統開始報警。elasticsearch是基於j a開發的,先檢視elasticsearch程序的運 況,然後檢視jvm相關引數。生產環境...