solr - 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>
我的 managedschema 包含:
<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",
"dedupeId":"7f0306ecd909a68e",
"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
但其他添加条目不包含 update.chain 属性,例如
webapp=/solr path=/update params={wt=javabin&version=2}{add=[00000sta0n (1690871780667817984)]} 0 2
任何帮助将不胜感激。
解决方案
推荐阅读
- r - 使用 dplyr 总结 data.frame 中的折叠变化
- scala - 如何在流中找到两个连续且相同的值?
- javascript - 如何在 Vue.js 中修复子组件中的画布大小?
- python - 我的 python 程序中的逻辑似乎不起作用
- amazon-web-services - 如何找到我的 CloudWatch 日志的名称?
- python - 有效连接可变但已知长度的一维数组
- javascript - 流无法分配函数,因为属性 abort 不可写
- python - 调用列表上的方法时不同语法之间的差异
- constructor - Solidity ParserError:预期的标识符,但得到'='
- javascript - 错误类型错误:提交登录表单时无法读取离子中未定义的属性“值”