Java elasticsearch 6中的模糊建议
我正在java webapp中升级到elasticsearch 6.0 在我使用CompletionSuggestionFuzzyBuilder构建建议之前,但在最新版本中,这个类已经不存在了。我发现我可以创建一个MaMatchQueryBuilder,它将使用模糊性来获得结果:Java elasticsearch 6中的模糊建议,java,elasticsearch,Java,elasticsearch,我正在java webapp中升级到elasticsearch 6.0 在我使用CompletionSuggestionFuzzyBuilder构建建议之前,但在最新版本中,这个类已经不存在了。我发现我可以创建一个MaMatchQueryBuilder,它将使用模糊性来获得结果: MatchQueryBuilder matchQueryBuilder = new MatchQueryBuilder("user", "kimchy"); matchQueryBuilder.fuzziness(Fu
MatchQueryBuilder matchQueryBuilder = new MatchQueryBuilder("user", "kimchy");
matchQueryBuilder.fuzziness(Fuzziness.AUTO);
matchQueryBuilder.prefixLength(3);
matchQueryBuilder.maxExpansions(10);
但我不能用它来提出建议。所以我在寻找一种使用模糊建议的方法。我想我已经找到了这样做的方法。以下是一个解决方案:
SearchResponse suggestRequestBuilder = elasticClient.prepareSearch(index)
.suggest(new SuggestBuilder()
.addSuggestion(
"suggestionsFuzzy",
SuggestBuilders.completionSuggestion("myField")
.prefix(suggestRequest, Fuzziness.AUTO).size(10)
)
).get();