He hecho benchmarking para Indexing Times para Sphinx & Solr. Sphinx está muy por delante en comparación con Solr con respecto a los algoritmos de indexación (tiempos de indexación súper rápidos y tamaño de índice pequeño).
Cuando dices 10 páginas de texto, parece que incluso no necesitas indexación Sphinx en tiempo real. Puede seguir el esquema de indexación principal + delta en Sphinx (puede encontrarlo en la Documentación de Sphinx). Sería súper rápido y casi en tiempo real. Si desea obtener más ayuda sobre este tema, no dude en preguntar, estaría encantado de explicarle.
Solr es genial, pero cuando se trata de algoritmos optimizados, Sphinx rocks !! Prueba Sphinx.
Respondiendo a sus preguntas en el comentario, Solr/Lucene admite la indexación incremental (conocida como importación delta en su terminología) y es silenciosamente fácil de configurar, pero son bastante lentas en comparación con el método utilizado por Sphinx.
Main + Delta es lo suficientemente rápido porque lo que puedes hacer es crear una tabla temporal almacenar el texto nuevo e indexar eso. De acuerdo con la documentación: Sphinx admite actualizaciones de índice "en vivo" (casi en tiempo real) y podría implementarse usando denominado esquema "main + delta".La idea es establecer dos fuentes y dos índices, con un índice "principal" para los datos y un "delta" para los nuevos documentos.
Digamos, por ejemplo, que tiene 10 millones de registros, así que puede mantener eso ya que el índice principal y todos los nuevos documentos se agregan a una nueva tabla que actuará como delta. Esta nueva tabla se puede indexar de vez en cuando (digamos cada 1 hora) y los datos se pueden buscar en pocos segundos, ya que tiene 10 páginas de texto. Ahora, después de buscar sus nuevos registros, puede combinar los documentos de la tabla principal + tabla delta que pueden llevarse a cabo sin interferir con su búsqueda. Cuando se combinan los documentos, vacíe la nueva tabla y nuevamente después de una hora puede volver a realizar todo el proceso. Espero que tengas eso, por favor no dudes en hacerme cualquier pregunta.
Gracias por su ayuda. De lo que leo main + delta es exactamente lo que necesito. Pero hay un punto que no está claro en el documento; dicen que reducirá el tiempo de indexación a 30 a 60 segundos. En mi caso, es fundamental tener un nuevo texto listo para ser buscado en segundos (máximo un minuto). ¿Main + delta es lo suficientemente rápido? Por lo que veo, Sphinx es ese camino por recorrer. – applechief
Usted es bienvenido. Puedes ver mi respuesta editada arriba. Main + Delta debería funcionar bien para usted porque la indexación de Sphinx es realmente muy rápida. Sin embargo, una cosa más: por favor, también eche un vistazo a los índices en tiempo real en Sphinx como se menciona en una de las respuestas anteriores, nunca lo he usado pero parece prometedor. Después de aplicar ambos a sus datos, puede verificar qué funciona mejor para usted. – Yavar