2010-07-27 19 views
0

J'utilise Lucene/solr pour la recherche et la navigation dans l'application de téléchargement de fichiers J'ai besoin de mettre à jour la valeur indexée 'téléchargée' pour chaque document pour chaque téléchargement.J'ai besoin d'implémenter le schéma avec le champ fréquemment mis à jour

le même cas happed dans digg.com, ils ont combien de « diggs » pour chaque lien alors que u la recherche

i ne faut supprimer/insérer un nouveau document pour chaque téléchargement. ou y a-t-il quelque chose de mieux?

Répondre

1

Conformément à la FAQ sur le Solr Wiki, vous ne pouvez pas mettre à jour un document partiellement:

En Lucene pour mettre à jour un document de l'opération est vraiment une suppression suivie d'un ajout. Vous aurez besoin d'ajouter le document complet car il n'y a pas une telle sémantique "mettre à jour seulement un champ" dans Lucene.

Vous devez ajouter le document entier si vous souhaitez mettre à jour un champ.

+0

Je sais que, il n'y a aucune mise à jour mise en œuvre .. ce n'est pas ma question. ma question est comment digg est mettre en œuvre, et quelle est la meilleure pratique pour mettre en œuvre la même idée digg – user403456

+0

Désolé, j'ai mal compris ce que vous demandiez. Si Digg stocke le nombre de votes dans Lucene, j'imagine que ce ne serait pas en temps réel. Je pense que le meilleur moyen serait de stocker les votes dans votre magasin principal et de le mettre en cache dans Memcache pour la vue. –

+0

Ok, mais chaque fois que quelqu'un vote pour une url, il doit être indexé dans le moteur lucene, donc il devient disponible pour la recherche, et vous pouvez ordonner vos résultats de recherche en utilisant le champ de vote – user403456