Completo el análisis sobre quien es mejor Google o Yahoo, iniciado hace un par de semanas, con el estudio de las búsquedas por varios términos. Vimos en el capítulo anterior que Yahoo da mejores resultados cuando se busca por un solo término. ¿Es capaz de repetir su éxito al efectuar consultas por varios conceptos unido mediante operaciones Booleanas?
A mi no me enseñaron Álgebra de Bool, a mis
hijos se les enseño a una edad, en la que no pudieron comprenderla.
La repasaremos rápidamente. Las webs que contienen la una palabra
como Foncastín (f) o Cepeda (c) son dos conjuntos de webs, que
probablemente tiene elementos comunes, las webs que contienen a la
vez las palabras Foncastín y Cepeda (fc). Se denomina suma de
conjuntos, (OR), a la colección de todas las webs que contienen una
u otra palabra (f OR c). Resta de conjuntos, (NOT), a la colección
que tiene la primera palabra pero no la segunda (f NOT c), e
intersección de conjuntos, (AND), a la colección de webs que tiene
ambas palabras a la vez, (f AND c). Fin de la lección, espero que
el esquema ayude a aclarar los conceptos.
Operaciones con varios conceptos
Lo normal es que cuando efectuemos una búsqueda utilicemos más de un concepto. Para probar como funcionan estos buscadores en consultas complejas he utilizado un aspecto más llamativo de la historia de Foncastín. Hacia 1950, los habitantes de Oliegos aldea de La Cepeda en León, fueron realojados en Foncastín al quedar su pueblo sumergido bajo las aguas por la construcción del pantano de Villameca . En las pruebas con pocos elementos, he utilizado los tres nombres en negrita. Para ver como se comportan los buscadores casando un número elevado de ítems, he utilizado la tripleta de Chicago, Illinois y Capone.
Funcionamiento de un buscador
Los buscadores, para dar una respuesta rápida a cualquier consulta, tienen ya elaborados para cada concepto un índices ordenado de acuerdo con la valoración dada a las webs. Cuando solicitas Foncastín, buscan en un Índice de Índices y encontrado, presentan en pantalla la información de las diez primeras webs del índice, (con un último ajuste según el país que hace la consulta). Mientras consulta esta página, el buscador prepara las siguientes 1000 webs del índice, por si Vd. las reclama.
Ello supone tener precocinado un elevadísimo número de índices. Calculo necesarios unos 40.000.000 de índices para manejar cien idiomas diferentes. Pese a ello, solo se necesita un máximo de 26 entradas o lecturas dicotómicas al Índice de Índices para localizar cualquier índice, (2 a la 25 = 33 554 432), lo que asegura una respuesta casi inmediata, aun utilizando PCs normales, como los que usa Google.
Búsquedas complejas
El problema empieza cuando solicitamos búsquedas por dos conceptos, generalmente intersecciones de conjuntos, (AND), por ejemplo si solicito búsqueda por Foncastín y
Cepeda. O tenemos el índice creado, o hasta encontrar las diez primeras webs, tomamos cada web del índice menor y estudiamos si existe o no en el otro indice, (matching de tablas), pasadas las diez primeras respuestas, el resto lo elaboramos más tranquilamente, con el usuario entretenido en la primera pantalla.
Puesto que la búsqueda por la intersección de dos conceptos es muy corriente, es útil tener igualmente precocinados estos índices, pues, aunque supone tener 1600 millones de índices, (combinaciones de 40M de dos en dos), buscar uno rápidamente es posible, pues supone aumentar a 32 las lecturas dicotómicas al Índice de Índices, (2 a la 32 = 4294 967 297), lo que aún es factible. El problema grave es que eleva al cuadrado igualmente el tiempo necesario para confeccionar los índices, es decir que si un buscador tarda 5 días en preparar los índices por un concepto, tardará 25 en preparar adema los índices intersección entre ellos.
Efectuar rápidamente el matching en directo, no es algo sencillo. Tratar dos índices con millones de entradas, exige utilizar un software depurado al máximo y técnicas de trabajo hiper-treading con procesadores en cluster para permitir poner a montones de procesadores a trabajar en paralelo sobre la consulta. En cualquier caso, estas técnicas hay que usarla en otros tipos de consulta, pues preparar índices para más caso, queda fuera de cualquier posibilidad real, aunque se podría establecer un sistema de estadístico que permitiera preparar casos complejos previsibles, por ejemplo tener un índice para kennedy oswald killed, si las estadísticas dijeran que esta consulta se realiza con cierta frecuencia.
Resultados de las pruebas
Cuando hice las pruebas de velocidad, el tiempo de búsqueda de un concepto para Google variaba entre 0,06 y 0,19 segundos (0,10 seg. de media), y en Yahoo de los 0,04 y 0,25 seg. (0,15 seg. de media) o sea más lento Yahoo. En uno y otro caso no aprecié que se note diferencia en el tiempo en la respuesta por razón del tamaño u otra característica de la respuesta, (como era de esperar, pues en principio tanto da encontrar un índice que otro).
Magníficos tiempos para ambos buscadores
Para búsqueda de intersecciones (AND) de dos conceptos Google tarda una media de 0,33 seg. mientras que Yahoo tarda de media 0,15 segundos. Ello parece indicar que Google no indexa intersecciones, (por ello su tiempo medio de respuesta sube) y Yahoo si, lo que le permite mantener la media, aunque en la búsqueda sencilla sea más lento. Otro punto a destacar es que para la intersección Chicago Foncastín Google da una respuesta, el primer capítulo de esta serie, mientras que Yahoo no encuentra ninguna, lo que indica que Google controla de cerca las webs que cambian el contenido y Yahoo solo las visita de tarde en tarde.
La prueba de fuego es buscar la intersección de tres inmensos conjuntos que tengan muy pocos o no tengan elementos comunes, por ejemplo Chicago (404 M), Tokio (130 M), y Barcelona (58 M), pues no puede ser que tengan preparado un índice y tienen que trabajar on line al menos en la comparación final. Los tiempos conseguidos son 020 para Google y 0,08 para Yahoo, lo que aumenta mis sospechas de que Yahoo tiene hechos índices para consultas por dos conceptos, lo que hace muy rápida otras búsquedas más complejas, pues aparte de ahorrase paso lo hace mátchings con indices mas más cortos. De todas formas, en la práctica ambos sistemas son inmediatos en su respuesta.
Prueba final pasada con éxito buscar un string de texto
Otra trabajo a mi juicio muy difícil, es buscar una cadena de texto, pues una vez encontrada la primera palabra, hay que acceder allí donde se conserve el texto para averiguar sigue lo que sigue coincide o no. A la búsqueda chicago denominación de origen las respuestas han sido de 0,17 y 0,49, algo mas lento Yahoo pero dentro de lo perfectamente aceptable. Con esto concluyo las pruebas de velocidad pues ninguna más se me ocurre que sea razonable y a su vez más complejas que las efectuadas, el concreto las operaciones OR y NOT me parecen mucho mas sencillas, pues en el primer caso sacaremos las diez webs más valoradas entre las diez primeras de cada uno de los conceptos y en el segundo recorreremos un índice comprobando si existe en el segundo hasta seleccionar diez webs, cosa sencilla si hay construidos índices con clave alternativa la dirección de la web.
Ambos equipos informáticos, técnicamente perfectos
Como viejo profesional mi respeto a los técnicos de ambos buscadores, he tenido que bregar con amplias bases de datos, como las de los grandes bancos de este país, inmensas, pero considerablemente más pequeñas que las que ellos manejan y se calibrar el mérito que tiene conseguir dar respuesta tan rápida a este tipo de consultas. Mi admiración para ambos equipos.
Otra vez mejor buscador Yahoo
Nos falta saber si una vez pasada las webs por esta batidora, los resultados siguen teniendo la calidad y orden exigible. Para ello vuelvo a lo que me es conocido y realizo la búsqueda Foncastín Cepeda León y estudio los resultados obtenidos. Ambos buscadores encuentran 8 resultados, pero mientras que las respuestas de Google las valoro en conjunto en 20 puntos, Yahoo alcanza 41, o sea el doble, igual que lo observado en las consultas simples. La inmediatez en la respuesta de ambos buscadores, hace que aunque hubiese ventaja de alguno de ellos en este apartado, esta ventaja sea de poco valor práctico, en cambio Yahoo obtiene respuestas más útiles, por lo que demuestra ser mejor buscador en su conjunto.
Un pero en Yahoo
Tan solo he encontrado un punto en contra de Yahoo. Me hace la impresión que Google introduce las novedades en el buscador antes que Yahoo, lo que es decisivo si se pretende encontrar asuntos de recientes, como noticias o comentarios aparecidos en periódicos y blogs durante los últimos días. Estos y otros aspectos, secundarios pero muy importantes, para considerar útil un buscador los analizaré la próxima semana en el que será el último capítulo de la serie.

Me parece muy interesante tu artículo. Sólo me queda una duda. Que tanto afecta la plataforma tecnológica en cuanto al tiempo de respuesta? y que clase de servidores poseen Yahoo y Google.
Es tecnología SPARC, o X86?.
Si pudieras darme la infomación te lo agradecería.
Puedes escribirme a cmbriceno@premiermultimedia.net
Gracias!!
google mejor
google es mejor sin duda alguna solo hay k obsevar los resultados cuando buscamos algo
hola la verdad yo no se mucho de estas cosas de internet y buscadores pero en mi opinion el mas utilizado es google y en verdad es uno de los mas rapidos
google!!!