Je souhaite rechercher des termes (GoogleEarth ou googleearch) à l'aide de elasticSearch.
Maintenant, si j'ai essayé d'effectuer une recherche dans la requête "Google", je ne peux obtenir aucun résultat sans NGram ou EdgeNGram.
Je ne veux pas utiliser nGram car ils obtiennent beaucoup de résultats. Alors maintenant, je viens d'utiliser Bool Query + multimatchquery. Dans ce cas, je ne peux pas obtenir de résultats par des mots partiels. J'espère pouvoir faire une recherche sur "Google Earth", "Google" ou "Google Earth" pour obtenir Google Earth. Comment puis-je l'obtenir?
Sélection de requête de recherche Elasticsearch
Maintenant, j'utilise la requête 'GoogleEarth' pour obtenir le bon résultat. Je veux rechercher des termes s'ils ont inclus.
.setQuery(QueryBuilders.boolQuery().should(QueryBuilders.multiMatchQuery(query,
'title','name','tag')))
mise à jour
J'ai essayé des termes de recherche basé sur correspondance exacte. Si je recherche 'google', je veux obtenir 'google ***' 'googleearth' et ainsi de suite. Je sais que si j'utilise edgeNGram ou nGram, je peux obtenir moins de résultats liés. Donc, si possible, je ne veux pas utiliser nGram ou edgeNGram. Avez-vous des idées?
Merci de votre réponse. J'ai essayé de rechercher des termes en fonction de la correspondance exacte. Si je recherche 'google', je peux obtenir 'google ***' 'googleearth' et ainsi de suite. Je sais si j'utilise edgeNGram, je peux obtenir comme ça. Mais je devrais aussi obtenir moins de termes connexes. Avez-vous une idée? – Soo
Je ne comprends pas votre question. Je vous suggère de mettre à jour votre question et de fournir de nombreux exemples exacts de requêtes et le texte source que vous attendez. Élargissez également ce que vous entendez par «termes moins liés». – nickdos
Je veux juste dire que je peux obtenir beaucoup moins de résultats liés par nGram. Si je demande 'google', je peux avoir 'googa', 'goooo'. – Soo