合肥網(wǎng)站建設(shè)工作室企業(yè)qq多少錢一年
目錄
- 一、段的概述
- 1.1、段的概念
- 1.2、段的缺點(diǎn)
- 1.3、如何解決段數(shù)量暴增問題
- 二、段合并的流程
- 三、段合并的注意事項(xiàng)
一、段的概述
1.1、段的概念
- 每一 段 本身都是一個(gè)倒排索引。
1.2、段的缺點(diǎn)
- 由于自動(dòng)刷新流程每秒會(huì)創(chuàng)建一個(gè)新的段 ,這樣會(huì)導(dǎo)致短時(shí)間內(nèi)的段數(shù)量暴增。
- 每一個(gè)段都會(huì)消耗文件句柄、內(nèi)存和 cpu 運(yùn)行周期;更重要的是,每個(gè)搜索請求都必須輪流檢查每個(gè)段。
- 所以,段越多,搜索也就越慢。
1.3、如何解決段數(shù)量暴增問題
- Elasticsearch 通過在后臺(tái)進(jìn)行段合并來解決這個(gè)問題。小的段被合并到大的段,然后這些大的段再被合并到更大的段。
- 段合并的時(shí)候會(huì)將那些舊的已刪除文檔從文件系統(tǒng)中清除。被刪除的文檔(或被更新文檔的
舊版本)不會(huì)被拷貝到新的大段中。 - 啟動(dòng)段合并不需要你做任何事。進(jìn)行索引和搜索時(shí)會(huì)自動(dòng)進(jìn)行。
二、段合并的流程
-
當(dāng)索引的時(shí)候,刷新(refresh)操作會(huì)創(chuàng)建新的段并將段打開以供搜索使用。
-
合并進(jìn)程選擇一小部分大小相似的段,并且在后臺(tái)將它們合并到更大的段中。這并不會(huì)
中斷索引和搜索。
-
一旦合并結(jié)束,老的段被刪除
(1)、新的段被刷新(flush)到了磁盤。 ** 寫入一個(gè)包含新段且排除舊的和較小的段的新提交點(diǎn)。
(2)、新的段被打開用來搜索。
(3)、老的段被刪除。
三、段合并的注意事項(xiàng)
- 合并大的段需要消耗大量的 I/O 和 CPU 資源,如果任其發(fā)展會(huì)影響搜索性能。
- Elasticsearch在默認(rèn)情況下會(huì)對(duì)合并流程進(jìn)行資源限制,所以搜索仍然有足夠的資源很好地執(zhí)行。