2017-10-18 8 views
1

J'ai changé le simple analyzer sur un champ à Standard analyzer et l'ai testé localement et ça fonctionne bien. Je n'ai pas besoin de ré-indexer tous mes documents en ES.Le passage de Simple Analyzer de Elastic Search à Standard Analyzer nécessite-t-il un ré-index?

Mais selon this SO post et this ES doc, on dirait que nous devons réindexer si nous ajoutons/changeons l'analyseur sur un champ.

Je suis confus car il fonctionne bien maintenant et il faudrait un temps considérable si je fais la réindexation et que je veux l'éviter, si ce n'est pas nécessaire. Faites-moi savoir si quelqu'un a fait face à la même situation et qu'est-ce qu'il a fait? Editer: - J'utilise la version ES 1.7 et j'ai changé l'analyseur sur un terrain et je viens de redémarrer l'application, je pense que mon application vient de mettre à jour la dernière cartographie vers ES.

+2

Si vous changez un analyseur, vous devez bien sûr réindexer vos données, ou à tout le moins le champ dont l'analyseur a été modifié. – Val

+0

@Val, Mais comme je l'ai mentionné, son fonctionnement bien pour moi, ne sais pas comment bien. –

+1

Autant que je sache, vous ne pouvez pas réellement changer l'analyseur sur un champ existant. Comment l'avez-vous changé? Avez-vous confirmé qu'il a effectivement changé comme prévu (en vérifiant l'API de cartographie)? (Je l'ai juste essayé avec ES 5.6.3 et il se comporte comme je l'espère - l'erreur d'essayer de mettre à jour le mapping et le mapping ne change pas.) Vous devriez partager plus d'informations - y compris la version de ES et les étapes à reproduire. – dshockley

Répondre

1

Si vous changez un analyseur, bien sûr vous devez réindexer vos données, ou à tout le moins le champ dont l'analyseur a été changé.