12. Σταχυολόγηση Ιστού

Σχετικά έγγραφα
Information Retrieval

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ΑΣΚΗΣΗ. Συγκομιδή και δεικτοδότηση ιστοσελίδων

Information Retrieval

Βασίλης Πλαχούρας. Χρυσόστομος Καπέτης Μιχάλης Βαζιργιάννης. Οικονομικό Πανεπιστήμιο Αθηνών 3/11/2003

Vodafone Business Connect

Εργαλεία Ανάπτυξης Εφαρμογών Internet I

Εύρεση & ιαχείριση Πληροφορίας στον Παγκόσµιο Ιστό. Web characteristics. ιδάσκων ηµήτριος Κατσαρός, Ph.D.

Εύρεση & ιαχείριση Πληροφορίας στον Παγκόσµιο Ιστό

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet.

$./MirrorInitiator -n <MirrorServerAddress> -p <MirrorServerPort> \\ -s <ContentServerAddress1:ContentServerPort1:dirorfile1:delay1, \\

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

Διαδίκτυο: Ιστορία, Δομή, Υπηρεσίες

Εγγυημένη ποιότητα υπηρεσίας

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο

Μελέτη Πολιτικών Χρονοδροµολόγησης σε Κατανεµηµένα Συστήµατα Πλοηγητών. Όνοµα : Ελένη Τσιακκούρη

Διαχειριστικό σύστημα ονομάτων χώρου

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Μηχανές αναζήτησης

Πρωτόκολλα Διαδικτύου

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Εξοικείωση με τις εντολές ipconfig και ping

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Κατανεμημένα Συστήματα

Δίκτυα Υπολογιστών Επίπεδο εφαρμογής To Σύστημα Ονομασίας Τομέων DNS

ΒΑΣΙΚΕΣ ΥΠΗΡΕΣΙΕΣ ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ

Πανεπιστήµιο Πατρών Πολυτεχνική Σχολή Τµήµα Μηχανικών Η/Υ και Πληροφορικής

Ανάκτηση Πληροφορίας

Πώς λειτουργεί το Google?

Ethernet Ethernet ΙΕΕΕ CSMA/CD

Εισαγωγή στις ΤΠΕ ΙΙ Γιάννης Βρέλλης ΠΤΔΕ-Πανεπιστήμιο Ιωαννίνων. World Wide Web. Παγκόσμιος Ιστός

ΕΠΛ 002: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Μηχανές αναζήτησης

Συσκευές Τηλεπικοινωνιών και Δικτύωσης. Επικοινωνίες Δεδομένων Μάθημα 9 ο

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα υπολογιστών. (και το Διαδίκτυο)

Βασίλειος Κοντογιάννης ΠΕ19

Συστήματα Ανάκτησης Πληροφοριών ΗΥ-463

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Μηχανές αναζήτησης

Κινητά και Διάχυτα Συστήματα. Ενότητα # 6: Εφαρμογές DHT Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Στρατηγική ανάπτυξη δικτυακού κόμβου

DNS. Όλες οι άλλες υπηρεσίες του Διαδικτύου, (WWW και ) χρησιμοποιούν το DNS

Τεχνολογία Πολυμέσων. Ενότητα # 21: Εγγυημένη ποιότητα υπηρεσίας Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Μια καλή επιλογή θα ήταν (χωρίζοντας τις λέξεις με παύλα -) ή

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΕΡΓΑΣΙΩΝ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟ ΛΟΓΙΣΜΙΚΟ EXTEND. 1 ο εργαστήριο Διοίκησης και Παραγωγής Έργων

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

7.9 ροµολόγηση. Ερωτήσεις

α. Προσωπικά δεδομένα που δύνανται να ζητηθούν από την σελίδα.

Βασικές Έννοιες Web Εφαρμογών

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Διαχείριση Πληροφοριών στο Διαδίκτυο. Εργαστήριο 1

Σενάριο Χρήσης myschool

Ανδρέας Παπαζώης. Τμ. Διοίκησης Επιχειρήσεων

Επίπεδο δικτύου IP Forwading κτλ

Query-Driven Indexing for Scalable Peer-to-Peer Text Retrieval. Gleb Skobeltsyn, Toan Luu, Ivana Podnar Zarko, Martin Rajman, Karl Aberer

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών.

Ανάπτυξη Ψηφιακού Μητρώου για τις Δικτυακές Υποδομές της χώρας με χρήση τεχνολογιών ArcGIS

ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΙΣΤΟΤΟΠΩΝ

Όχι, γιατί αν κάθε browser ζητά διαφορετικό αντικείμενο κάθε φορά τότε όχι μόνο δεν βελτιώνει αλλα χειροτερεύει τον χρόνο προσπέλασης

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Τεχνολογίες και Εφαρμογές Διαδικτύου

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Σκοπιµότητα των firewalls

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων

Εγκατάσταση Joomla! Στο ΠΣΔ. 1. Μεταβαίνουμε στο και συνδεόμαστε στο λογαριασμό μας. 2. Μεταβαίνουμε στο «MySch»

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

-Δε γίνεται καμία επεξεργασία κανενός είδους προσωπικών δεδομένων για χρήστες από Ελλάδα-

Φύλλο Κατανόησης 1.7

2. Αλγόριθμοι, δομές δεδομένων και πολυπλοκότητα

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο

Εργαστήριο Προγραμματισμού και τεχνολογίας Ευφυών συστημάτων (intelligence)

Περιεχόμενα. Δημιουργία σύνδεσης ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ Γνωριμία με μια ιστοσελίδα:... 38

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ

ΠΟΛΙΤΙΚΗ ΑΠΟΡΡΗΤΟΥ ΑΡΠΕΔΩΝ ΙΚΕ

Πρόσκληση 10: Προηγμένες Τηλεματικές Υπηρεσίες Τ.Ε.Ι. Ηπείρου Δίκτυο Τ.Ε.Ι. Ηπείρου ΙΙ

ΚΤΙΡΙΑΚΕΣ ΥΠΟΔΟΜΕΣ Α.Ε. Οδηγίες Λειτουργίας Πληροφοριακού Συστήματος ηλεκτρονικής διαχείρισης Αιτημάτων. v1.3 (23/11/2014)

Περιεχόμενα. Visio / White paper 1

6 Εικόνα εξώφυλλου: Λωρίδα του Mobius (Σύνθεση). Νικόλαος Μπαλκίζας 10

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

Κωδικός: ΠΠ Έκδοση: 1 Ημερομηνία: 28/05/2019 Σελίδα 1 από 7 ΠΟΛΙΤIΚΗ ΑΠΟΡΡΗΤΟΥ ΜΙΣΣΙΡΙΑΝ Α.Ε.

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω:

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

ΕΡΓΑΣΙΑ. (στο μάθημα: Τεχνολογίες Εφαρμογών Διαδικτύου του Η εξαμήνου σπουδών του Τμήματος Πληροφορικής & Τηλ/νιών)

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

24% 27% Α2 % ατόμων (χρηστών) που χρησιμοποιούν τακτικά το Διαδίκτυο

Φόρμα Επικοινωνίας ΠΡΟΟΙΜΙΟ

Transcript:

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 12. Σταχυολόγηση Ιστού Ανάκτηση Πληροφοριών Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων

Βασική Λειτουργία Σταχυολόγησης (Crawling) Ξεκινούμε με ένα σύνολο γνωστών seed (φύτρες) URLs Κατεβάζουμε (fetch) και αναλύουμε το περιεχόμενό τους (parse) Εξάγουμε τα URLs στα οποία δείχνουν Τοποθετούμε τα εξαγόμενα URLs σε μια ουρά Κατεβάζουμε κάθε URL που βρίσκεται στην ουρά και επαναλαμβάνουμε Κεφάλαιο 20.2 May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 2

Εικόνα Σταχυολόγησης Κεφάλαιο 20.2 URLs crawled and parsed Unseen Web Seed pages URLs frontier Web May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 3

Επιπλοκές Κεφάλαιο 20.1.1 Η σταχυολόγηση Ιστού (Web crawling) δεν είναι εφικτή με μία μηχανή Όλα τα παραπάνω βήματα πρέπει να γίνουν με κατανεμημένο τρόπο Κακόβουλες ιστοσελίδες Spam pages Spider traps συμπεριλαμβανομένων δυναμικά δημιουργημένες Ακόμη και μη-κακόβουλες σελίδες εμφανίζουν προκλήσεις Η καθυστέρηση (latency) και το εύρος ζώνης (bandwidth) σε απομακρυσμένους servers ποικίλουν Κανόνες των Webmasters Πόσο βαθιά πρέπει να ψάξεις στην ιεραρχία URL ενός site? Site mirrors και διπλότυπες σελίδες (duplicate pages) Ευγένεια (Politeness) να μην «χτυπούν» ένα server πολύ συχνά May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 4

Τι Πρέπει να Κάνει οποιοσδήποτε Σταχυολογητής Να είναι Ευγενικός: να σέβεται τόσο ρητά όσο και υπονοούμενα θέματα που αφορούν την ευγένεια Σταχυολόγηση μόνο των σελίδων που επιτρέπεται Κεφάλαιο 20.1.1 Σεβασμός του robots.txt (περισσότερα σε λίγο) Να είναι Εύρωστος: να μην επηρεάζεται από παγίδες (spider traps) και άλλη κακόβουλη συμπεριφορά από web servers May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 5

Τι Θα Έπρεπε να Κάνει Κεφάλαιο 20.1.1 οποιοσδήποτε Σταχυολογητής Να μπορεί να λειτουργεί κατανεμημένα: να έχει σχεδιαστεί ώστε να τρέχει σε πολλαπλές κατανεμημένες μηχανές Να είναι κλιμακώσιμος: να έχει σχεδιαστεί ώστε να αυξάνεται ο ρυθμός σταχυολόγησης (crawl rate) όταν προστίθενται περισσότερες μηχανές Απόδοση: να επιτρέπει/υποστηρίζει την πλήρη χρήση των διαθέσιμων επεξεργαστικών και δικτυακών πόρων May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 6

Τι Θα Έπρεπε να Κάνει Κεφάλαιο 20.1.1 οποιοσδήποτε Σταχυολογητής Να συλλέγει τις σελίδες υψηλότερης ποιότητας πρώτες Να λειτουργεί διαρκώς: να φέρνει νέα αντίγραφα μιας σελίδας που είχει φέρει πιο πριν Επεκτασιμότητα: να προσαρμόζεται σε νέες μορφοποιήσεις, πρωτόκολλα May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 7

Κεφάλαιο 20.1.1 Ενημερωμένη Εικόνα Σταχυολόγησης URLs crawled and parsed Unseen Web Seed Pages URL frontier Crawling thread May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 8

Μέτωπο URL (URL frontier) Κεφάλαιο 20.2 Μπορεί να περιέχει πολλαπλές σελίδες από τον ίδιο host Πρέπει να αποφεύγεται το να τις φέρνει όλες ταυτόχρονα Πρέπει να προσπαθεί να έχουν δουλειά όλα τα crawling threads May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 9

Ρητή και Υπονοούμενη Ευγένεια Κεφάλαιο 20.2 Ρητή ευγένεια (Explicit politeness): οδηγίες από τους webmasters ως προς τα τμήματα του ιστότοπου που επιτρέπεται να σταχυολογηθούν robots.txt Υπονοούμενη ευγένεια (Implicit politeness): ακόμη και χωρίς κάποιες οδηγίες, αποφυγή πάρα πολλών αιτήσεων προς τον ίδιο ιστότοπο May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 10

Robots.txt Παράδειγμα Κεφάλαιο 20.2.1 Κανένα robot δεν επιτρέπεται να επισκεφθεί URL που ξεκινά με "/yoursite/temp/", εκτός από το robot που ονομάζεται searchengine": User-agent: * Disallow: /yoursite/temp/ User-agent: searchengine Disallow: May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 11

Robots.txt Κεφάλαιο 20.2.1 Πρωτόκολλο που περιορίζει την πρόσβαση σε ένα ιστότοπο για ρομπότ (spiders/ robots ), από το 1994 www.robotstxt.org/wc/norobots.html Ο ιστότοπος ανακοινώνει το τι (δεν) επιτρέπει να σταχυολογηθεί Για ένα server, δημιουργία αρχείου /robots.txt Αυτό το αρχείο καθορίζει περιορισμούς πρόσβασης May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 12

Βήματα Επεξεργασίας στη Σταχυολόγηση Κεφάλαιο 20.2.1 Επιλογή ενός URL από το μέτωπο Ποιο URL; Προσκομίζεται η ιστοσελίδα του URL Ανάλυση περιεχεμένου της σελίδας του URL Εξαγωγή υπερσυνδέσμων προς άλλες σελίδες (URLs) Έλεγχος εάν το περιεχόμενο URL το έχουμε ήδη Εάν όχι, προστίθεται στα ευρετήρια Για κάθε εξαχθέν URL Π.χ. Μόνο domain.edu, σέβεται το robots.txt, κτλ. Επιβεβαίωσε ότι περνάει ελέγχους φίλτρου URL Έλεγξε εάν βρίσκεται ήδη στο μέτωπο (απαλοιφή διπλότυπων URL) May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 13

Κεφάλαιο 20.2.1 Βασική Αρχιτεκτονική Σταχυολόγησης DNS Doc FP s robots filters URL set WWW Parse Fetch Content seen? URL filter Dup URL elim URL Frontier May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 14

DNS (Domain Name Server) Κεφάλαιο 20.2.2 Μια υπηρεσία αντιστοίχισης (lookup) στο internet οθέντος ενός URL, ανέκτησε την IP διεύθυνσή του Η υπηρεσία παρέχεται από ένα κατανεμημένο σύνολο servers άρα, η καθυστέρηση (lookup latencies) μπορεί να είναι υψηλή (ακόμη και δευτερόλεπτα) Συνήθεις υλοποιήσεις (OS implementations) της αντιστοίχισης DNS είναι blocking: μόνο μία αίτηση τη φορά Λύσεις DNS caching Batch DNS resolver συλλέγει αιτήσεις και τις αποστέλει μαζί May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 15

Ανάλυση: Κανονικοποίηση URL Κεφάλαιο 20.2.1 Όταν ένα έγγραφο που έχει προσκομισθεί αναλύεται, ορισμένα από τα εξαγόμενα links είναι σχετικά (relative) URLs Π.χ. http://en.wikipedia.org/wiki/main_page έχει ένα σχετικό link προς /wiki/wikipedia:general_disclaimer που είναι το ίδιο με το απόλυτο URL http://en.wikipedia.org/wiki/wikipedia:general_disclaimer Κατά τη διάρκεια της ανάλυσης (parsing), πρέπει να κανονικοποιηθούν (expand) τέτοια σχετικά URLs May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 16

Εντοπισμένο Περιεχόμενο (Content seen); Η ύπαρξη διπλότυπων είναι πολύ διαδεδομένη στον Παγκόσμιο Ιστό Κεφάλαιο 20.2.1 Εάν η ιστοσελίδα που μόλις προσκομίσθηκε, υπάρχει ήδη στο ευρετήριο, δεν την επεξεργαζόμαστε άλλο Ο έλεγχος ύπαρξης γίνεται με χρήση αποτυπωμάτων (document fingerprints) ή shingles (βλ. προηγούμενο μάθημα) May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 17

Φίλτρα και robots.txt Κεφάλαιο 20.2.1 Φίλτρα εκφράσεις (regular expressions) που καθορίζουν ποια URLs να σταχυολογηθούν ή όχι Αφού το αρχείο robots.txt προσκομισθεί από έναν ιστότοπο, δε χρειάζεται να το προσκομίζουμε συνεχώς Γιατί έτσι καταναλώνουμε εύρος ζώνης (bandwidth), και στέλνουμε πολλές αιτήσεις στο web server Προσωρινή αποθήκευση (Cache) αρχείων robots.txt May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 18

Απαλοιφή Διπλότυπων URL Κεφάλαιο 20.2.1 Για μία μη-συνεχή σταχυολόγηση (oneshot crawl), έλεγχος του αν ένα URL που έχει εξαχθεί και φιλτραριστεί έχει ήδη τοποθετηθεί στο μέτωπο Για συνεχή σταχυολόγηση δείτε τις λεπτομέρειες της υλοποίησης μετώπου (frontier implementation) May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 19

Κατανέμοντας το Σταχυολογητή Κεφάλαιο 20.2.1 Εκτέλεση πολλαπλών crawl threads, σε διαφορετικές διεργασίες πιθανά σε διαφορετικόύς κόμβους Γεωγραφικά κατανεμημένοι κόμβοι ιαμέριση (Partition) των hosts που θα σταχυολογηθούν σε κόμβους Η διαμέριση γίνεται με κατακερματισμό Πώς επικοινωνούν αυτοί οι κόμβοι και μοιράζονται URLs; May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 20

Επικοινωνία Μεταξύ Κόμβων Κεφάλαιο 20.2.1 Η έξοδος του URL filter σε κάθε κόμβο αποστέλλεται στο Dup URL Eliminator του κατάλληλου κόμβου DNS Doc FP s robots filters To other nodes URL set WWW Fetch Parse Content seen? URL filter Host splitter Dup URL elim URL Frontier From other nodes May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 21

Κεφάλαιο 20.2.3 Μέτωπο URL: Δύο Βασικοί Παράγοντες Ευγένεια (Politeness): αποφυγή επαναλαμβανόμενων αιτημάτων προσκόμισης προς ένα web server σε μικρό χρονικό διάστημα Φρεσκάδα (Freshness): συχνότερη σταχυολόγηση ορισμένων σελίδων Π.χ., σελίδων (όπως News sites) των οποίων το περιεχόμενο αλλάζει συχνά Αυτοί οι στόχοι μπορεί να είναι αντικρουόμενοι. (Π.χ., μια απλή ουρά προτεραιότητας αποτυγχάνει πολλά links από μία σελίδα δείχνουν στον ίδιο ιστότοπο, δημιουργώντας πάρα πολλές αιτήσεις πρόσβασης στον ιστότοπο) May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 22

Ευγένεια Προκλήσεις Κεφάλαιο 20.2.3 Ακόμη κι αν περιορίσουμε μόνο ένα thread να προσκομίζει από έναν ιστότοπο, αυτό μπορεί να κάνει επαναλαμβανόμενα αιτήματα Κοινή εμπειρική μέθοδος: Παρεμβάλουμε ένα κενό μεταξύ διαδοχικών αιτημάτων προσκόμισης, το οποίο είναι μία τάξη μεγέθους μεγαλύτερο από το χρόνο που απαιτήθηκε από την πιο πρόσφατη αίτηση προς τον ίδιο υπολογιστή (host) May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 23

Μέτωπο URL: Η Σχεδίαση του Mercator URLs Κεφάλαιο 20.2.3 Prioritizer K front queues Biased front queue selector Back queue router B back queues Single host on each Back queue selector Crawl thread requesting URL May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 24

Mercator Μέτωπο URL Κεφάλαιο 20.2.3 Τα URLs έρχονται από την κορυφή προς το μέτωπο Οι εμπρόσθιες ουρές (Front queues) καθορίζουν την προτεραιότητα Οι οπίσθιες ουρές (Back queues) επιβάλλουν την ευγένεια Κάθε ουρά (queue) είναι ουρά FIFO May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 25

Front queues Κεφάλαιο 20.2.3 Prioritizer 1 K Biased front queue selector Back queue router May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 26

Front queues Κεφάλαιο 20.2.3 Ο καθοριστής προτεραιοτήτων (Prioritizer) αναθέτει σε ένα URL μια προτεραιότητα, που είναι ένας ακέραιος μεταξύ 1 και K Το URL προσαρτάται στην αντίστοιχη εμπρόσθια ουρά Εμπειρικές μέθοδοι καθορισμού προτεραιότητας Με βάση τη συχνότητα αλλαγών (Refresh rate) της ιστοσελίδας στις προηγούμενες σταχυολογήσεις Application-specific (π.χ. crawl news sites more often ) May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 27

Μεροληπτικός Επιλογέας Εμπρόσθιας Ουράς (Biased front queue selector) Όταν μία back queue ζητά ένα URL (σε μια σειρά βημάτων που θα εξετάσουμε): επιλέγει μια front queue από την οποία παίρνει ένα URL Αυτή η επιλογή μπορεί να είναι με τη σειρά (round robin) με κάποια μεροληψία προς τις ουρές υψηλότερης προτεραιότητας ή με κάποιο πιο εκλεπτυσμένο τρόπο Μπορεί να είναι μια τυχαία διαδικασία Κεφάλαιο 20.2.3 May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 28

Back queues Κεφάλαιο 20.2.3 Biased front queue selector Back queue router 1 B Back queue selector Heap May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 29

Αμετάβλητα Χαρακτηριστικά για κάθε Back queue Κάθε back queue δε μένει κενή κατά την εξέλιξη της σταχυολόγησης Κάθε back queue περιέχει URLs από έναν μόνο υπολογιστή υπηρεσίας (host) Αντιστοίχιση υπολογιστών υπηρεσίας και ουρών Host name 3 Back queue 1 B Κεφάλαιο 20.2.3 May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 30

Back queue heap Κεφάλαιο 20.2.3 Μία καταχώρηση για κάθε back queue Η καταχώρηση είναι ο συντομότερος χρόνος t e μετά το πέρας του οποίου επιτρέπεται να επικοινωνήσουμε με τον υπολογιστή υπηρεσίας που αντιστοιχεί στην ουρά Ο συντομότερος χρόνος καθορίζεται από Το πότε έγινε η πιο πρόσφατη πρόσβαση στον υπολογιστή Οποιαδήποτε εμπειρική μέθοδο επιλέξουμε May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 31

Επεξεργασία Back queue Κεφάλαιο 20.2.3 Ένα crawler thread που ζητά ένα URL για σταχυολόγηση: Εξάγει από την κορυφή της heap Προσκομίζει το URL στην κεφαλή της αντίστοιχης back queue q (αντιστοίχιση με βάση τον πίνακα) Ελέγχει εάν η ουρά q είναι τώρα κενή εάν είναι, ανακτά ένα v από τις front queues Εάν υπάρχει ήδη μια back queue για τον υπολογιστή της v, προστίθεται η v στην q και ανακτάται άλλο URL από τις front queues, και επανέλαβε Αλλιώς προστίθεται το v στην q Όταν η q δεν είναι άδεια, δημιουργεί μια καταχώρηση στη heap για αυτή May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 32

Πλήθος των back queues B Κεφάλαιο 20.2.3 Καθορίζει την έκταση στην οποία μπορούμε να διατηρούμε όλα τα threads απασχολημένα, με σεβασμό στην ευγένεια Εμπειρικός κανόνας από τη σχεδίαση του Mercator: Τρεις φορές περισσότερες back queues από crawler threads May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 33

Πηγές Αναφοράς Εισαγωγή στην Ανάκτηση Πληροφοριών, κεφάλαιο 20 Mercator: A scalable, extensible web crawler (Heydon et al. 1999) Robot exclusion standard May 30, 2016 Ανάκτηση Πληροφοριών,6ο Εξάμηνο 34