Solr索引復(fù)制

2018-01-15 12:01 更新

索引復(fù)制

索引復(fù)制將主索引的完整副本分布給一個或多個從屬服務(wù)器。主服務(wù)器繼續(xù)管理對索引的更新。所有查詢都由從屬處理。通過這種分工,Solr可以進(jìn)行擴(kuò)展,以針對大型搜索量提供足夠的查詢響應(yīng)。

下圖顯示了使用索引復(fù)制的Solr配置。主服務(wù)器的索引被復(fù)制到從屬服務(wù)器上。

Solr索引復(fù)制

提示:Solr索引可以跨多個從服務(wù)器復(fù)制,然后處理請求。

Solr中的索引復(fù)制

Solr包含一個在 HTTP 上工作的索引復(fù)制的 Java 實(shí)現(xiàn):

  • 影響復(fù)制的配置由單個文件(solrconfig.xml)控制
  • 支持配置文件以及索引文件的復(fù)制
  • 在具有相同配置的平臺上工作
  • 不依賴于操作系統(tǒng)相關(guān)的文件系統(tǒng)功能(例如:硬鏈接)
  • 與Solr緊密集成;一個管理頁面可以對復(fù)制的每個方面進(jìn)行細(xì)粒度的控制
  • 基于Java的復(fù)制功能被實(shí)現(xiàn)為請求處理程序。因此,配置復(fù)制類似于任何普通的請求處理程序。

SolrCloud 中的復(fù)制

雖然在 SolrCloud 群集中沒有 "主/從" 節(jié)點(diǎn)的明確概念,但在該頁上討論的 ReplicationHandler 仍然被 SolrCloud 用于支持 "碎片恢復(fù)",這是以對等方式進(jìn)行的。

使用 SolrCloud 時,ReplicationHandler 必須通過/replication路徑可用。Solr 會隱式執(zhí)行此操作,除非在您的 solrconfig. xml 中顯式重寫,但如果您希望重寫默認(rèn)行為,請確定您沒有顯式設(shè)置下面提到的任何 "master" 或 "slave" 配置選項(xiàng),否則它們將干擾正常的 SolrCloud 操作。

復(fù)制術(shù)語

以下內(nèi)容定義了與Solr復(fù)制關(guān)聯(lián)的關(guān)鍵術(shù)語。

  • Index

    Lucene索引是文件的目錄。這些文件構(gòu)成了Solr核心的可搜索和可返回數(shù)據(jù)。

  • Distribution

    將索引從主服務(wù)器復(fù)制到所有從服務(wù)器。分布過程利用了Lucene的索引文件結(jié)構(gòu)。

  • Inserts 和 Deletes

    當(dāng)索引中發(fā)生插入和刪除時,目錄保持不變。文檔總是被插入到新創(chuàng)建的文件中。被刪除的文件不會從文件中刪除。它們被標(biāo)記在文件中,可刪除,并且不會從文件中刪除,直到索引被優(yōu)化。

  • Master 和 Slave

    Solr復(fù)制主機(jī)是一個單獨(dú)的節(jié)點(diǎn),它最初接收所有的更新并保持所有的組織。Solr復(fù)制從節(jié)點(diǎn)不直接接收更新,而是針對單個主節(jié)點(diǎn)進(jìn)行所有更改(如插入,更新,刪除等)。主服務(wù)器上所做的更改將分發(fā)給所有從客戶端處理所有查詢請求的從服務(wù)器節(jié)點(diǎn)。

  • Update

    更新是針對單個Solr實(shí)例的單個更改請求。這可能是刪除文檔、添加新文檔、更改文檔、刪除與查詢匹配的所有文檔等的請求。更新在單個Solr實(shí)例中同步處理。

  • Optimization

    壓縮索引并合并段以提高查詢性能的過程。優(yōu)化只能在主節(jié)點(diǎn)上運(yùn)行。相比于在許多更新中已經(jīng)變得碎片化的索引,經(jīng)優(yōu)化的索引可以提供查詢性能增益。分配一個優(yōu)化的索引需要比將新的分段分配給未優(yōu)化的索引要長得多的時間。

  • Segments

    索引的一個自包含子集,包含與這些文檔中的術(shù)語倒排索引相關(guān)的一些文檔和數(shù)據(jù)結(jié)構(gòu)。

  • mergeFactor

    一個控制索引中段數(shù)的參數(shù)。例如,當(dāng)mergeFactor設(shè)置為3時,Solr將用文檔填充一個段,直到滿足限制maxBufferedDocs,然后它將開始一個新的段。當(dāng)達(dá)到由mergeFactor指定的段數(shù)(在這個例子中為3)時,Solr將把所有段合并成單個索引文件,然后開始將新文檔寫入新段。

  • Snapshot

    包含指向索引數(shù)據(jù)文件的硬鏈接的目錄。Snapshot從主節(jié)點(diǎn)分發(fā),當(dāng)從服務(wù)器拉取它們時,“智能復(fù)制”從節(jié)點(diǎn)在快照目錄中沒有包含到最新索引數(shù)據(jù)文件的硬鏈接的任何段。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號