1

我是 Elasticsearch 的新手,并提出搜索建议来搜索视频,现在使用以下查询(我正在使用 Elastica 库,所以它只是一个打印的数组)

[查询] => 数组
    (
        [query_string] => 数组
            (
                [查询] => Mac OS
                [default_field] => 标题
            )

    )


[字段] => 数组
    (
        [0] => 标题
        [1] => 视频ID
    )

[来自] => 0
[大小] => 5

这给了我一些安静的相关结果“Mac OSx”“Mac OS Lion”等。我的问题是,我如何为索引值添加我自己的评分或评级..例如,如果有人搜索“Mac OS Lion”,我可以将其受欢迎程度提高 1,以便下次它应该排在首位 或者有更好的选择吗?

PS 我也是 ElasticSearch 术语的新手,也许是我现在还找不到解决方案的原因。

4

1 回答 1

2

ElasticSearch 提供了多种机制来提高文档或术语的分数,例如:

一般的想法是,您可以根据一个或多个字段的值来提高文档的分数。在您的情况下,您可能希望拥有一个“受欢迎程度”字段,该字段已更新并用于提升文档的价值。这取决于您如何在内部实现代码。

本教程展示了如何实现“精选结果”,这是一个类似的概念。他们使用了Constant Score 查询

于 2013-02-20T03:36:22.867 回答