Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email,...

17
Crawling Saverio Caminiti

Transcript of Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email,...

Page 1: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Crawling

Saverio Caminiti

Page 2: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Il grafo di Internet

Page 3: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Sul grafo di Internet

Pacchetti o stream Email, News, Web, Chat IRC, P2P,

VoIP, Videoconferenze, ecc..

Page 4: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Grafo del Web

Page 5: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Sul grafo del web

URL = Uniform Resource Locator Pagine HTML contenenti:

Immagini, suoni, video VRML, Applet, shockwave altri oggetti embedded

Link verso: Altre pagine HTML File in qualsiasi formato (http e ftp)

Page 6: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Spazio e tempo

(8.8 miliardi di pagine) x (10Kb/pagina) = 88Tb

compressione 3:1 => 30Tb 300 Gb / disco => 100 dischi! errori casuali 1 bit/Gb x mese =>

quotidianamente!

Page 7: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Motore di ricercaScaricare

Pulire ecomprimereAssegnare

Ogni motore di ricerca decide come suddividere le attività tra i vari moduli

Page 8: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Crawling

Crawler (robot, spider, ecc…) è eseguito su una sola macchina (non è un virus).

Scarica una pagina per volta con semplici richieste HTTP (e risoluzione di DNS)

Google fino a 3500 pagine al secondo con più crawler paralleli

Page 9: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Esempio di richiesta http

> telnet www.example.com 80

GET /path/file.html HTTP/1.1

Host: www.example.com

200 OK

Content-Type: text/html

Content-Length: 200

<HTML><HEAD> <TITLE> New Document </TITLE>

...

Page 10: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Netiquette

Leggere il robot.txt per il Robot Exclusion Evitare di usare risorse significative di un

singolo server: Tempo minimo tra due richieste Distribuire più server per crawler ed evitare che

più crawler “attacchino” lo stesso server In caso di piccolo crawler sfruttare tempi morti

per l’analisi delle pagine scaricate

Page 11: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Risoluzione dei DNS costosa

Procede per chiamate successive

www.theory.alg.di.uniroma1.it

151.100.17.246

Mantenere delle tabelle per non ripetere le chiamate

Page 12: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

URL Server

Alcuni degli aspetti già visti (robot.txt, DNS chace, ecc…)

Politica per la visita del grafo: BFS, DFS Priority (PageRank) ecc…

Page 13: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

BFS

Buona strategia: le pagine linkate da quelle iniziali (accreditate) vengono visitate prima.

Test dimostrano che è competitiva rispetto ad una visita con priorità basata su PageRank parziale (buona ma costosa).

Page 14: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

BFS e Spam

Passo 1: una sola pagina Passo 2: circa 10 pagine (il grado uscente medio di una

pagina HTML è 10). Passo 3: circa 100 pagine. Di cui 1 di spam = 1%.

Una pagina di spam può generare anche 1000 link a pagine virtuali di spam.

Passo 4: circa 2000 pagine di cui 1000 di spam = 50%. Passo 5: circa 1.01ml pagine di cui 1ml di spam = 99%.

Page 15: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Aggiornamento

Gestire le pagine già visitate (data di modifica con http, MD5, ecc…) e la frequenza di aggiornamento (Zipf)

Page 16: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Mirror

Identificare e gestire i siti mirror per evitare di avere nell’indice tante pagine identiche

Fino al 30% delle pagine Internet sono mirror di altre pagine!

Page 17: Crawling Saverio Caminiti. Il grafo di Internet Sul grafo di Internet Pacchetti o stream Email, News, Web, Chat IRC, P2P, VoIP, Videoconferenze, ecc..

Caratteristiche necessarie:

ROLLBACKcrash inevitabili richiedono un salvataggio continuo dei dati e la possibilità di ripartire dal momento del malfunzionamento,

RICONFIGURAZIONE A CALDOil carico di CPU e banda deve poter essere modificato nel corso del crawl, così come altri parametri,

TESTcostruite da subito una infrastruttura per i test, che non richieda l’uso di banda “esterna”.