Solr 设置UUID自动生成

 

网上很多关于在Solr中设置UUID的配置方法都是基于4.X版本,但是在较新的5.X和6.X版本却并不适用。 这里给出具体的配置方法: 在managed-schema中声明对应的field和fieldType

<field name="id" type="uuid" indexed="true" stored="true" multiValued="false" />
<fieldType name="uuid" class="solr.UUIDField" indexed="true" />

在solrconfig.xml中修改对应的requestHandler,并添加自动生成UUID的updateRequestProcessorChain

<requestHandler name="/dataimport" class="solr.DataImportHandler">
    <lst name="defaults">
      <str name="config">data-config.xml</str>
      <str name="update.chain">uuid</str>
    </lst>
 </requestHandler>

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

如上简单两步就可以完成Solr中UUID的配置