如何解决SolrCloud 重复数据删除覆盖不起作用
我一直在努力让重复数据删除在 SolrCloud(8.6 版)中工作。我的 solrconfig.xml 包含:
<updateRequestProcessorChain name="dedupeOn">
<processor class="solr.processor.SignatureUpdateProcessorFactory">
<bool name="enabled">true</bool>
<str name="signatureField">dedupeId</str>
<bool name="overwriteDupes">true</bool>
<str name="fields">journal_doi,internal_pmid</str>
<str name="signatureClass">solr.processor.Lookup3Signature</str>
</processor>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.distributedUpdateProcessorFactory"/>
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
和
<requestHandler name="/update" class="solr.UpdateRequestHandler" >
<lst name="defaults">
<str name="update.chain">dedupeOn</str>
</lst>
</requestHandler>
我的托管架构包含:
<field name="dedupeId" type="string" indexed="true" stored="true" multiValued="false" />
在我的测试中,我添加了 1000 个文档,并手动提交。我看到“dedupeId”是用哈希创建的。
然后我再添加 10 个我知道是重复的文档,并再次手动提交。添加这 10 行,并不会覆盖具有匹配 dedupeId 的原始文档。例如:
"response":{"numFound":2,"start":0,"maxscore":2.1554677,"numFoundExact":true,"docs":[
{
"internal_pmid":"13367837","dedupeId":"7f0306ecd909a68e","journal_doi":"10.1097/00005053-195603000-00006"},{
"internal_pmid":"13367837","journal_doi":"10.1097/00005053-195603000-00006"}]
}}
我不确定它是否重要,但在 solr 日志中,我看到一些“添加”条目,其中部分包含:
webapp=/solr path=/update params={update.distrib=TOleader&update.chain=dedupeOn&distrib.from=*(shard path)*/&wt=javabin&version=2}{add=[00001hLxMb (1690871781072568320)]} 0 2
webapp=/solr path=/update params={wt=javabin&version=2}{add=[00000sta0n (1690871780667817984)]} 0 2
任何帮助将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。