solr o la esfinge? ¿cual es mejor?

Posible duplicado:
Elección de un servidor de búsqueda de texto completo independiente: Sphinx o SOLR?

Lo usaré para hacer una búsqueda de texto completo en mi aplicación ruby ​​on rails.

Cuál es la mejor opción.

solr usar java para hacer este trabajo. o sphix en Ruby?

No tengo experiencia con Solr, pero Sphinx es fácil de instalar, rápido y funciona muy bien con Thinking Sphinx: http://freelancing-god.github.com/ts/en/indexing.html

También hay un buen railscast: http://railscasts.com/episodes/120-thinking-sphinx

Este tipo te da algunos argumentos sobre por qué usar Sphinx: http://jamesgolick.com/tags/ultrasphinx.html (usa el complemento Ultrasphinx para conectar Rails y Sphinx. Probé ambos y terminé usando Thing Sphinx)

Puede encontrar una comparación de ambos complementos aquí: http://reinh.com/blog/2008/07/14/a-thinking-mans-sphinx.html

Solr puede implementarse en Java, pero eso es principalmente un detalle de implementación. Sphinx está basado en C ++; sabes c ++? LucidImagination proporciona una conveniente distribución de LucidWorks para Solr que hará que la implementación para aquellos que no están familiarizados con Java sea muy fácil. Irónicamente, Solr tiene mejor integración con Ruby que Sphinx. Hay act_as_solr que se conecta a ActiveRecord, y en un nivel de Ruby puro también hay un par de excelentes opciones, pero ese no es su caso de uso. Puede que estés usando Rails, pero no importa cuál sea el idioma del servidor que elijas, tal vez quieras considerar el uso de AJAX-Solr y tiene una demo fantástica . Finalmente, Solr es definitivamente un proyecto más grande que Sphinx con más historia e información para ayudarlo a incluir mi libro . LucidImagination también ofrece una guía de referencia gratuita en PDF.

Aunque la esfinge tiene craigslist, Solr tiene http://www.lucidimagination.com/why-lucid/who-uses-lucene-solr

Así que creo que la respuesta es bastante clara.

Intenté ambos, y ambos son geniales. En lo que a mí respecta, solr requiere java (ya que está basado en lucene) y la esfinge no. Es por eso que voy con la esfinge a menos que tenga una muy buena razón para querer solr específicamente.

Mi experiencia ha sido para datos pequeños, pensar que sphinx (o ultra) ha sido una solución de búsqueda fácil de utilizar para un desarrollador que solo busca hacer funcionar algo. Una vez que los datos son más grandes que, digamos, cien mil filas en la base de datos, entonces ambos complementos exponen cuán estrechamente acoplados están al registro activo. Entonces, uno tiene que equilibrar la delicada danza entre cuándo se ejecuta el índice de esfinge (en cron, en despliegue, etc.), con qué frecuencia se ejecuta la indexación, se utiliza la delta delta y cuánto tiempo lleva la indexación, entre otras cosas. Además, una vez que sus datos se complican sobre cómo y qué resultados deben exponerse en la búsqueda, comienza a sentir que la personalización de la esfinge es limitada.

Estamos en el proceso de trasladar la búsqueda de un complemento de esfinge a algo independiente del ciclo de vida de desarrollo e implementación de nuestros modelos de registro activo. No hemos decidido si continuaremos usando la esfinge o cambiando a solr. Solo queremos que la búsqueda y la indexación se desacoplen del modelo y se extiendan a su propio servicio al que se refiere nuestra aplicación de Rails.

Utilicé ambos en diferentes proyectos. Me quedaría con solr, ya que era más fácil de instalar: pero esa es solo mi experiencia. Puedes obtener más información aquí .

También estoy tratando de comparar Solr / Sphinx y encontré otra forma en la que son diferentes. Es características de búsqueda:

  • operador de orden estricto
  • Búsqueda de SENTENCIA / PÁRRAFO

Si estas características son importantes en el contexto de su desarrollo, eche un vistazo a esto .

    Intereting Posts