2011-01-26 3 views
1

je travaille sur un système qui en utilisant Lucene à l'analyse et de classer un groupe de contenu de la page Web, de source différente,Lucene pour ajouter coup de pouce supplémentaire à la première occurrence de terme

le problème ce im maintenant face était, le résultat montre toujours un groupe de pages provenaient de la même source en premier, quand la source avait plus de 1 pages ayant le meilleur poids. Est-ce possible pour moi d'utiliser l'option lucene pour affiner le résultat, donc seulement la première occurrence de la source à être listée, tandis que le reste sera tiré vers le bas jusqu'à la fin de la liste de résultats, donc au moins l'utilisateur peut voir le résultat différent de source différente d'abord, au lieu de voir une liste complète du contenu de la même source sur les premières pages ....

Répondre

2

La dernière version (inédite) de Solr (qui est construit sur le dessus de Lucene) a une fonction appelée effondrement champ/résultat, qui regroupera les résultats en fonction de la valeur d'un champ. On dirait que c'est ce que vous cherchez:

http://wiki.apache.org/solr/FieldCollapsing

Si vous ne souhaitez pas utiliser Solr, alors vous devrez mettre en œuvre vous-même en parcourant l'ensemble des résultats et en réorganisant il basé sur vos critères Vous aurez probablement besoin d'utiliser FieldCache pour votre champ "source" pour que cela fonctionne assez bien.

+0

merci, je vais regarder dans ce domaine et voir ce que je peux faire, très apprécié pour vos commentaires – jiun

Questions connexes