260 likes | 419 Views
Moteurs de Recherche. Vincent VANDENBUSSCHE DEA – SIR / GR BD Mars 2002. Plan. Introduction Fonctionnement Crawling Sélection Rafraîchissement Stockage Stockage distribué Indexage Index de texte Classement PageRank Conclusion. Introduction – Défis. Taille du Web
E N D
Moteurs de Recherche Vincent VANDENBUSSCHE DEA – SIR / GR BD Mars 2002
Plan • Introduction • 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 • 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
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 • Uniquement à partir des pages déjà téléchargées • 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 : • À l’instant t : • En moyenne : • 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é • 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 • Uniforme • 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 • 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