我是Solr的新手,请在提升领域帮助我。
我有这样的查询,
q=name:test* OR description:test*
我想应用提升/重量年龄的名称为500,并以描述为50。
例如:让我们考虑" test" 术语在一个记录中在名称字段中出现1次,在描述字段中从另一个记录中出现了20次,然后增加计算的计算应如下所示。
。名称:1 x 500 = 500
用于说明:20 x 50 = 1000。
作为结果,具有较高增强值的记录应位于顶部。因此,基于上述计算,具有20个匹配描述字段的记录应在该记录之后以1个匹配为字段。
。如果有人对此有解决方案,请提供
预先感谢。
您可以在索引时间内使用Boost属性来提高字段,也可以在查询中应用Boost(例如q=name:test*^50 OR description:test*
)(这里也有一些更高级的功能)。
i带有指出,默认情况下,Lucene应用了一个长度归一化,该长度归一化,与更长的磁场相比,在较短的字段上有效地重匹配。听起来有点像您要重新创建的东西。
如果您需要评分计算与所提供的计算一样简单,我相信您需要编写自己的相似性类别。