5

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>

1 つではなく、2 つまたは 3 つのフィールドを uniqueKeys として使用できますか? 試してみると:

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

次のエラーが表示されます。

org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: スキーマの解析に失敗しました: 不明なフィールド '(Id,IdCategory,Rank,TypeRank)'. スキーマ ファイルは /var/solr/Rank/schema.xml です。

4

1 に答える 1

10

しようとしている方法で、一意のキーに 2 つまたは 3 つ (または 4 つ) のフィールドを使用することはできません。単一の文字列フィールドを指す必要があります。インデックスを作成する前に、必要な値の連結フィールドを単一の一意の文字列に生成できるはずです。

于 2014-06-27T15:22:18.227 に答える