Kru*_*odi 5 lucene solr full-text-search solrnet solr4
我正在研究Solr 4,用于根据存储在Index中的受欢迎程度对我的Solr结果排名进行优化。
现在,当有人进行搜索时,除了相关性等级之外,我还想使用受欢迎度等级来影响相关性等级。最简单的公式可能是:
新的相对排名=得分*人气排名
我一直在http://wiki.apache.org/solr/FunctionQuery#product上查看Solr函数查询,以实现相同的功能,但是我不确定如何使它工作。我不知道如何使用乘积函数获得分数。试图做到这一点,我总是得到错误,因为未定义字段。
现在,我可以使用此处定义的boost 如何在solr中增强字段,但是在要使用Solr提供的功能查询的地方,我还有其他逻辑/要求。
例如,我尝试使用以下似乎有效的简单查询
http://solr:8983/solr/select?q=hp%20laptop&defType=edismax&fl=Id,Name,score&bf=product%28$v1,$v2%29&v1=Id&v2=2
Run Code Online (Sandbox Code Playgroud)
现在,对于我的实际需求,我想将分数设为$ v2,但是我找不到如何做到这一点。
非常感谢您的帮助。
您可以尝试使用_val_Solr提供的hook。
例如,为了排序score * popularityrank,请尝试使用这个
http://solr:8983/solr/select?q=hp%20laptop&_val_="product(score,popularityrank)"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7363 次 |
| 最近记录: |