Your SlideShare is downloading. ×
0
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Crawling the Web
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Crawling the Web

1,128

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,128
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
33
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Crawling Curso: Recuperación de Información -- ChaTo 1
  • 2. The Problem Web days/weeks/months Search engine User 2
  • 3. Tipos de crawler 3
  • 4. Primeros Crawlers RBSE Spider – Web de 100.000 páginas Crawler del Internet Archive WebCrawler – Muy exitoso en su época 4
  • 5. Segunda Generación Mercator, Sphinx Lycos, Excite, Google – Paralelos Crawlers distribuídos – Y descentralizados 5
  • 6. Taxonomía Crawlers 6
  • 7. Arquitectura 7
  • 8. Arquitectura General Web Schedule Download Texto URLs 8
  • 9. Arquitectura Mercator 1 sacar url, 2 fetch, 3 RewindInputStream, 4: dupes, 5: parsear, 6: urls, 7: dupes url, 8: add 9
  • 10. Arquitectura Alternativa 10
  • 11. Scheduling 11
  • 12. Scheduling en general Varios objetivos simultáneos – Priorizar mejores páginas – Utilizar bien la red – Mantener la colección fresca – No sobrecargar servidores 12
  • 13. Scheduling en dos fases 13
  • 14. Scheduling de largo plazo Cómo medir la importancia – Driving Query (Agente Personal) – Backlink count – Pagerank – URL Dominio ● Profundidad aparente de subdirectorio ● 14
  • 15. Uso de red 15
  • 16. Scheduling de corto plazo Sean P(i) tamaños de página B ancho de banda disponible B(i) ancho de banda usado para sitios – B(i) = P(i) / T* T* tiempo óptimo – T* = suma(P(i)) / B 16
  • 17. Red – Escenario óp timo 17
  • 18. El óp timo no es posible Debemos evitar sobrecargar sitios – Tiempo de espera w aprox. 30seg. En general B(i) << B – Alta variabilidad de B(i) Alta tasa de fallas (20-30%) Ocurren ineficiencias, el tiempo óptimo T* no es logrado 18
  • 19. Red – Escenario realista 19
  • 20. Red – Soluciones extremas 20
  • 21. Crawling en la práctica 21
  • 22. Web Oculta O web profunda – Bases de datos – Un porcentaje alto de lo indexable – Requieren interacción con formularios Software – Agente específico – Base de datos con palabras del dominio 22
  • 23. Problemas Servidores Uso de ancho de banda Control de acceso al servidor – /robots.txt Control de acceso a los recursos – Meta name=robots Se puede identificar un crawler 23
  • 24. Problemas Crawler (1) Red – Costo del ancho de banda – Variable QoS – Tiempos de espera, la latencia arruina la política de corto plazo – Connect exitoso, write no exitoso (firewall) DNS es cuello de botella – Crash de DNS locales – Fallas temporales DNS, en sitios chicos – Records malos (bad.net misma IP que good.net, luego uno indexa y en los resultados muestra bad.net) 24
  • 25. Problemas Crawler (2) Implementación de HTTP – No cumplen encabezado accept – Errores de rango cuando se pide un fragmento e.g.: bytes 0-100k de un archivo de 20k ● – Respuesta sin encabezados – 'Found' cuando quiere decir 'Error' Redirect a página de error ● – Fechas Particularmente al pedir if-modified-since ● 25
  • 26. Problemas Crawler (3) Codificación HTML – Elementos o atributos muy largos – Uso de comillas simples y dobles mezcladas – Tags vacíos, no vacíos, balanceados, no balanceados URLs – Sessionids – Componentes repetidos Contenido – Muchos blogs y forums – Mucho contenido duplicado 26
  • 27. Scheduling de largo plazo resultados 27
  • 28. Scheduling de largo plazo resultados 28
  • 29. Scheduling de largo plazo resultados 29
  • 30. Frescura de la copia local y cooperación d el servidor 30
  • 31. Normal operation: polling request Search Web Engine Server response headers content 31
  • 32. Frescura y Edad Frescura, F(página) – 0 si la copia es DISTINTA del original – 1 si la copia es IGUAL Edad, E(página) – 0 si la copia es igual al original – x si han pasado x segundos desde que el original cambió 32
  • 33. Frescura y Edad Sync Update Frescura Tiempo Edad Tiempo 33
  • 34. Interrupt­based operation notify request Search Web Engine Server response 34
  • 35. Cooperation issues Objective: keep collection fresh Problems – Spamming: can't trust the web servers Can't rely on quality assertions about pages. ● – Privacy: can't trust the search engines Can't give them full access to everything. ● Technologies – Compression, Differences of content, Fingerprints – HTTP extensions, Web Services 35
  • 36. Cooperation schemes (1 of  2) Src Serve meta­data/ Web h Svr Notify changes Eng Src Serve differences/ Web h Svr Send differences Eng Src Web Serve if­modified/ h Svr Send pages Eng Src Web Pipelining server/ h Svr Send batches Eng 36
  • 37. Cooperation schemes (2 of  2) Web service waiting Web Search for crawlers: Server Engine FILTERING INTERFACE sync Small program running  Web Search at the server: Server Engine REMOTE AGENT sync 37
  • 38. Cost­benefit (polling) Network Processing Benefit Serve meta­data Normal Serve  Normal differences Serve only Normal if­modified Serve batches Normal of pages Filtering  High 38 interface
  • 39. Cost­benefit (interrupt) Network Processing Benefit Send meta­data Normal Send differences Normal Send changed  Normal pages Send batch  Normal update Remote High 39 agent
  • 40. Will websites cooperate ? Large websites – Will cooperate is there is a benefit for them – Web service for crawlers and e.g. e-commerce brokers Websites that are customers of a search engine – Websites that pay to be indexed more often and provide co-branded searches General websites – We can use to some extent the HTTP features such as pipelining or other future extensions 40
  • 41. Conclusiones Varios problemas relacionados con la naturaleza de la Web: – Enorme – Calidad variable – Co-existencia de distintas implementaciones Problemas aplicables en otros contextos – Sincronizar una copia local – Descubrir elementos importantes basándose en evidencia insuficiente 41

×