Vincent VANDENBUSSCHE DEA – SIR / GR BD Mars 2002 Moteurs de Recherche Vincent VANDENBUSSCHE DEA – SIR / GR BD Mars 2002
Plan Introduction Crawling Stockage Indexage Classement Conclusion Fonctionnement Crawling Sélection Rafraîchissement Stockage Stockage distribué Indexage Index de texte Classement PageRank Conclusion
Introduction – Défis Taille du Web Plusieurs milliards de pages Croissance exponentielle Plusieurs dizaine de terabytes
Introduction – Défis Rafraîchissement Enchevêtrement de liens 40 % des pages changent chaque jour La demi-vie des pages est de 10 jours Enchevêtrement de liens nœud de papillon .com 22 % Pages accessibles depuis le cœur et mais ne donnant pas accès au coeur 22 % Pages donnant accès au cœur mais pas accessible depuis le coeur Cœur : 28 % Pages accessibles depuis le cœur et donnant accès au coeur
Introduction – Défis Moteurs de recherche Google : www.google.com WiseNut : www.wisenet.com AllTheWeb : www.alltheweb.com Lycos : www.lycos.com Altavista : www.altavista.com Northern Light : www.northernlight.com HotBot : www.hotbot.com MSN Search : search.msn.com Teoma : www.teoma.com
Introduction – Fonctionnement Entrepôt de pages WWW Client Crawler(s) Module Indexage Module Analyse Module Interrogation Module Classement Index services Index texte Index structure Contrôleur Crawl
Crawling – Description Algorithme : S0 : ensemble initial d’URLs à récupérer R S0 Tant que R : Récupérer l’URL Télécharger la page correspondante Extraire les URLs de cette page et les ajouter à R Challenges : Quelles pages le crawler doit-il télécharger ? Comment le crawler doit-il tenir compte du rafraîchissement des pages ?
Crawling – Sélection Métrique d’importance Basé sur l’intérêt : IS(P) Définir un intérêt : requête d’intérêt Q Quantifier la similarité textuelle entre P et Q Basé sur la popularité : IB(P) Décompte des citations Basé sur la localisation : IL(P) Sur le domaine : .com plus important Sur la syntaxe : nombre de slashs Métrique d’intérêt : Fréquence des mots sur le Web (article « Le »)
Crawling – Sélection Stratégies de crawl Crawl & Stop K : nombre de pages à télécharger IK : Kème importance sur la totalité des pages du Web M : nbre de pages téléchargées dont l’importance > IK Performance crawler : (M x 100)/K Crawl & Stop avec seuil G : importance seuil H : nombre de pages du Web dont l’importance > G N : nbre de pages téléchargées dont l’importance > G Performance crawler : Si K>H : (N x 100)/K Si K<H : (N x 100)/H
Crawling – Sélection Métriques d’ordonnancement Métrique a priori Métrique d’importance page Métrique d’ordonnancement URL Métrique de localisation IL(P) Métrique de popularité IB’(P) approchée Uniquement à partir des pages déjà téléchargées Métrique d’intérêt IS’(A(P)) approchée Basée sur le texte de l’ancre pointant vers P Combinaison de ces métriques IC(P) = k1 x IL(P) + k2 x IB’(P) + k3 x IS’(A(P))
Crawling – Sélection 225 000 pages Métrique d’ordonnancement : IB’(P) Stratégies : Crawl & Stop avec seuil pour G = 100 ( H=1400)
Crawling – Rafraîchissement Métrique de rafraîchissement Fraîcheur page P : À l’instant t : En moyenne : Âge page P : Fraîcheur et âge collection
Crawling – Rafraîchissement Stratégie de rafraîchissement Uniforme : fréquence f Proportionnelle : i/fi constant Ressource limitée e1 1/2 x 1/2 = 1/4 e2 1/2 x 1/18 = 1/32 Résultat Si l’évolution des pages suit une loi de Poisson, la stratégie uniforme est toujours meilleure que la stratégie proportionnelle quelque soit le nbre de page, leurs fréquences d’évolution et leurs fréquences de rafraîchissement au sens de la métrique de fraîcheur ou d’âge.
Crawling – Rafraîchissement Optimisation du rafraîchissement Nbre de pages : 5 avec fréquence d’évolution respective 1, 2,…, 5. Capacité crawler : 5 pages Evolution selon loi de Poisson
Stockage – Défis Extensibilité Modes d’accès Rafraîchissement Distribution de l’entrepôt de pages Modes d’accès Random : module d’interrogation Streaming : module d’indexage et d’analyse Rafraîchissement Massif Fréquent Effacement pages obsolètes
Stockage – Distribution Politique de distribution des pages Uniforme Hashage Méthode d’organisation des pages sur un site Hashage par intervalle Méthode de rafraîchissement Mode batch ou mode rigide Crawl complet ou partiel En place ou avec image
Indexage – Description Types d’index : Index de structure (ou de liens) Stocker les informations de voisinage Index de contenu (ou de texte) Index inversé Index de services Index de site Partitionnement d’index : Locale Globale
Indexage – Index inversé Définition Mot d’indexage Localisation : URL + poids Index inversé : liste des localisations par mot d’indexage Lexique : ensemble des mots d’indexage Challenge Taille Rafraîchissement Format de stockage (compression)
Indexage – Distribution Indexeurs Serveurs de requêtes Distributeurs Etape intermédiaire Index inversé Etape 2 Pages Web Etape 1 Statisticiens
Classement – Challenge Présenter les résultats d’une requête de façon efficace Taille importante du Web Pages Web pas suffisamment auto-descriptive Utiliser la structure des liens du Web PageRank Algorithme développé par Page & Brine en 1998 à la base de Google Étendre la notion de citation en prenant en compte l’importance du citant.
Classement – PageRank Version théorique N(i) : nbre de liens sortant de la page i B(i) : nbre de pages citant i Définition récursive du PageRank r(i) de i : Interprétation de r comme vecteur propre Méthode de la puissance itérée r2=0.286 r1=0.286 r3=0.143 r5=0.143 r4=0.143
Classement – PageRank Version pratique Le Web n’est pas un graphe fortement connexe : Existence de voies sans issue Existence de points d’arrêts Enlever les nœuds sans liens de sortie Donner la possibilité de sortir des voies sans issue d traduit l’aptitude à l’ennui du surfeur lorsqu’il est bloqué dans une voie sans issue. A partir d’un moment il va décider de repartir d’un autre point. 2 3 1 5 4 2 3 1 4
Conclusion 2 contraintes fortes Heuristiques de crawling Taille Rafraîchissement Heuristiques de crawling Stockage distribué Indexage parallélisé Classement basé sur les liens (PageRank) Ce qu’il reste à faire Images, vidéos Multiplication des contenus dynamiques
Bibliographie [1] A. Arasu, J. Cho, H. Garcia-Molina, and S. Raghavan. Searching the web. ACM Transactions on Internet Technologies, 1(1), June 2001 [2] The Search Engine Showdown www.searchengineshowdown.com [3] B. Murray, A. Moore. Sizing the Internet, White Paper, July 2000 disponible sur www.cyveillance.com