我想基于每个用户调整solr搜索结果的相关性 - 基于用户之前点击结果的次数。经常命中的项目因此用户应该升到搜索结果的顶部。
有没有办法为查询提供特定文档ID的自定义提升/提升?我正在思考大约100个特定文档的提升顺序。如果查询的其余部分找不到这些文档,则高程应该没有效果。
或者,如果这是不可能的,那么设置替代索引方法的有效方法是什么呢?我可以在索引中为每个用户添加一个字段来存储他们的分数吗?我想的是1000个用户的顺序。这种方法的主要缺点是文档需要重新编制索引的次数(即每次用户使用时)。
答案 0 :(得分:1)
您可以设置dynamic field来存储用户点击次数,例如:
<dynamicField name="*_clicks" type="integer" indexed="true" stored="true"/>
并且您将点击存储在user12322_clicks,user15000_clicks等字段中
请查看this very similar question,了解有关如何提升的信息。