solr - solr 如何与自动升温一起工作?

标签 solr

在 solrconfig.xml 中,filterCache(或 queryResultCache 等)的 'autowarmCount' 表示当新的搜索者到来时将复制多少缓存实体。但是,如果我在 solr 中添加或删除 doc,则旧搜索器中可能存在无效的缓存实体。我认为将缓存实体复制到新搜索器不是一个好主意,对吗?

最佳答案

我可以试着解释一下我对自动升温的了解。

过滤器缓存是过滤器查询与匹配过滤器查询的无序内部文档 ID 集之间的映射。提交后,旧搜索器无效并创建新搜索器。新的搜索器应该从旧的搜索器中填充过滤器缓存。它不能复制缓存的旧值(内部文档 ID 的无序集),因为它们可以更改,但它可以复制键(过滤查询)并从旧缓存重新运行查询。查询的新结果将被添加到新的过滤器缓存中。

查询结果缓存使用相同的方法。

并且您应该记住,文档缓存不使用 autowarm 功能,因为缓存的键是内部 ID,并且在提交操作后它们会更改,并且新的搜索器不能使用旧的缓存键(内部文档 ID)来重新填充新的缓存。

如果有人能更详细、更清楚地描述 autowarm 的工作,我将不胜感激。

关于solr - solr 如何与自动升温一起工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13447937/

相关文章:

solr - Spring数据Solr : IllegalArgumentException - this argument is required

solr - 将 Solr 的条款组件中的条款限制为源自某些文档的条款

MySQL、MongoDB 和 Solr

solr - Sitecore Solr 重建核心功能导致 'Could not create instance'

angularjs - 从 AngularJS 将文档发布到 SOLR 4

solr - 如何在 Solr 中使用 SynonymFilterFactory?

java - 执行maven项目失败

java - Solr 所有检查器需要使用相同的分析器

ruby-on-rails - Sunspot Solr Gem & .gitignore

php - 多面搜索(solr)与通过 PHP 进行的旧式过滤比较好?