使用傳統(tǒng)的配置文件的SolrCloud

2018-01-04 14:26 更新

如果您正在從非SolrCloud環(huán)境遷移到SolrCloud,則此信息可能會(huì)有所幫助。

在 Solr 附帶的示例配置中已經(jīng)設(shè)置了所有必需的配置。如果您要遷移舊的配置文件,則只需添加以下內(nèi)容。如果您打算在SolrCloud模式下使用Solr,請(qǐng)不要從新的Solr實(shí)例中刪除這些文件和參數(shù)。

這些屬性在3個(gè)文件存在:schema.xml、solrconfig.xml和solr.xml。

  1. 在schema.xml中,你必須定義了一個(gè)_version_字段:
    <field name="_version_" type="long" indexed="true" stored="true" multiValued="false"/>
  2. 在solrconfig.xml中,你必須定義一個(gè)UpdateLog。這應(yīng)該在updateHandler部分中定義:
    <updateHandler>
      ...
      <updateLog>
        <str name="dir">${solr.data.dir:}</str>
      </updateLog>
      ...
    </updateHandler>
  3. 該DistributedUpdateProcessor是默認(rèn)更新鏈的一部分,并自動(dòng)注入到您的任何自定義更新鏈中,所以你實(shí)際上并不需要對(duì)此功能進(jìn)行任何更改。但是,如果你想明確地添加它,您仍然可以將其作為 updateRequestProcessorChain 的一部分添加到 solrconfig. xml 文件中。例如:
    <updateRequestProcessorChain name="sample">
      <processor class="solr.LogUpdateProcessorFactory" />
      <processor class="solr.DistributedUpdateProcessorFactory"/>
      <processor class="my.package.UpdateFactory"/>
      <processor class="solr.RunUpdateProcessorFactory" /> 
    </updateRequestProcessorChain>
    
    如果你不希望將DistributedUpdateProcessFactory自動(dòng)注入到鏈中(例如,如果你要使用SolrCloud功能,但希望自己分發(fā)更新),請(qǐng)?jiān)阪溨兄付ǜ绿幚砥鞴SNoOpDistributingUpdateProcessorFactory:
    <updateRequestProcessorChain name="sample">
      <processor class="solr.LogUpdateProcessorFactory" />
      <processor class="solr.NoOpDistributingUpdateProcessorFactory"/>
      <processor class="my.package.MyDistributedUpdateFactory"/>
      <processor class="solr.RunUpdateProcessorFactory" />
    </updateRequestProcessorChain>
    在更新過(guò)程中,Solr將跳過(guò)已經(jīng)在其他節(jié)點(diǎn)上運(yùn)行的更新處理器。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)