我是Elasticsearch的新手并提出搜索建议来搜索视频,现在使用以下查询(我使用Elastica Library,因此它只是一个打印的数组)
[query] => Array ( [query_string] => Array ( [query] => Mac Os [default_field] => title ) ) [fields] => Array ( [0] => title [1] => videoid ) [from] => 0 [size] => 5
这给了我一些安静的相关结果“Mac OSx”“Mac OS Lion”等。 我的问题是,我如何为索引值添加我自己的评分或评分..如果有人搜索“Mac OS Lion”,我可以将其受欢迎程度提高1,这样它下次应该会上升还是有更好的替代?
P.S我也是ElasticSearch Terms的新手,也许是我无法找到解决方案的原因。
答案 0 :(得分:1)
ElasticSearch提供了多种机制来提高文档或术语的得分,例如:
一般的想法是,您可以根据字段的值来提高文档的分数。在您的情况下,您可能希望有一个“流行度”字段,该字段已更新并用于提升文档的值。这取决于您在内部如何实现代码。
This tutorial shows how to implement "Featured Results",这是一个类似的概念。他们使用Constant Score query。