Question

Comment se présente la de ConstantcoreRangeQuery mieux que l'ancien RangeQuery ?

Dans quel cas devriez-vous continuer à utiliser RangeQuery?

Était-ce utile?

La solution

Selon la documentation RangeQuery dans votre lien, Un ConstantScoreRangeQuery:

  • est plus rapide que RangeQuery.
  • ne provoque pas d'exception BooleanQuery.TooManyClauses si la plage de valeurs est grande.
  • n'influence pas la notation en fonction de la rareté de termes individuels pouvant correspondre.

Supposons que vous vouliez que les termes plus rares obtiennent un score plus élevé (supposons que vous cherchiez dans une plage d'heures, mais que vous souhaitiez que les heures les plus rares soient mieux notées. Peut-être recherchez-vous un & "lent &" ; période de la journée pour exécuter un processus de sauvegarde). Dans ce cas, l’ancien RangeQuery semble préférable.

La prochaine génération sera le TrieRangeQuery , actuellement disponible. la section contrib. Cela fera probablement partie du noyau Lucene 2.9. Il fournit des requêtes de plage plus rapides que les deux autres méthodes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top