Plugin para búsquedas

Alguien conoce algún plugin interesante (bueno) para búsquedas?

On 31/01/2008, [dac] [email protected] wrote:

Alguien conoce algún plugin interesante (bueno) para búsquedas?

Las opciones principales de motores de búsqueda que tienes que tienes son

  • Ferret (plugin acts_as_ferret)
  • Solr
  • Sphinx (plugin acts_as_sphinx, sphincter, algún otro …)

El otro día Xavier me puso sobre la pista de problemas que da Ferret,
así que opté por Sphinx vía acts_as_sphinx y la experiencia hasta el
momento ha sido muy buena.


Manuel, que
piensa que eres una excelente persona y medra en torno a
http://simplelogica.net y/o http://simplelogica.net/logicola/
Recuerda comer mucha fruta y verdura.

Muchas gracias Manuel. Ferret ya lo conocía pero tiene cosas que no me
convencen del todo… Probaré acts_as_sphinx :wink:

2008/1/31 Manuel González Noriega [email protected]:

+1 Sphinx

On Jan 31, 2008, at 10:49 AM, Manuel González Noriega wrote:

El otro día Xavier me puso sobre la pista de problemas que da Ferret,
Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es


name. Francesc E. i Martí
voice. +34 678.681.603

On 31/01/2008, [dac] [email protected] wrote:

Muchas gracias Manuel. Ferret ya lo conocía pero tiene cosas que no me
convencen del todo… Probaré acts_as_sphinx :wink:

Yo seguí este tutorial:

http://www.datanoise.com/articles/2007/3/23/acts_as_sphinx-plugin

Y va bien con alguna salvedad. La que recuerdo ahora mismo y era
bastante grave es que, mientras el tutorial te especifica un
sphinx.conf en el que el pid va en el directorio /log de la app rails,
las tareas rake del plugin lo buscan en /var/run, con lo cual rake
sphinx:start y rake sphinx:stop no te van a funcionar correctamente.
Recuerda modificarlo.

Luego tiene alguna tontería más como

*

  :weight is an array of weights for each index component (used in

the relevance algorithm)

For example, to make product and brand names more preferable than the
product description:

Product.find_with_sphinx query, :sphinx => {:width => [100, 100, 

50]}


En el que, obviamente, en el ejemplo debería utilizar ‘weight’ y no
‘width’


Manuel, que
piensa que eres una excelente persona y medra en torno a
http://simplelogica.net y/o http://simplelogica.net/logicola/
Recuerda comer mucha fruta y verdura.

+1 para acts_as_sphinx.

Pero así en plan formulario de búsqueda sin plugins? Tengo que darle una
clase de Rails a una novata y me gustaría saber si conocéis algún
tutorial
donde expliquen cómo hacer un formulario de búsqueda. En plan, por
ejemplo,
tenemos un modelo Piso con varios campos y poder buscar a pata por
direccion, codigo postal, ciudad, metros cuadrados, etc. El típico
formulario de búsqueda.

Más que nada por ver si ya hay una guía de ese tipo que os suene para
enfocarlo por ahí, que yo últimamente me explico muy mal.

Jaimes

El día 31/01/08, [dac] [email protected] escribió:

Perfecto! Muchas gracias por las aclaraciones, está bien saberlas “antes
de…”.

On Jan 31, 2008 10:59 AM, Manuel González Noriega <

Leyendo esto por encima hay algo que no me queda claro. Con
acts_as_sphinx
puedo resolver el problema de buscar diferentes recursos. Por ejemplo,
existirán partes de la aplicación donde quiera buscar por casi todos los
modelos y otras en las que quiera buscar solo por artículos, usuarios…

Me confunde el ejemplo en el que solo define un Source y un Index,
podría
definir varios sin problemas?

Perdonad si la pregunta es un poco tonta…

2008/1/31 Jaime I. [email protected]:

On 31/01/2008, Jaime I. [email protected] wrote:

enfocarlo por ahí, que yo últimamente me explico muy mal.
Bueno, es simplemente construir una query en función de los parametros
pasados por el formulario (mejor con get, para que la búsqueda sea
permalinkeable) Quizás pueda ser interesante utilizar algún plugin de
construcción de SQLs complejas. Creo recordar que la gente de Err The
Blog tenían uno. ¿Puede ser Ambition? O me estoy liando y Ambition es
para otra cosa.


Manuel, que
piensa que eres una excelente persona y medra en torno a
http://simplelogica.net y/o http://simplelogica.net/logicola/
Recuerda comer mucha fruta y verdura.

Manuel González Noriega escribió:

On 31/01/2008, [dac] [email protected] wrote:

Alguien conoce algún plugin interesante (bueno) para búsquedas?

Las opciones principales de motores de búsqueda que tienes que tienes son

  • Ferret (plugin acts_as_ferret)

En la lista “Rails deployment” el día 4 se preguntó sobre “sphinx vs
ferret”[1] y el último mail(de ayer) explicaba que ferret está bastante
muerto en su desarrollo. Así que yo descartaría ferret.

[1] http://www.ruby-forum.com/topic/137629

On 31/01/2008, [dac] [email protected] wrote:

Leyendo esto por encima hay algo que no me queda claro. Con acts_as_sphinx
puedo resolver el problema de buscar diferentes recursos. Por ejemplo,
existirán partes de la aplicación donde quiera buscar por casi todos los
modelos y otras en las que quiera buscar solo por artículos, usuarios…

Me confunde el ejemplo en el que solo define un Source y un Index, podría
definir varios sin problemas?

Perdonad si la pregunta es un poco tonta…

Sí, yo ahora mismo tengo 3 sources y tres índices. Lo que me queda
mirar en la doc de Sphinx es cómo abstraer los datos de
configuraciónde mysql en cada source, porque es bastante lame repetirlos en cada
uno. Doy por sentado que se puede, y que sólo el no haber tenido 15
segundos para mirar como se hace es lo que me separa del objetivo :slight_smile:


Manuel, que
piensa que eres una excelente persona y medra en torno a
http://simplelogica.net y/o http://simplelogica.net/logicola/
Recuerda comer mucha fruta y verdura.

Ya, si ya se cómo va, era por saber si conocíais algún tutorial sobre
esto
para remitir a mi estudiante allí y no liarla yo con mis explicaciones
:slight_smile:

El día 31/01/08, Manuel González Noriega
[email protected]
escribió:

El 31/01/08, Rafael G. [email protected]
escribió:> ferret"[1] y el último mail(de ayer) explicaba que ferret está bastante

muerto en su desarrollo. Así que yo descartaría ferret.

[1] http://www.ruby-forum.com/topic/137629

Es una pena lo que comentáis de que Ferret (aka el Lucene de Ruby)
esté un poco abandonado…

Yo tengo muy poca experiencia con Ruby, ninguna con Lucene en Ruby
pero mucha con Lucene en Java y me ha agradado bastante.

Aunque tiene sus problemas:

  • no tiene actualización: hay que borrar e insertar y reindexar.
  • es un poco engorroso montar los cimientos (aunque me imagino que en
    el port a Ruby se habrá aligerado esto)

Saludos.
f.

Al hilo de esto. Hay forma de hacer las busquedas con URL como estas:

misitio.com/search/articles/loquesea o misitio.com/search/users/pepito

Consigo hacerlas pero no termino de ver la forma de implementar el
form…
¿Habéis hecho algo así?

2008/1/31 Fernando G. [email protected]:

On Jan 31, 2008, at 1:12 PM, [dac] wrote:

Al hilo de esto. Hay forma de hacer las busquedas con URL como estas:

misitio.com/search/articles/loquesea o misitio.com/search/users/pepito

Consigo hacerlas pero no termino de ver la forma de implementar el
form… ¿Habéis hecho algo así?

No esta muy facil.

En HTML5 se preveen placeholders para poder hacer eso, de manera que
podrias decir algo tal que asi (en espiritu, no recuerdo si es
exactamente asi):

Entonces el navegador machambra los placeholders y construye la URL
como tu la quieres.

Hoy en dia la unica solucion que conozco es emular eso con JavaScript.
Por ejemplo haciendo el submit con un enlace que onclick coge los
campos del form, construye un path que se autoasigna como href y
devuelve true. Algo en esa linea.

– fxn

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

[dac] wrote:

Manuel González Noriega escribió:
muerto en su desarrollo. Así que yo descartaría ferret.

  • dos rutas:
    map.connect “/search”, {:requirements => {:controller=>“articles”,
    :action => “search”}, :conditions => {:method=>:post}}
    map.connect “/search/:keywords”, {:requirements =>
    {:controller=>“articles”, :action => “search”}, :conditions =>
    {:method=>:get}}

  • El GET para perdirlo por URL o linkarlo, y el POST para los
    formularios

Por curiosidad, los que usan Sphinx, como actualizan los indices? Via
cron jobs? despues de cada modificación al modelo?
Con que volúmen de datos estan trabajando?
Alguien sabe si hay planes de implementar fuzzy searches en Sphinx?

Saludos,
Mauro.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHoeVDUCEUdvXOcNIRAqtrAKCjjHjDSgu78KoquKDFzz6Suxw11gCgj+wO
OI88YWLKM0KRgAmFZ4sKunE=
=OB9N
-----END PGP SIGNATURE-----

On 31/01/2008, Mauro P. [email protected] wrote:

Por curiosidad, los que usan Sphinx, como actualizan los indices? Via
cron jobs? despues de cada modificación al modelo?
Con que volúmen de datos estan trabajando?

En mi caso es el primer desarrollo con Sphinx. Va a ser un volumen de
datos muy bajo (una tienda online con menos de 100 referencias) con lo
que no preveo tener problemas con una actualización tras la
creación/modificación de cada registro.


Manuel, que
piensa que eres una excelente persona y medra en torno a
http://simplelogica.net y/o http://simplelogica.net/logicola/
Recuerda comer mucha fruta y verdura.

¿Para 100 registros vale la pena que utilizes sphinx?

Yo haria una prueba con MySQL y su Full Text search y valoraria si
vale la pena añadir Sphinx a la
aplicación.
En el siguiente caso he hecho un query sin full text ni nada y la base
de datos parece que tira.


mysql> SELECT count() FROM events;
±---------+
| count(
) |
±---------+
| 3337 |
±---------+
1 row in set (0.00 sec)

mysql> SELECT name FROM events WHERE text LIKE ‘%dump%’;
±-----------------+
| name |
±-----------------+
| Cashback |
| Speakers’ Corner |
| Guilty Pleasures |
±-----------------+
3 rows in set (0.08 sec)

mysql>


Ei, solo es una opinion.

Un saludo,

Francesc

On Jan 31, 2008, at 4:45 PM, [dac] wrote:


Daniel A. Castro
[email protected] | skype: dac.ocio
http://www.e-dac.es | http://www.dosmiluno.org


Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es


name. Francesc E. i Martí
voice. +34 678.681.603

On 31/01/2008, Francesc E. [email protected] wrote:

¿Para 100 registros vale la pena que utilizes sphinx?

Yo haria una prueba con MySQL y su Full Text search y valoraria si
vale la pena añadir Sphinx a la aplicación.

En el siguiente caso he hecho un query sin full text ni nada y la base
de datos parece que tira.

Sí, la primera opción era la full-text de mysql vs indexador externo.
He optado por lo segundo porque la búsqueda también abarcaba otros
modelos (categorías, packs de productos, recetas …) y al final
consideré que mi custom solution iba a ser más trabajosa de extender,
mantener, etc. que un Sphinx o similar.


Manuel, que
piensa que eres una excelente persona y medra en torno a
http://simplelogica.net y/o http://simplelogica.net/logicola/
Recuerda comer mucha fruta y verdura.

Mauro, buena pregunta, en el howto que seguí comenta que lo hace a
traves de
con cada 3 horas, pero la verdad es que tratándose de un volumen de
datos (y
de actualización) pequeño creo que no sería mala idea hacerlo al
actualizar
un registro. A ver que nos dicen los que ya lo usan. Porque yo he
empezado
hoy…

On Jan 31, 2008 4:19 PM, Manuel González Noriega <

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs