ruby-on-rails full-text-search lucene sphinx searchlogic

ruby on rails - Búsqueda de texto completo con rieles



ruby-on-rails full-text-search (7)

Dado que esta pregunta sigue siendo altamente calificada en google para la búsqueda de texto completo, realmente me gustaría decir que Sunspot es aún más fuerte hoy si está interesado en agregar capacidades de búsqueda de texto completo a su aplicación Rails (y le gustaría tener a Solr detrás usted por eso). Puedes consultar un tutorial completo sobre esto here .

Y mientras estamos en eso, otro contendiente que ha llegado al campo es ElasticSearch , que apunta a ser un motor de búsqueda de texto completo en tiempo real construido sobre Lucene (pero haciendo las cosas de manera diferente en comparación con Solr). ElasticSearch incluye fragmentación y replicación listas para usar en múltiples nodos, búsqueda en tiempo real más rápida, "percoladores" para permitirle recibir notificaciones cuando haya algo que coincida con sus criterios disponible y se esté moviendo muy rápido con muchas más funciones. Es fácil construir algo sobre eso, ya que la API es completamente simple y completamente basada en REST utilizando JSON como formato. Se podría decir que ni siquiera necesitas un plugin para usarlo.

He estado buscando en la búsqueda de complementos / gemas para Rails. La mayoría de los artículos comparan a Ferret (Lucene) con Ultrasphinx o posiblemente con Thinking Sphinx, pero ninguno habla de SearchLogic . ¿Alguien tiene alguna pista de cómo se compara? ¿Qué usas y cómo se realiza?


En primer lugar, mi obvio sesgo: creé y mantengo Thinking Sphinx.

Resulta que, en realidad, vi a Ben Johnson (creador de SearchLogic) presente en el rubí de la ciudad de Nueva York reunirse al respecto anoche. SearchLogic es solo para SQL; por lo tanto, si no está trabajando con tablas masivas y no se necesitan clasificaciones de relevancia, podría ser exactamente lo que está buscando. La sintaxis es bastante limpia, también.

Sin embargo, si quieres que toda la inteligencia de consultas sea manejada por un código que no es el tuyo, entonces Sphinx o Solr (que es Lucene bajo el capó, creo) probablemente funcionará mejor.


No he usado SearchLogic pero puedo decirle que Lucene es un proyecto muy maduro, que tiene implementación en muchos idiomas. Es rápido y flexible y es divertido trabajar con la API. Es una buena apuesta.


Para cualquiera que busque una gema de búsqueda simple sin dependencias, echa un vistazo a acts_as_indexed


Personalmente, no me molesto con los agnósticos de base de datos para aplicaciones web y estoy bastante satisfecho con la búsqueda de texto completo en pg83. El beneficio es, si y cuando cambie su marco / idioma, que todavía tendrá una búsqueda de texto completo.


SearchLogic es un buen complemento, pero realmente pretende hacer que tu código de búsqueda sea más legible, no proporciona la indexación automática que Sphinx hace. No he usado Hurón, pero Sphinx es increíblemente poderoso.

http://railscasts.com/episodes/120-thinking-sphinx

Gran introducción para ver qué tan flexible es.


  • thinking_sphinx y sphinx funcionan a la perfección, no se indexan, consultan, instalan problemas nunca (5 o 6 se instalan, incluido el proveedor de segmentos de producción)

  • ¿por qué no todos usan la esfinge, como, digamos, craigslist? lea aquí sobre sus limitaciones (artículos de un año y medio. El desarrollador de esfinge, Aksyonoff, está trabajando en esto y está incorporando características y confiabilidad y eliminando errores a un ritmo sorprendente)

http://codemonkey.ravelry.com/2008/01/09/sphinx-for-search/

http://www.ibm.com/developerworks/opensource/library/os-php-apachesolr/

Comparación del motor de búsqueda de texto completo: Lucene, Sphinx, Postgresql, MySQL?

  • hurón: fácil de instalar, no se deriva correctamente, indexación muy lenta (un mysql db: esfinge: 3 segundos, hurón: 50 minutos). Problemas bien documentados (corrupción de índice) en servidores drb en producción bajo carga. Habiendo dicho eso, lo he usado en desarrollo desde que aparecieron las acciones-as_ferret hace 3 años, y me han servido bien. No adherirse a las puntas de porter es una ventaja en algunos contextos.

  • Lucene y Solr es el campeón de búsqueda de código abierto de gorila / mack truck / peso pesado. Los equipos han estado haciendo una impresionante cantidad de nuevas características en la versión 14:

  • act-as-solr: funciona bien, una vez que el gato o el embarcadero está en su lugar, pero a veces son un dolor. La horquilla AAS de mattmatt es la horquilla principal, pero el proyecto no tiene mantenimiento.

  • Con respecto a la instalación de Tomcat: SOLR / lucene tiene, sin lugar a dudas, la mejor base de conocimientos / soporte de búsqueda de cualquier paquete de software que haya visto (creo que no estoy tan sorprendido), el cuadro de búsqueda aquí

http://www.lucidimagination.com/

  • Mancha solar del nuevo envoltorio de rubí, construir sobre solr-rubí. Parece prometedor, pero no pude instalarlo en OSX. Indexa todos los objetos ruby, no solo las bases de datos a través de AR

  • una cosa que es realmente instructiva es instalar 2 complementos de búsqueda, por ejemplo, esfinge y SOLR, esfinge y hurón, y ver qué resultados obtienen. Es tan fácil como @sphinx_results - @ferret_results

Acabo de ver este post y las respuestas.

http://zooie.wordpress.com/2009/07/06/a-comparison-of-open-source-search-engines-and-indexing-twitter/

http://www.jroller.com/otis/entry/open_source_search_engine_benchmark

http://www.flax.co.uk/blog/2009/07/07/xapian-compared/