如何在solr中将多个字段设置为uniqueKey?

时间:2014-06-27 14:49:17

标签: solr solr-schema

我在solr架构中有这些字段:

<fields>
    <field name="Id" type="string" indexed="true" stored="true" multiValued="false" required="true" />
    <field name="IdCategory" type="string" indexed="true" stored="true" multiValued="false" required="true" />
    <field name="Rank" type="long" indexed="true" stored="true" multiValued="false" required="true" />
    <field name="TypeRank" type="string" indexed="true" stored="true" multiValued="false" required="false" default="category" />

    <field name="_version_" type="long" indexed="true" stored="true"/>
</fields>

我可以使用2或3个字段作为uniqueKeys而不是One吗? 当我尝试:

<uniqueKey>(Id,IdCategory,Rank,TypeRank)</uniqueKey>

我收到以下错误:

  

org.apache.solr.common.SolrException:org.apache.solr.common.SolrException:Schema Parsing Failed:unknown field'(Id,IdCategory,Rank,TypeRank)'。架构文件是/var/solr/Rank/schema.xml

1 个答案:

答案 0 :(得分:7)

您尝试执行此操作时,不能在唯一键中使用2或3(或4)个字段。它应该指向一个字符串字段。在索引之前,您应该能够使用生成所需值的连接字段作为单个唯一字符串。