Estoy usando Lucene para mostrar los resultados de búsqueda en una aplicación web. También soy una búsqueda personalizada para mostrar lo mismo. Los resultados de búsqueda pueden variar de 5000 a 10000 o más. ¿Puede alguien decirme la mejor estrategia para buscar y almacenar en caché los resultados de búsqueda?Búsqueda de resultados de búsqueda de Lucene
Respuesta
Le recomendaría que no almacene en caché los resultados, al menos no a nivel de la aplicación. Sin embargo, ejecutar Lucene en una caja con mucha memoria que el sistema operativo puede usar para su caché de archivos ayudará.
Simplemente repita la búsqueda con un desplazamiento diferente para cada página. El almacenamiento en caché introduce estado que, al final, socava el rendimiento. Tenemos cientos de usuarios simultáneos que buscan un índice de más de 40 millones de documentos. Las búsquedas se completan en menos de un segundo sin usar el almacenamiento en caché explícito.
Utilizando el objeto Hits
regresó de búsqueda, puede acceder a los documentos de una página como esta:
Hits hits = searcher.search(query);
int offset = page * recordsPerPage;
int count = Math.min(hits.length() - offset, recordsPerPage);
for (int i = 0; i < count; ++i) {
Document doc = hits.doc(offset + i);
...
}
¿Todavía no tiene problemas de rendimiento? –
Hola erickson ... ¿puedes decirme de qué versión en adelante el lucene soporta el método de búsqueda tomando solo 1 argumento de consulta ... y también es posible ordenar con esta solución? –
@AshaKoshti para siempre? Estaba allí en 1.4.3, lanzado en 2004. No puedo encontrar una versión más antigua que eso en los archivos. Sí, también hay una sobrecarga 'search (Query, Sort)' en 'Searcher'. – erickson
- 1. Recopilar todos los resultados de una búsqueda en Lucene/Optimización
- 2. Lucene Búsqueda de caracteres japoneses
- 3. Búsqueda de multifield en Lucene
- 4. Motor de búsqueda Lucene vs Base de datos de búsqueda
- 5. Complejidad de la búsqueda de un Lucene
- 6. Lucene búsqueda y guiones bajos
- 7. Hibernate búsqueda de resultados límite
- 8. Lucene, búsqueda sensible a mayúsculas y minúsculas
- 9. Búsqueda de frase exacta con Lucene?
- 10. Motor de búsqueda - Lucene o Solr
- 11. Fecha de indexación y búsqueda en Lucene
- 12. Resultados de búsqueda de Amazon API vs. resultados de búsqueda de Amazon.com
- 13. Zend Lucene búsqueda y caracteres acentuados
- 14. Lucene: frases de varias palabras como términos de búsqueda
- 15. Google API de búsqueda - Número de Resultados
- 16. Obtenga resultados de búsqueda de Google programáticamente
- 17. grails paginación de los resultados de búsqueda
- 18. ¿Puede Lucene devolver varios resultados de búsqueda de un solo archivo indexado?
- 19. ¿Cómo se hace la agrupación en los resultados de búsqueda de Lucene?
- 20. Manejo + como personaje especial en la búsqueda de Lucene
- 21. Eclipse - Exportar/Guardar Resultados de la búsqueda
- 22. Android Market, resultados de búsqueda posición Misterio
- 23. Sphinx devuelve malos resultados de búsqueda
- 24. php mysql búsqueda de texto completo: lucene, sphinx, o?
- 25. Lucene parece estar almacenando resultados de búsqueda en caché, ¿por qué?
- 26. comodín al principio de un término de búsqueda -Lucene
- 27. Lucene.Net TermQuery búsqueda de comodines
- 28. Lucene: compare resultados entre consultas
- 29. caracteres no válidos para la búsqueda de texto Lucene
- 30. Búsqueda consciente de la oración con Lucene SpanQueries
Este usuario parece ser re-haciendo las mismas o similares preguntas repetidas ocasiones: http: // stackoverflow. com/users/41625/meyahoocomaodzxyowykprbavs5sf701zowgzpc3svjv8 Mire el registro de publicación antes de tomarse el tiempo para responder ... –