【发布时间】:2012-10-29 01:41:22
【问题描述】:
据我了解,为了让Elasticsearch 执行涉及“相关性分数”的“模糊”查询,它必须遍历并计算所有可能匹配项的相关性(可能包括数千或数百万行),甚至如果查询的“限制”只有“10”。
Elasticsearch 如何在提供合理响应时间的同时实现这一目标?
【问题讨论】:
标签: lucene elasticsearch
据我了解,为了让Elasticsearch 执行涉及“相关性分数”的“模糊”查询,它必须遍历并计算所有可能匹配项的相关性(可能包括数千或数百万行),甚至如果查询的“限制”只有“10”。
Elasticsearch 如何在提供合理响应时间的同时实现这一目标?
【问题讨论】:
标签: lucene elasticsearch
一种可能性是搜索过程可以在获得足够的结果后终止,即使它们没有最高分。因此,并非所有结果都需要计算。
【讨论】:
在 Lucene 4 中,模糊搜索会修剪搜索空间,而不是像以前那样暴力破解:
Lucene's FuzzyQuery is 100 times faster in 4.0
希望 ElasticSearch 很快会更新到 Lucene 4。
【讨论】: