【问题标题】:How to improve ranking of search in Apache Solr如何提高 Apache Solr 中的搜索排名
【发布时间】:2016-11-29 06:25:19
【问题描述】:

我正在使用 Apache Solr 实现搜索引擎。我想在最常见的搜索的基础上改进结果。
例如:考虑我的索引有 5 个单词
向下 99
绘制 46
黑暗 86
沉闷 75
肮脏 63
这些数字显示了用户搜索特定单词的次数。 我想如果下一个用户来到它并输入 D 响应应该按先前搜索的降序排列并且应该按顺序
Down
Dark
Dull
Dirty绘制

结果会不时发生变化,因为每次搜索后单词搜索频率都会发生变化。我如何在 Solr 中实现这一点...任何帮助都会对我有很大帮助。
感谢您的期待
问候 A.S.Danyal

【问题讨论】:

    标签: apache solr


    【解决方案1】:

    正如 vinod 所写,您必须自己跟踪实际搜索 - Solr 没有任何内置功能可以为您处理这些。但是,当您确实有可用的搜索统计信息时,您可以通过拥有一个单独的集合/核心来实现该功能,其中包含您搜索的搜索及其流行度。每个文档将是一个搜索词和该文档被搜索的频率,即文档:搜索,搜索计数。

    您还可以使用对数函数来使用 search_count 的分数来影响搜索词的分数,例如,如果您有多个不仅仅是搜索作为影响分数的字段(例如活动类别等.).

    根据搜索量,您可能不需要在每次搜索后更新这些值 - 每天或每隔一小时更新一次通常就足够了。跟踪自上次更新以来搜索量发生变化的字词,并以一定的时间间隔在批处理作业中更新这些文档。

    【讨论】:

      【解决方案2】:

      Solr 不提供此类功能。

      实现此目的的一种方法是使用日志, 您将需要输入搜索词的索引。这可以通过挖掘您的搜索日志来构建。

      【讨论】:

      • 您好,您是否听说从那以后有任何改进?
      猜你喜欢
      • 1970-01-01
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      • 2014-05-13
      • 1970-01-01
      • 1970-01-01
      • 2016-07-30
      • 1970-01-01
      相关资源
      最近更新 更多