Optimisation de la performance Lucene
Quels sont les différents moyens d'optimiser Les performances?
Dois-je utiliser la mise en cache de l'API pour stocker mes de recherche lucene requête afin que je économiser sur les frais généraux de la construction de la requête à nouveau?
Vous devez vous connecter pour publier un commentaire.
Avez-vous regardé
Lucene Extrémité D'Optimisation: La Réutilisation Chercheur
Avancée de l'Indexation de Texte avec Lucene
Si un indice optimisé après différentiels index de Lucene?
Conseils rapides:
Tricher. Utilisation RAMDirectory à charge de la totalité de l'index dans la ram. Par la suite, tout est ultra-rapide. 🙂
Beaucoup de liens morts ici.
Ces (plus ou moins officiel), les ressources sont là que j'ai commencer:
http://wiki.apache.org/lucene-java/ImproveIndexingSpeed
http://wiki.apache.org/lucene-java/ImproveSearchingSpeed
J'ai trouvé que la meilleure réponse à une question de la performance est de profil. Les lignes directrices sont grands, mais il y a beaucoup de variables qui peuvent influer sur les performances, tels que la taille de votre jeu de données, les types de requêtes que vous faites, les types de données, etc.
Obtenir le Netbeans profiler ou quelque chose de similaire et essayer différentes façons. Utiliser les articles liés par Mitch, mais assurez-vous de tester ce qui aide et ce qui (souvent très) mal.
Il ya aussi une bonne chance que toutes les différences de performances que vous pouvez obtenir à partir de Lucene sera mineur par rapport à des améliorations de performances dans votre code. Le profileur point cela aussi bien.
Pour la version 64 bits des machines MMapDirectory au lieu de RAMDirectory comme très bien expliqué ici par l'un des principaux Lucene committers.