我正在将我的 java web 应用程序升级到 elasticsearch 6.0。
在我使用 CompletionSuggestionFuzzyBuilder 构建建议之前,但在最新版本中,此类已消失。我发现我可以创建一个 MaMatchQueryBuilder 来使用模糊性来获取结果:
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();
关于java - elasticsearch 6 中的模糊建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51782746/