1. 程式人生 > >ElasticSearch58:核心原理揭祕_最後優化寫入流程實現海量磁碟檔案合併(segment merge, optimize)

ElasticSearch58:核心原理揭祕_最後優化寫入流程實現海量磁碟檔案合併(segment merge, optimize)

1.每秒一個segment file,檔案過多,而且每次search都要搜尋所有的segment,很耗時
預設會在後臺執行segment merge操作,在merge的時候,被標記為deleted的document也會被徹底物理刪除
每次merge操作的執行流程
1)選擇一些有相似大小的segment,merge成一個大的segment
2)將新的segment flush到磁碟上去
3)寫一個新的commit point,包括新的segment,並且排除舊的那些segment
4)將新的segment開啟供搜尋
5)將舊的segment刪除






2.我們也可以手動進行segment merge操作
POST /my_index/_optimize?max_num_segment=1
但是不建議手動執行merge操作,儘量讓es自動執行這些維護操作

圖解路徑:

http://img.my.csdn.net/uploads/201801/10/1515573063_5193.png