Entendiendo el funcionamiento de los sistemas de búsqueda en la web (Parte II)

Tal y como habíamos quedado en la primera parte de este artículo, en esta segunda parte te explicaré con mayor detalle los subsistemas que componen a los sistemas de búsqueda y recuperación de información en la web, mejor conocidos como motores de búsqueda.

Recordemos que un motor de búsqueda web es un sistema de búsqueda  y recuperación de información (SRI) muy particular y de muy altas prestaciones el cual maneja tres tipos de entradas y salidas:

  • Consultas de búsqueda: generadas por los usuarios con palabras clave.
  • Resultados de búsqueda: generados en respuesta a cada consulta de usuario, caso por caso.
  • Sitios web: información de todas las páginas publicadas en la web.

Sistema

Este Sistema de Búsqueda en la Web se divide a su vez en 3 subsistemas:

  • Sistema de rastreo: es un sistema cuyas entradas son los documentos web (entendiendo un documento web como una URL simple y su contenido). Su función es descubrir y añadir contenido publicado en los sitios web (texto, imágenes, video, etc.) a un repositorio de datos, el cual proporciona la base para construir el índice del buscador.
  • Sistema de indexación: su función es procesar la información recabada por el sistema de rastreo y almacenada en el repositorio de datos, compilándola y generando la base de datos que finalmente se constituye como el índice del buscador. La indexación implica tomar los datos recopilados para cada URL y construir una estructura de datos apropiada para el procesamiento de las búsquedas de usuario; así como realizar análisis adicionales para la detección de contenidos duplicados y de spam, con el objetivo de identificar las propiedades de página que son señales de calidad de contenido.
  • Sistema de procesamiento de consultas: también conocido como sistema de búsqueda y ranking, se ejecuta como un servicio web para responder a las consultas de los usuarios. El sistema de procesamiento de consultas acude al índice del buscador para localizar y clasificar documentos relevantes a cada búsqueda, para luego generar la página de resultados de búsqueda que es desplegada en el dispositivo del usuario.

La gráfica a continuación ilustra la interacción entre los sistemas que componen un motor de búsqueda:

Subsistemas

Sistema de rastreo

El sistema de rastreo tiene la función de recopilar datos publicados en la Web de manera periódica y permanente, reconociendo y registrando páginas de código HTML y otros tipos de documentos como PDF, PowerPoint, Word, Excel y otros. El sistema de rastreo extrae la información de cada sitio o documento Web identificado con una URL única y la convierte en texto; de manera de facilitar su posterior indexación, búsqueda y recuperación. A continuación presentamos el diagrama funcional de un sistema de rastreo típico, y revisamos sus componentes principales:

Sistema4

  • El descargador: lee las páginas web siguiendo el protocolo HTTP. Típicamente, un rastreador maneja muchísimas conexiones HTTP en paralelo. Considerando que gran cantidad de sitios web presentan alta latencia (retardos para cargar) el sistema tiene la capacidad de mantener muchas solicitudes pendientes en paralelo. El descargador posee un módulo de extracción y filtrado de URL que analiza las páginas descargadas, identifica los enlaces salientes, y puede también filtrar las URL de baja calidad o duplicadas. Después del filtrado, el descargador agrega las direcciones URL extraídas de cada documento a una cola de URLs que serán analizadas por el Programador.
  • El programador: decide qué URLs han de ser visitadas en la próxima ronda de rastreo. Considerando que los sitios web tienen tamaños variables, los sitios pequeños se pueden rastrear rápidamente, mientras que se necesita mucho más tiempo para visitar un sitio grande. El planificador analiza periódicamente las propiedades de las direcciones URL en la cola, les asigna su prioridad, y selecciona un subconjunto de URLs para el próximo proceso de rastreo, para lograr los siguientes objetivos:
    • Que los sitios grandes (que contienen grandes cantidades de información) sean completamente rastreados
    • Que las URL sean refrescadas con una frecuencia apropiada
    • Que las URL´s muy recientemente rastreadas sean excluidas de rastreos próximos.
    • Que las URL´s de baja calidad o duplicadas tengan una mínima prioridad.

Hay una serie de factores los cuales deben tener en cuenta el sistema de rastreo:

  • La cortesía: para mitigar el impacto negativo sobre los recursos de un servidor web (uso de memoria, capacidad de procesamiento y ancho de banda), el sistema de rastreo debe seguir una política de cortesía, limitando su frecuencia de rastreo. Por ejemplo, un rastreador no puede hacer más de una solicitud al mismo host al mismo tiempo, y posiblemente deba añadir un retardo de tiempo entre dos solicitudes consecutivas al mismo host.
  • Archivos estándar de exclusión de robots: algunos administradores web puede excluir sus páginas del índice de un motor de búsqueda proporcionando el archivo /robots.txt en el directorio superior del sitio web. Este archivo especifica las restricciones de visita para el rastreador de un motor de búsqueda.
  • Anormalidades en el rastreo: algunos sitios responden a la petición de un rastreador lentamente, o incluso no responden. Algunos sitios puede devolver resultados erróneos o rotos a un rastreador. Un rastreador debe ser resistente a la falta o la lentitud de un sitio web y ser capaz de volver a intentar en un momento posterior.

Sistema de indexación

El sistema de indexación colecta y procesa los documentos web en el repositorio de datos para producir el índice del buscador. La información adicional recopilada en la generación de este índice incluye las características que afectan el ranking extraídos de enlaces a la página, de los textos de anclaje (anchor text) y los datos de registros de consulta de los usuarios (user query logs). La gestión de análisis de contenidos organiza un índice en línea con clasificación y partición, y también guía al sistema de rastreo para descubrir y actualizar documentos web.

A continuación presentamos el diagrama funcional de un sistema de indexación típico, y revisamos sus componentes principales:            Sistema2

  • Procesamiento de datos: el procesador de datos realiza el análisis sintáctico de los documentos en el repositorio de datos, descomponiendo sus componentes en la forma de tokens indexables que son almacenados en el índice. Utiliza técnicas de procesamiento de lenguaje natural que pueden identificar los límites entre palabras con una buena precisión. El procesador de datos también detecta el idioma de un documento y su formato. Considerando que los documentos no siempre obedecen al formato o sintaxis deseados, el procesador tiene que tolerar los errores de sintaxis tanto como sea posible.
  • Análisis de Contenido: La gestión de contenidos desempeña las siguientes funciones en el procesamiento de los datos:
    • Organizar la gran cantidad de páginas rastreadas, para facilitar la búsqueda en línea. Por ejemplo, la base de datos en línea es generalmente dividida en grupos de contenido basados en el lenguaje y el país. Para cada grupo de contenido, hay una división adicional de contenidos por niveles, basados en calidad, la cual también afecta la decisión de prioridades y frecuencia de rastreo.
    • Realizar un análisis en profundidad para una mejor comprensión de la información representada en un documento. Ejemplos de este tipo de análisis son: el reconocimiento de título del documento y de los títulos de las secciones, destacando con diferentes pesos las palabras que captan el significado de un documento; la identificación de la estructura de una página y el reconocimiento de menús de sitio que no  contienen material primario; y la interpretación de los Javascripts incrustados en la página, para capturar su verdadero contenido.
    • Recoger contenido adicional y señales de ranking. Aun cuando las características de los textos son lo básico para un motor de búsqueda, también se puede obtener información crítica para el ranking de otras fuentes. Por ejemplo, el registro de búsqueda de usuario (user search log) proporciona una retroalimentación sobre cómo los usuarios interactúan con los resultados de la búsqueda de acuerdo a sus consultas.
    • La detección de spam es una tarea muy importante de la gestión de contenidos, cuya misión es detectar las páginas que implementan tácticas maliciosas con el objetivo de influir en el resultado de los algoritmos de ranking. Por ejemplo, algunos sitios web presentan contenidos diferentes al robot rastreador en comparación con lo que se presenta a los navegadores web de los usuarios. Esta técnica spam, llamado encubrimiento web (web cloaking), es utilizada a menudo por sitios de baja calidad para engañar a los motores de búsqueda. Otras tácticas de spam incluyen las granjas de enlaces, los textos invisibles con palabras clave, y la explotación a través de contenidos generados por usuario como los blogs. Se pueden emplear técnicas automáticas o semi-automáticas para identificar las páginas con spam mediante el examen de las características de contenido, patrones de navegación de usuario y estructura de hipervínculos.
    • La eliminación de contenidos duplicados, con el objetivo de presentar resultados de búsqueda más compactos y ahorrar el tiempo de los usuarios al navegar por los resultados. La detección de duplicados también ayuda al proceso de eliminación de páginas de baja calidad.

Sistema de procesamiento de consultas

El sistema en línea de cara a los usuarios de un motor de búsqueda contiene típicamente los siguientes componentes:

  1. El procesamiento de consulta: este paso clasifica una consulta y la reescribe, para lograr un mejor emparejamiento con resultados relevantes.
  2. La recuperación de documentos: busca en el índice invertido, y recopila los resultados relevantes.
  3. Ranking de resultados: considerando el gran número de resultados relevantes que pueden emparejarse con la búsqueda, este paso filtra los resultados de baja calidad y ubica en los primeros lugares los resultados con mayor relevancia y autoridad de dominio.
  4. Generador de fragmentos (snippets): este paso proporciona una descripción de cada URL que es mostrada en la SERP.
  5. Agregación y despliegue de resultados: a los resultados de la búsqueda y ranking orgánico se agregan los listados de pago y otros elementos y se les organiza en la SERP.

A continuación presentamos el diagrama funcional de un sistema de búsqueda y ranking típico, y revisamos sus componentes principales:             Sistema3

  • Procesador de consultas: clasifica una consulta y la reescribe si es necesario, con el objetivo de hacerla coincidir estrechamente la intención de la persona que busca.
    • La clasificación se basa principalmente en el idioma y ubicación del usuario, y en evaluar si implica información sensible al tiempo o relacionada con entidades particulares (por ejemplo personas, organizaciones, películas, o productos comerciales). La clasificación de la búsqueda permite al motor priorizar ciertos tipos de resultados en el ranking final, y también da una indicación acerca de si es necesario incluir resultados de alta relevancia en ciertas verticales.
    • Las operaciones típicas de adecuación o reescritura de  búsquedas incluye: la eliminación de palabras de parada (stopwords), el case folding (unificación a letras minúsculas por ejemplo) y la corrección ortográfica.
  • Búsqueda y ranking de documentos: después del procesamiento inicial de consulta, el sistema de búsqueda accede al índice siguiendo la semántica de la consulta.
    • Por defecto, los términos de la consulta se consideran conjuntivos, lo que quiere decir que el emparejamiento se hará únicamente con documentos que contengan todos los términos de la consulta. Existe también el modo disyuntivo, donde un documento es considerado como resultado si contiene solo un término de la búsqueda. Aun cuando los motores de búsqueda generalmente permiten configurar búsquedas combinando los modos conjuntivo y disyuntivo, lo más común es que las consultas se hagan en modo conjuntivo, debido a su simplicidad.
    • Dado que el índice se distribuye en distintos servidores (clusters) y que pueden utilizar partición basada en documentos (los documentos se registran por URL´s únicas) o basada en términos (los documentos se registran por palabras o términos únicos), cada uno de los servidores involucrados devuelve un conjunto de documentos en repuesta total o parcial a la búsqueda.
    • Los documentos recopilados desde el índice por el algoritmo buscador son entregados al sistema de ranking, el cual juega el papel más visible y crítico en un motor de búsqueda, considerando que la gran mayoría de los usuarios sólo ven los primeros resultados de búsqueda. La clasificación o ranking de resultados puede llevarse a cabo de una manera centralizada o jerárquicamente (donde cada subsistema selecciona sus mejores resultados preliminares y los pasa a una siguiente ronda de clasificación). Las calificaciones de relevancia de los documentos se calculan mediante el análisis de texto y adicionalmente por el análisis de otras características de autoridad, conocidas como señales de ranking. Las señales de ranking pueden ser relacionadas o no con la búsqueda particular, estas últimas se conocen como señales de ranking del sitio.

Implicaciones para el SEO

Para concluir les voy a resumir cuales son las implicaciones para el SEO que se derivan de este análisis detallado y quizás un poco complejo de cómo funcionan los sistemas de búsqueda en la Web.

  • Relacionadas con el sistema de rastreo: para asegurarnos que la actualización de rastreo de nuestro sitio web sea eficiente y se haga siempre a tiempo, debemos asegurarnos que:
    • Nuestras páginas deben ser de rápida carga.
    • Nuestro servidor web sea estable, asegurando la respuestas al sistema de rastreo cada vez que sea requerido.
    • El archivo robots.txt deb estar adecuadamente configurado.
  • Relacionadas con el sistema de indexación: para asegurarnos que todo el contenido de nuestro sitio sea adecuadamente indexado y que genere las señales de ranking apropiadas a a la calidad de su contenido debemos asegurarnos que:
    • La estructura de código de todas las páginas debe ser la adecuada, de acuerdo a las mejores prácticas del SEO OnPage: donde lo mas importante es el uso adecuado de las meta-etiquetas (principalmente títulos y descripción) y el uso racional de las palabras clave relativas a nuestra área de contenido.
    • Nuestras páginas deben indicar claramente a los buscadores el lenguaje y país al cual está dirigido el contenido de cada página.
    • Nunca debemos implementar estrategias de link building donde el resultado sean enlaces a nuestra páginas desde sitios de SPAM.
    • Debemos cuidarnos muchisimo de no publicar contenidos duplicados, y utilizar etiquetas “canonical” cuando tenemos descripciones similares de producto en nuestras páginas, que puedan ser intepretadas como contenido duplicado dentro de un mismo sitio Web.
  • Relacionadas con el sistema de procesamiento de consultas: para apoyar una mejor experiencia de usuario se recomienda utilizar fragmentos enriquecidos (rich snippets)   para desplegar la información de nuestras páginas en la página de resultados de búsqueda de una forma que facilite su visualización y estimule al usuario a visitarla. También se especula que el uso de estos rich snippets se constituye como una señal de ranking.

Bueno hasta aquí llegó la 2da. Parte del artículo de Juan Barham. Ya veremos cuando nos vuelve a deleitar con otro de sus grandes artículos; pero si te voy a decir algo aquí entre tu y yo, conociéndolo como lo conozco, él mismo hará el intento de superarse así mismo.

         APROBADO

By | 2017-02-21T06:06:56+00:00 18 noviembre , 2015|Marketing, Mi invitado de honor de la Semana|