Unite al grupo

Grupos de Google
Suscribirte a webandbeer
Correo electrónico:
Consultar este grupo

jueves, 1 de mayo de 2008

Sphinx : la solucion a la busqueda de texto

Hola gente como andan????.

Hoy vamos a hablar de sphinx, una solucion interezante a la hora de solucionar el problema de la busquedas de texto.


Normalmente sacrificamos el modelo de entidad/relacion e integridad referencial con alguna tabla MyISAM (en MySQL claro esta) para aplicar un full-text y hacer que las busquedas de texto sean mas rapidas.

La verdad, eso es una verdadera porqueria, y todos lo sabemos.

Ahora bien, unos simpaticos rusos nos dieron una solucion llamada Sphinx, que es un programa que toma un query SQL, indexa el resultado, y despues nos deja un indece propio para las busquedas de texto.


Por ejemplo, tenemos una tabla de users con mas de 1 millon de registros, y queremos buscar users por username, email, nombre y apellido.

En Sphinx creamos un indice que se alimentara del query

select username, password, email, fname, lname from Users;

Y le indicamos que el "id" sera el user_id.

Sphinx corre el query intermamente, y armar el indexe de texto.

Las busquedas con Sphinx son de lo mas rapida que se vio, asi que les sorprendera.

Trae una API para PHP (para usarlo desde PHP) y hacer las busquedas.

Tiene una gran varidad de parametros para la relevancia de la busqueda y cosas asi, les aseguro que es ideal.

En proximos post se hablare de ejemplos, casos de implementacion, tips, etc.

No hay comentarios: