es學習之狀態管理

es中提供了一些接口包括清除索引緩存,刷新索引,沖洗索引,合併索引接口等

清除緩存

清除緩存接口可以清除所有緩存或者關聯一個或更多索引的特定緩存:

POST http://127.0.0.1:9200/secisland/_cache/clear

接口默認清理所有緩存,可以明確設置query,fielddata和request來清理特定緩存
所有關聯特定字段的緩存也可以被清理

刷新索引

刷新接口可以明確地刷新一個或多個索引,使之前最後一次刷新之後的所有操作被執行。實時能力取決於使用的搜索引擎
刷新所有索引:

POST http://127.0.0.1:9200/_refresh

沖洗

索引主要通過執行沖洗將數據保存到索引存儲並且清除內部事務日誌,以此來釋放索引的內存空間。默認,es使用內存啓發式算法來自動觸發沖洗操作的請求來清理內存

POST http://127.0.0.1:9200/secisland/_flush

合併索引

合併接口可以強制合併一個或者多個索引,合併分片數量和每個分片保存的Lucene索引,強制合併可以減少分片數量
強制合併會阻塞請求直到合併完成,http連接丟失,請求會在後臺繼續執行,任何新的請求都會被阻塞,直到合併完成

POST http://127.0.0.1:9200/secisland/_forcemerge

合併接口參數:

  • max_num_segment—用於合併分片數量,爲使其充分合並,通常設置值爲1,默認線檢查是否要進行合併。
  • only_expunge_deletes—合併過程是否只刪除分片中被刪除的文檔。在Lucene中,文檔不會從分片中刪除,只是標記爲刪除。執行分片合併,一個不包含被刪除的文檔的新分片會被創建。這個標識只合併擁有刪除文檔的分片。默認值爲false。注意index.merge.policy.expunge_deletes_allowed閾值不會被覆蓋
  • flush—強制合併之後是否執行沖洗,默認爲true。
    合併接口可以通過單次應用到多個索引,或者所有索引
POST http://127.0.0.1:9200/_forcemerge
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章