Solr重复数据删除无效

时间:2015-08-07 03:50:58

标签: solr deduplication

我使用的是Solr 5.2.1,我有一个字段" url"这需要是独一无二的。我跟着https://wiki.apache.org/solr/Deduplication并且我仍然无法使用相同的URL多​​次更新索引,并且Solr重复数据删除无法阻止这种情况发生。

我尝试过overwriteDupes = false和overwriteDupes = true,但无济于事。

我确信有些事情是错的,但我无法弄明白。

solconfig.xml

<?xml version="1.0" encoding="UTF-8" ?>

<luceneMatchVersion>LUCENE_42</luceneMatchVersion>
<directoryFactory name="DirectoryFactory" class="${solr.directoryFactory:solr.StandardDirectoryFactory}" />

<codecFactory name="CodecFactory" class="solr.SchemaCodecFactory" />

<!-- These dir are relative to this xml! -->
<lib dir="../../../solr/contrib/extraction/lib" />
<lib dir="../../../solr/dist/" regex="solr-cell-\d.*\.jar" />

<requestHandler name="standard" class="solr.StandardRequestHandler" default="true" />

<requestHandler name="/update" class="solr.UpdateRequestHandler">
    <lst name="defaults">
        <str name="update.chain">dedupe</str>
    </lst>
</requestHandler>

<requestHandler name="/admin/" class="org.apache.solr.handler.admin.AdminHandlers" />
<admin>
    <defaultQuery>*:*</defaultQuery>
</admin>

<!--
<requestHandler name="/update/extract" class="solr.extraction.ExtractingRequestHandler">
    <lst name="defaults">
        <str name="captureAttr">true</str>
        <str name="fmap.content">text</str>
        <str name="lowernames">true</str>
    </lst>
</requestHandler>

- &GT;                           真正             ID             真正             网址             solr.processor.Lookup3Signature             org.apache.solr.update.processor.TextProfileSignature&LT; / STR&GT; - &GT;                                

schema.xml中

<?xml version="1.0" ?>

<types>
    <fieldtype name="string" class="solr.StrField" />
    <fieldType name="uuid" class="solr.UUIDField" indexed="true" />
</types>

<fields>

    <field name="id" type="string" indexed="true" stored="true" multiValued="false" />
    <field name="url" type="string" />
    <field name="title" type="string" />
    <field name="summary" type="string" />
    <field name="description" type="string" />
    <dynamicField name="*" type="string" multiValued="true" indexed="true" stored="true" />
    <copyField source="*" dest="fulltext" />
    <field name="fulltext" type="string" multiValued="true" />
</fields>

<defaultSearchField>fulltext</defaultSearchField>

<solrQueryParser defaultOperator="OR" />

1 个答案:

答案 0 :(得分:0)

我通过复制data_driven_schema_configs文件夹并根据https://wiki.apache.org/solr/Deduplication修改schema.xml和solrconfig.xml来实现它的工作