2010-09-03 6 views
8

Je sais ce que does_analyzed signifie. En bref, le champ ne sera pas segmenté par l'analyseur spécifié.Que signifie Field.Index.NOT_ANALYZED_NO_NORMS

Cependant, ce qui fait un NO_NORMS moyens? Je vois la documentation, mais veuillez m'expliquer en anglais. qu'est-ce que champ d'index et amplification de document et normalisation de longueur de champ?

+0

bonne question et bonne réponse, merci beaucoup! –

+0

Hijacking cette question pour un peu de moi-même. Quelle est la différence entre la méthode Field.Index.NOT_ANALYZED_NO_NORMS et Fieldable.SetOmitNorms()? –

Répondre

10

Il désactive les fonctionnalités suivantes:

  • champ index temps et le document stimulant: cela signifie que l'indice ne tient pas compte des boosts que vous avez fait aux champs (AbstractField.setBoost) ou des documents (Document.setBoost). Un jeton correspondant vaudra toujours la même chose. Cela signifie que l'index ignorera si un jeton correspondant était dans un champ court (ce qui devrait être plus pertinent) par rapport à un champ long (moins pertinent). Encore une fois, un jeton correspondant vaut toujours la même chose, peu importe la longueur du champ.
+0

donc en bref un champ marqué comme NO_NORMS n'affecte pas le classement du résultat du tout, est-ce que cela signifie? – ankitjaininfo

+0

Ceci est inexact. Si un champ est marqué comme NO_NORM, les termes correspondants sur le champ affectent le classement. Juste son coup de pouce et la longueur ne le font pas. –

+0

Je ne voulais pas dire qu'un terme correspondant n'affecte pas le classement, je veux dire qu'il le fait dans la même magnitude, peu importe la longueur du champ. –