1. 程式人生 > >Solr6.1.0設定主鍵uuid的方法

Solr6.1.0設定主鍵uuid的方法

上一次介紹設定collocation的主鍵為uuid,只是為了索引檔案使用,那麼今天也有朋友加群說如果只用來做主鍵來記錄日誌等資料的時候,該如何配置呢?其實也是很簡單的。

一、在solrconfig.xml中新增兩段配置

1.在以下程式碼:

<requestHandler name="/updauuidte/extract"
                  startup="lazy"
                  class="solr.extraction.ExtractingRequestHandler" >
    <lst name="defaults">
      <str name="lowernames">true</str>
      <str name="fmap.meta">ignored_</str>
      <str name="fmap.content">_text_</str>
    </lst>
</requestHandler>

的前一面新增如下配置:

<requestHandler name="/update" class="solr.UpdateRequestHandler">
    <!-- See below for information on defining 
         updateRequestProcessorChains that can be used by name 
         on each Update Request
      -->

       <lst name="defaults">
         <str name="update.chain">uuid</str>
       </lst>

</requestHandler>

在updateRequestProcessorChain標籤的上面,新增如下程式碼:

<updateRequestProcessorChain name="uuid">
     <processor class="solr.UUIDUpdateProcessorFactory">
        <str name="fieldName">uuid</str>
     </processor>
     <processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>

二、修改manage-schema

修改field的型別為uuid

<field name="uuid" type="uuid" indexed="true" stored="true" required="true" multiValued="false" />

修改主鍵為uuid:

<uniqueKey>uuid</uniqueKey>

新增uuid型別:

<fieldType name="uuid" class="solr.UUIDField" indexed="true" />

然後上傳到zookeeper中,並且建立collection:

/data/soft/solr/bin/solr create -c uuidconn1 -d /data/solr/config-files/uuidconfigs -s 1 -rf 2 -n uuidconn1