De acuerdo con Ezequiel. En uno de nuestros proyectos usamos ferret pero nos gustaria cambiar a Sphinx.

El ferret server tiene varios problemas que supuestamente Sphinx no tiene.

- E


On Jan 17, 2010, at 17:16, Matias Toselli <[email protected]> wrote:

Gracias Eze, voy a hecharle un vistazo a sphinx, suena cheto, jaja.

El 17 de enero de 2010 18:38, Dumas <[email protected]> escribió:
Otra opción es Sphinx y Thinking Sphinx
http://www.sphinxsearch.com/
http://freelancing-god.github.com/ts/en/

y una que requiere mayor configuración pero es más potente es Solr q ue usa la librería de Java Lucene
http://lucene.apache.org/solr/
http://github.com/railsfreaks/acts_as_solr

El ferret esta basado en lucene, no sabia que habia un plugin para eso, quiza sea una solucion correcta a largo plazo.



Puede que me equivoque pero creo haber leído que Ferret se encuentra medio "abandonado" y que algunas veces los índices se corrompen. Si no es así, no me mo lestaría que me
actualicen del estado de Ferret.


Eso pensamos cuando encontramos acts_as_ferret, pero el creador se habia trasladado a github, y segun vi hay commits del 2009, asi que parece que se esta manteniendo.
http://github.com/jkraemer/acts_as_ferret/

Saludos,
Ezequiel




Muchas gracias Ezequiel.




2010/1/17 Matias Toselli <[email protected]>
Buenas gente, segunda vez que posteo una pregunta en la lista. Esta vez es mas puntual (creo). Estamos trabajando en un proyecto y necesitabamos hacer una busqueda de texto en la base de datos. Buscando nos encontramos con Ferret y acts_as_ferret. Siguiendo la documentacion y los tutoriales en internet tenemos el siguiente codigo:

Modelo:

class Item < ActiveRecord::Base
  ...
  acts_as_ferret :fields => [:title, :description]
  ...
end

En el controller

...
@items = Item.find_with_ferret params[:keyword]
...

La idea es que busque el keyword (texto) en el modelo Item por los campos :title y :description. Haciendo solo eso no hemos conseguido una busqueda que arroje resultados. Hemos probado de eliminar el index que crea para que lo reconstruya pero sigue sin funcionar. En algunos caso pudimos obtener resultados, pero luego deja de andar por algun motivo raro. La cuestion es que renegamos mucho y la busqueda no anda bien, a veces funciona y a veces no. Otra cosa que no pudimos resolver bien es el tema del score. El plugin tiene dos metodos (ademas de otros) que agrega al modelo: uno es find_with_ferret y el otro find_ids_with_ferret. El primero realiza la busqueda y arroja los objetos que contienen el keyword, la otra en cambio retorna un array que contiene el modelo donde se encontro el resultado, un campo data que no sabemos que podria contener (siempre lo vimos vacio), el id del objeto y un score. Estaria interesante poder usar el score, pero vimos que mucha gente opta por realizar la busqueda con ferret de los ids, y luego buscar otra vez los ids para obtener los datos. No nos parece muy correcto realizar una doble busqueda ¿hay alguna forma de hacer que el plugin traiga el score de los resultados o los datos que nos interesan par a mostrar en los resultados, sin hacer una doble busqueda?

Otra cosa que vemos es que la carpeta index la crea en un solo lado. Estamos usando git en modo local y a mi compañero, al querer buscar y usar el plugin no le crea el index en su copia local, sino que usa la mia. (el repositorio y las copias locales estan en la misma maqu ina servidora), algo conflictivo, porque usamos base de datos separa das a fin de no generar conflictos en los archivos de sqlite entre p ulls.

En fin, la pregunta es ¿esta bien lo que estamos haciendo o hay que configurar mas el plugin y la gema y escribir algun codigo adicional ? Nose si alguien estuvo renegando con eso. Y por otro lado ¿es buen o usar ese plugin para busqueda de texto en los modelos o hay algo m ejor?

Cualquier consejo ayuda.
Gracias.



_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar



_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar


_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a