Unidad 4. Buscadores (VII)


Cómo funciona un buscador por dentro. PageRank

Ahora que ya hemos aprendido el manejo básico de un buscador podemos entrar a ver cómo funciona internamente. Sólo veremos los conceptos básicos ya que es un tema complejo y los buscadores tampoco dan mucha información al respecto para no dar pistas a la competencia.

Para comprender mejor la tarea de un buscador pensemos primero qué hay en Internet, como está organizada la información. A continuación hablaremos de la propia estructura del buscador para adaptarse a la estructura de los datos de Internet.

Estructura de datos en Internet .


Ya vimos en la unidad 1 de este curso que cualquiera puede introducir información en Internet. Simplemente tiene que disponer de un servidor donde alojarla. Cada nueva página que se crea en Internet tiene una dirección única. Por ejemplo, www.aulaclic.es/inter2005/t_4_7.htm. Cuando alguien decide crear un sitio web elige el nombre que le parece apropiado, y también da el nombre que quiere a las carpetas y páginas que va creando. De forma que los millones de páginas que existen en internet no tienen porque tener una estructura común ni una relación prefijada entre ellas.

Si comparamos Internet a una gigantesta biblioteca, donde cada libro representa un servidor, no habría manera de colocar los libros en las estanterías de forma que respondiesen a un orden lógico según su contenido. Tampoco habría una forma estándar de ordenar las páginas dentro de cada libro.

Puesto que un servidor puede contener páginas de diferentes temas, y que dentro de un tema las páginas están agrupadas de distinta forma. Si tomamos una página cualquiera de Internet pueden darse diferentes situaciones, desde que sea una página aislada, que esté relacionada con una anterior y una siguiente, a que esté relacionada con millones de páginas.

Así como cuando se cataloga un libro existe una clasificación de materias aceptada universalmente dentro de la cual se puede ubicar un libro según su tema, en Internet no existe esto. Lo más parecido son las categorías del proyecto DMOZ, y de algunos buscadores Google, Yahoo, Altavista, etc, pero incluir una página en estos buscadores es algo voluntario por lo que no todas las páginas de Internet están incluidas en ellos.

Las páginas de Internet no están escritas en forma de texto normal sino en lenguaje HTML. Este lenguaje consta de texto y de código, el código dice en que forma se presentará el texto, de que tamaño, color, posición, etc.

Otro factor a tener en cuenta es que las páginas son dinámicas, es decir, pueden modificarse, crearse y destruirse sin previo aviso. Además, están en diferentes idiomas. Y para acabarlo de poner dificil la naturaleza del contenido de las páginas es muy variada, pueden contener texto, gráficos, imágenes, sonido, vídeo, programas, etc.

Dado este aparente caos, es fácil suponer que pronto surgieran herramientas que intentasen poner un poco de orden y facilitar la localización de la información. También es fácil deducir que estas herramientas se hayan convertido en algo imprescindible.

Hoy nadie puede imaginarse una Internet sin los buscadores. Actualmente los buscadores hacen su tarea de forma increiblemente eficaz. Pueden buscar cualquier cosa que se te ocurra en muy poco tiempo y de forma precisa. También hay que reconocerles algunas limitaciones, por ejemplo, tienen dificultades para buscar en las páginas generadas dinámicamente mediante ASP, PHP, Java, etc., puesto que estas páginas suelen tener caracteres distintos de letras en sus direcciones. Otra limitación es que los buscadores no son capaces de buscar dentro de las bases de datos accesibles desde Internet ya que cada una requiere un formulario específico y puede ser necesario un nombre de usuario y una clave para entrar.

De todas formas, en general, podemos decir que la mayor parte de la información disponible en Internet está accesible a través de los buscadores de forma rápida y fácil. Así que no hay problema, Internet puede seguir creciendo en la forma como lo ha hecho hasta ahora y nosotros seguiremos encontrando lo que buscamos. Un buscador tarda menos de un segundo en buscar entre miles de millones de páginas. La pregunta es ¿Cómo diablos lo hacen?

Estructura de un buscador.

Acabamos de ver que la estructura de la información en Internet no facilita su organización. ¿Qué han hecho los buscadores? La respuesta es crearse su propia copia de Internet.

¿Cómo lo hacen? Lo hacen unos robots, por supuesto no son robots de metal, en realidad son unos programas que van visitando las páginas de Internet y copiándolas en los discos de los buscadores. Sabemos que hay millones de páginas, por lo tanto copiar las páginas cuesta unos días, debido a esto puede ocurrir que un buscador dé un resultado de una página que ya no existe. El búscador ha consultado la copia que tenía de esa página, llamada caché, realizada unos días antes y al mostrar el resultado esa página ya ha sido borrada por sus dueños.

En realidad, los robots no copian toda Internet cada vez, sólo actualizan los datos que han cambiado y copian las páginas nuevas. Sin embargo, copiar las páginas tal cual tampoco serviría de mucho ya que la estructura de la información seguiría siendo la misma.

Lo que hacen los buscadores es tomar los datos de Internet y transformarlos creando una estructura más favorable para la búsqueda. Detrás de un buscador hay una estructura de datos que contiene la información y unos sistemas de indexación, compresión y organización de los datos que permiten efectuar búsquedas rápidamente. Por supuesto, también existen sistemas de ordenadores con gran capacidad de cálculo.

¿Qué es la indexación? Básicamente, el proceso es el mismo que cuando consultamos el índice de un libro. Buscamos en el índice y obtenemos un número de página, luego vamos directamente a esa página sin tener que recorrer todas las páginas del libro. Por ejemplo, si tenemos un sitio web, se puede crear un índice con todas las palabras que aparecen en el sitio web, y con los nombres de las páginas en las que aparecen; así, dada una palabra podremos ir rápidamente a las páginas en las que aparece. El único problema es construir y mantener actualizado el índice.

¿Qué es la compresión?. Si estamos buscando texto, las imágenes no nos interesan, tampoco el formato del texto, todo esto se puede eliminar para realizar las búsquedas más rápidas. Además, existen técnicas complejas para lograr que las páginas ocupen menos espacio.

Relevancia. Una vez seamos capaces de encontrar rápidamente todas las páginas en las que aparece la palabra que buscamos, se plantea otro problema: ¿En qué orden mostramos las páginas de resultados?

Esta cuestión tiene una gran importancia ya que va a determinar, en gran medida, la calidad del buscador. Todos esperamos que se nos muestren primero las páginas más interesantes relativas a lo que estamos buscando, es decir, las páginas más relevantes.

Para ayudar a solucionar este problema Google ha creado el PageRank.

El PageRank mide la importancia o relevancia de una página en base al número y calidad de las páginas que la referencian. Una página que sea citada por 10 páginas tendrá menor PageRank que otra página que sea citada por 1000 páginas. Sin embargo, si las 10 páginas que citan a la primera son muy importantes y las 1000 páginas que citan a la segunda son muy poco importantes, la primera página tendrá mayor PageRank que la segunda. Es decir, se tienen en cuenta el número de enlaces y la relevancia de las páginas que los contienen.

Cada página de Internet tiene asignado un PageRank, cuando se obtienen los resultados de una búsqueda, estos se ordenan, entre otras cosas, según su PageRank. Google no hace público el método exacto por el que ordena los resultados, por lo tanto, no sabemos qué importancia real se otorga al PageRank.

El PageRank es un número de 0 a 10. Si quieres ver el PageRank de una página sólo tienes que instalarte la barra de Google con opciones avanzadas y lo verás en la parte superior derecha de la barra, como muestra esta imagen.



Si quieres profundizar en este tema te recomendamos la siguiente página: Cómo funciona Google.

Las cifras de Google.

Para poder realizar todas estas funciones los ingenieros de Google han creado programas que contienen millones de fórmulas y para poder trabajar con tantos datos utilizan miles de ordenadores trabajando en paralelo, se habla de más de 60.000 ordenadores, además son ordenadores personales comunes. El trabajo en paralelo permite que una búsqueda no se ejecute en un sólo ordenador, sino en varios ordenadores a la vez, cada ordenador hace una parte del trabajo. En el primer semestre del 2005 Google informó que tenía indexadas más 11.000 millones de páginas, los últimos rumores hablan de 60.000 millones de páginas.

Más información sobre el Hardware de Google (en Inglés).


 
Aviso legal: Uso autorizado para el curso 529EX06 del Servei d'Extensió Universitària en los límites contratados.
aulaClic S.L. Todos los derechos reservados. Prohibida la reproducción por cualquier medio.
Octubre-2005. aulaclic.es