search - Solr 搜索相关性影响
问题描述
我有一个 MySQL 数据库,我每天都从该数据库同步数据到 solr,我的 web 应用程序经常查询来自 solr 的数据。我的 solr 集群中没有启用备份。如果我关闭现有集群并想创建新集群并将数据从 MySQL 填充到 solr 中,搜索结果是否与我以前从以前的集群中获得的结果相同。
自从我从去年开始查询旧集群以来,solr 是否存储有关经常搜索的术语和文档的任何内部信息,增加它的流行度分数?,或者如果我只是创建新集群搜索结果将相同,则没有任何区别。
解决方案
Solr 不存储任何查询历史记录或使用热门搜索或结果来影响分数(这样想:Solr 提供的结果已经根据查询中给出的因素进行了评分;使用该数据更改评分不会影响任何事情,因为数据已经以相同的方式呈现)。您可以使用外部信号(点击流等)通过在其他字段中拥有该数据来更改自己的评分,但这取决于您作为开发人员。
关于你问题的第一部分;搜索结果将是相同的。如果两个文档的评分相同,则它们各自的顺序由它们在 Lucene 索引中的顺序决定。如果重新索引后该顺序发生变化,您可能会看到具有相同分数的文档在搜索结果中的位置发生了变化。
另一个因素是,如果您最近没有优化索引(手动或通过合并因素),如果您的索引中有许多已删除的文档,分数也可能会发生变化。计算分数时仍会考虑已删除的文档,但在优化或合并后,这些文档会从索引中删除,不再影响分数。
推荐阅读
- excel - 获取一个列数的最小减法
- python - 如何使输出更具可读性?
- visual-studio - 如何在可视代码中为建议添加热键?
- node.js - 使用 React 和 Express GraphQL 的频繁请求
- rust - 我应该如何在 Rust 中输入 annotate collect() (error[E0282])?
- java - 无法将裸骨 webapp 部署到运行 openjdk 11 的 tomee 7.1.0
- python - 在 Xcode 中运行 python 文件会出现以下错误:Command ExternalBuildToolExecution failed with a nonzero exit code
- php - 如何在段落中添加阅读更多
- artificial-intelligence - 后跳、CSP、AIMA 书
- android - cookie 未在 web 视图中设置