Comparativa sobre motores de búsqueda open source

Interesante la comparativa que han hecho Christian Middleton y Ricardo Baeza-Yates sobre motores de búsqueda de códido abierto. He metido este artículo en la categoría de Trovit porque además de hablar de una temática directamente relacionada, hace un tiempo fuimos a ver a Ricardo Baeza a las oficinas de Yahoo! en Barcelona para que nos aconsejara tecnológicamente sobre algunos puntos y nos diera su opinión del proyecto. El hecho de que lo viera como un proyecto interesante nos animó mucho a continuar y desde aquí quiero darle las gracias por el tiempo que nos dedicó.

El artículo habla sobre las principales características de 17 motores de búsqueda y hace una interesante comparación de rendimiento durante el proceso de indexación y recuperación de información con diferentes colecciones de documentos y diferentes tipos de consultas.

Los motores más interesantes son ht://Dig, IXE Toolkit, Indri, Lucene, MG4J, Omega, IBM Omnifind Yahoo! Edition, SWISH-E, SWISH++, Terrier (Terabyte Retriever, jeje), XMLSearch, Zettair. Después habla de Nutch (subproyecto de Lucene muy conocido) y de otros más que están paralizados en cuanto a lo que continuidad en el desarrollo se refiere como AspSeek o BBDBot.

Os invito a leer el PDF que no tiene desperdicio. Y después este post sobre Lucene donde se comenta que la nueva version de Lucene (v. 2.3) es 5 veces más rápida indexando que la release actual gracias al nuevo código de indexación de Michael McCandless. ¡Estoy deseando que salga la release!

Lo más buscado en Yahoo! este año

¡OJO al dato! Yahoo! ha liberado la lista de cadenas de búsqueda más utilizadas en su motor y aquí tenemos la lista copiada de este post en Trechcrunch:

  1. Britney Spears
  2. WWE
  3. Paris Hilton
  4. Naruto
  5. Beyonce
  6. Lindsay Lohan
  7. Rune Scape
  8. Fantasy Football
  9. Fergie
  10. Jessica Alba

¿Britney Spears es la búsqueda más popular? ¿Paris Hilton? ¿Que nos está pasando? :P

Adobe y Yahoo! añaden anuncios en ficheros PDF

Leo en Online este post de Rubén Colomer sobre el nuevo programa Beta que han abierto Adobe + Yahoo! para añadir anuncios contextuales en nuestros PDFs. 

Aunque es interesante a modo de prueba, pienso que los CTR’s de estos anuncios en la mayoría de PDF’s van a ser relativamente bajos básicamente por los perfiles de los usuarios que los leen y el contexto en el que son leídos.

Seguiré atento a la evolución de esta nueva iniciativa para ver que números salen con los primeros resultados de las pruebas.

Concurrencia en Java

Me he estado informando sobre sistemas concurrentes en Java y he encontrado estos dos libros que parecen muy interesantes y que ya me he comprado en Amazon para leer.

1) Concurrent Programming in Java(TM): Design Principles and Pattern de Doug Lea (profesor de la universidad de Nueva York especializado en programación concurrente).

2) Java Concurrency in Practice  de Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes y Doug Lea

Según tengo entendido sobre este último: muy bien escrito, bastante práctico y además cubre hasta la versión 5 de Java con las nuevas librerías de concurrencia.

 ¿Alquien sabe de alguno mejor orientado a diseño y/o desarrollo de sistemas concurrentes en Java?

Top queries de adsense for search en peligro después de un año

Si utilizas Adsense for Search y visitas tus reports verás que tienes un nuevo aviso de Google en el cual se especifica que se borrará el histórico de top queries con más de un año de antigüedad.

El mensaje exacto es:

“Effective December 10, AdSense for Search top query data that’s more than a year old will no longer be available. If you have any critical reports, please run and save them prior to December 10.”.

¿y la razón por la que google está eliminando estos datos es? No creo que un problema técnico esté haciendo mella en un monstruo como google… ¿alguien lo sabe?

Solucionado el problema de la latencia en los grupos de google

¡Al fin! Parece que google ha solucionado el problema por el cual los correos de los grupos de google a veces llegaban con un delay impresionante :) Lo acabo de leer en este post de SERoundtable.

Fix en la clase CheckIndex

Hace 3 días escribía sobre un update en la clase CheckIndex que permitía arreglar índices de Lucene corruptos. Pues bien, justo hoy a raíz de un post sobre un bug que detectaba segmentos con documentos eliminados como erróneos, Michael McCandless ha vuelto a actualizar la clase. Os la dejo aquí de nuevo con el fix.

Interesante librería de patrones de interacción

Me ha gustado mucho la página de Martijn van Welie sobre diseño de patrones de interacción que me ha pasado mi compañero y amigo David Rodriguez, donde explica donde y cómo se utilizan determinados elementos de interacción con el usuario y cual es el motivo de su uso.

Como estoy bastante metido últimamente en el mundo de la IR, os dejo aquí el enlace directo a lo que explica Martijn sobre las cajas de búsquedas como elementos de interacción.

Restauración de un índice de Lucene corrupto

Aunque es muy difícil que un índice de Lucene acabe corrompiéndose puesto que el sistema de Index Managing está preparado para soportar caídas de la JVM ya sean provocadas (p.e. con un ‘kill -9′. Y siempre pienso ¿no sería mejor añadir un poquito de lógica a la aplicación para poder cerrarla bien en cualquier momento? Pero sólo se queda en es eso… en un pensamiento) o imprevistas, podemos encontrarnos con situaciones poco deseables si, por ejemplo, se nos cae la máquina con la que estamos indexando en medio del proceso.

Aunque parece que el equipo de Lucene está trabajando en su versión 2.3 entre otras cosas para evitar este tipo de problemas y así mantener en todo momento la consistencia del índice, existe la posibilidad de chequear y recuperar ajustando un poco la clase CheckIndex con este parche desarrollado por Michael McCandless. Sólo tendremos que lanzar el proceso con el parámetro “-fix” y se recorrerá todo el índice arreglando las inconsistencias que pueda haber.

¡Mejor que nunca lo necesiteis!

Herramientas (experimentales) de debug en java

Aquí os dejo 4 herramientas interesantes que os pueden ser de utilidad para debugar “expedientes X” en vuestros proyectos java:

 jinfo - Herramienta que nos da información sobre la configuración de un determinado proceso de java o de un servidor remoto. La información incluye tanto propiedades del core de Java como flags de la linea de comandos de la JVM.

 jmapNos muestra los objetos compartidos en memoria o detalles de la memoria HEAP de un determinado proceso o de un servidor remoto.

 jsadebugd - Es un demonio que actua como servidor depurador de procesos.

 jstack - Nos permite ver la pila de cualquier thread de Java para un determinado proceso o para un servidor remoto.

« Página anterior