ElasticSearch不会惩罚冗长的内容

时间:2014-02-08 20:36:52

标签: elasticsearch

我们正在使用ElasticSearch从我们的数据库中返回食谱。

我们的问题是ElasticSearch会惩罚详细内容:

对于像“Chicken Pasta”这样的搜索词,排名将如下: 1.“鸡肉意大利面” 2.“美味鸡肉面食”

此外, 1.“可怕的鸡肉面食” 2.“非常美味的鸡肉意大利面”

对于我们的域名,在食谱的某些部分,我们不想惩罚冗长的内容。即在某些限制条件下,许多成分应该与一些成分一样好。

我真的很感激我们如何解决这个问题。

尼克

1 个答案:

答案 0 :(得分:0)

您可以使用自定义评分功能自行计算结果的分数。这是一个很棒的网络广播,解释了自定义评分功能:

http://www.elasticsearch.org/videos/introducing-custom-scoring-functions/

您必须使用的查询是:

function_score

查询提供自己的评分。您将在以下文档中找到有关function_score查询的最重要信息:

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html