取消document唯一性检查(Disable unique document check)

取消唯一性检查的方法

默认情况下,索引的时候 Solr 会检查主键是否有重复的,以避免不同的 document 使用相同的主键。

如果你确认你的 document 不会有重复的主键,可以通过以下方式取消检查:

  • 将参数 allowDups=true 加到 URL 上
  • 对于 CSV 文档,使用 overwrite=false

详细说明

使用 allowDups 参数

在更新文档时,可以在 URL 中添加 allowDups=true 参数:

1
http://localhost:8983/solr/collection1/update?allowDups=true

使用 overwrite 参数

对于 CSV 格式的文档导入:

1
http://localhost:8983/solr/collection1/update/csv?overwrite=false

性能考虑

取消唯一性检查可以提高索引性能,特别是在以下场景:

  • 批量导入大量数据
  • 确保数据源不存在重复主键
  • 对索引性能要求较高的场景

注意事项

⚠️ 重要提醒

  • 取消唯一性检查后,如果存在重复主键,会导致索引中出现重复文档
  • 这可能会影响搜索结果的准确性和相关性评分
  • 建议只在确保数据质量的情况下使用此功能

相关配置

在 solrconfig.xml 中也可以配置相关参数:

1
2
3
4
5
6
7
8
9
<updateHandler class="solr.DirectUpdateHandler2">
<updateLog>
<str name="dir">${solr.ulog.dir:}</str>
</updateLog>
<autoCommit>
<maxTime>${solr.autoCommit.maxTime:15000}</maxTime>
<openSearcher>false</openSearcher>
</autoCommit>
</updateHandler>
© 2025 Solr Community of China All Rights Reserved. 本站访客数人次 本站总访问量
Theme by hiero