El rastreo web distribuido es una técnica de computación distribuida mediante la cual los motores de búsqueda de Internet emplean múltiples ordenadores para indexar la web . Estos sistemas permiten a los usuarios ofrecer voluntariamente sus recursos informáticos y de ancho de banda para el rastreo de páginas web. Al distribuir la carga de estas tareas entre varios ordenadores, se evitan los costes que de otro modo se destinarían al mantenimiento de grandes clústeres de computación.
Tipos
Cho [ 1 ] y García-Molina estudiaron dos tipos de políticas:
Asignación dinámica
Con este tipo de política, un servidor central asigna nuevas URL a diferentes rastreadores de forma dinámica. Esto permite al servidor central, por ejemplo, equilibrar dinámicamente la carga de cada rastreador. [ 2 ]
Con la asignación dinámica, los sistemas también pueden agregar o eliminar procesos de descarga. El servidor central puede convertirse en el cuello de botella, por lo que la mayor parte de la carga de trabajo debe transferirse a los procesos de rastreo distribuidos para rastreos de gran tamaño.
Shkapenyuk y Suel han descrito dos configuraciones de arquitecturas de rastreo con asignaciones dinámicas: [ 3 ]
- Una configuración de rastreador pequeño, en la que hay un resolvedor DNS central y colas centrales por sitio web, y descargadores distribuidos.
- Una configuración de rastreador de gran tamaño, en la que el resolvedor DNS y las colas también están distribuidos.
Asignación estática
Con este tipo de política, existe una regla fija establecida desde el inicio del rastreo que define cómo asignar nuevas URL a los rastreadores.
Para la asignación estática, se puede utilizar una función hash para transformar las URL (o, mejor aún, los nombres completos de los sitios web) en un número que corresponda al índice del proceso de rastreo correspondiente. [ 4 ] Dado que existen enlaces externos que van desde un sitio web asignado a un proceso de rastreo a un sitio web asignado a un proceso de rastreo diferente, debe producirse algún intercambio de URL.
Para reducir la sobrecarga debida al intercambio de URL entre los procesos de rastreo, el intercambio debe realizarse en lotes, varias URL a la vez, y las URL más citadas en la colección deben ser conocidas por todos los procesos de rastreo antes del rastreo (por ejemplo, utilizando datos de un rastreo anterior). [ 1 ]
Implementaciones
Desde 2003, la mayoría de los motores de búsqueda comerciales modernos utilizan esta técnica. Google y Yahoo emplean miles de ordenadores individuales para rastrear la web.
Los proyectos más recientes intentan utilizar una forma de colaboración menos estructurada y más ad hoc , reclutando voluntarios que se unan al esfuerzo utilizando, en muchos casos, sus ordenadores personales o domésticos. LookSmart es el motor de búsqueda más grande que utiliza esta técnica, la cual impulsa su proyecto de rastreo web distribuido Grub . Wikia (ahora conocida como Fandom ) adquirió Grub de LookSmart en 2007. [ 5 ]
Esta solución utiliza ordenadores conectados a Internet para rastrear direcciones web en segundo plano. Tras descargar las páginas web rastreadas, se comprimen y se envían, junto con un indicador de estado (por ejemplo, modificado, nuevo, caído, redirigido), a los potentes servidores centrales. Estos servidores, que gestionan una amplia base de datos, envían nuevas URL a los clientes para que las prueben.
Desventajas
Según las preguntas frecuentes sobre Nutch , un sitio web de motor de búsqueda de código abierto, el ahorro de ancho de banda mediante el rastreo web distribuido no es significativo, ya que "un motor de búsqueda exitoso requiere más ancho de banda para cargar las páginas de resultados de la consulta que lo que su rastreador necesita para descargar las páginas...". [ 6 ]
Véase también
- computación distribuida
- Rastreador web
- YaCy - Motor de búsqueda web P2P con rastreo distribuido
- Seeks - Búsqueda web P2P de código abierto
Fuentes
- ^ a b Cho, Junghoo; Garcia-Molina, Hector (2002). "Rastreadores paralelos" . Actas de la 11.ª conferencia internacional sobre la World Wide Web . ACM. págs. 124–135 . doi : 10.1145/511446.511464 . ISBN 1-58113-449-5. Consultado el 13 de octubre de 2015 .
- ^ Guerriero, A.; Ragni, F.; Martines, C. (2010). "Un método de asignación dinámica de URL para rastreadores web paralelos". 2010 IEEE International Conference on Computational Intelligence for Measurement Systems and Applications . pp. 119–123 . doi : 10.1109/CIMSA.2010.5611764 . ISBN 978-1-4244-7228-4. S2CID 14817039 .
- ^ Shkapenyuk, Vladislav; Suel, Torsten (2002). "Diseño e implementación de un rastreador web distribuido de alto rendimiento" . Ingeniería de datos, 2002. Actas. 18.ª Conferencia Internacional sobre . IEEE. págs. 357–368 . Recuperado el 13 de octubre de 2015 .
- ^ Wan, Yuan; Tong, Hengqing (2008). "Algoritmo de asignación de URL de rastreadores en sistemas distribuidos basado en hash" . Conferencia Internacional IEEE de 2008 sobre Redes, Detección y Control . IEEE. págs. 1632–1635 . doi : 10.1109/icnsc.2008.4525482 . ISBN 978-1-4244-1685-1. S2CID 39188334 .
- ^ "Wikia adquiere el rastreador web distribuido Grub" . TechCrunch . 27 de julio de 2007. Consultado el 8 de octubre de 2022 .
- ^ "Nutch: preguntas frecuentes" . nutch.sourceforge.net . Consultado el 8 de octubre de 2022 .
Enlaces externos
- Motor de búsqueda distribuido Majestic-12
- UniCrawl: Una herramienta práctica distribuida geográficamente
- Rastreo web distribuido simplificado: sistema y arquitectura
- Aplicaciones de la computación distribuida
- algoritmos de búsqueda en Internet