ΘΕΜΑ: ΤΕΧΝΟΛΟΓΙΕΣ ΜΗΧΑΝΩΝ ΑΝΑΖΗΤΗΣΗΣ ΚΑΙ ΟΙ ΕΦΑΡΜΟΓΕΣ ΤΟΥΣ ΣΤΙΣ ΤΡΕΧΟΥΣΕΣ WEB SEARCH ENGINES. ΕΠΟΠΤΗΣ ΚΑΘΗΓΗΤΗΣ: ΣΤΕΡΓΙΟΣ ΠΑΠΑΔΗΜΗΤΡΙΟΥ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΘΕΜΑ: ΤΕΧΝΟΛΟΓΙΕΣ ΜΗΧΑΝΩΝ ΑΝΑΖΗΤΗΣΗΣ ΚΑΙ ΟΙ ΕΦΑΡΜΟΓΕΣ ΤΟΥΣ ΣΤΙΣ ΤΡΕΧΟΥΣΕΣ WEB SEARCH ENGINES. ΕΠΟΠΤΗΣ ΚΑΘΗΓΗΤΗΣ: ΣΤΕΡΓΙΟΣ ΠΑΠΑΔΗΜΗΤΡΙΟΥ"

Transcript

1 ΤΕΙ ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ & ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ:ΔΙΑΧΕΙΡΙΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ: ΤΕΧΝΟΛΟΓΙΕΣ ΜΗΧΑΝΩΝ ΑΝΑΖΗΤΗΣΗΣ ΚΑΙ ΟΙ ΕΦΑΡΜΟΓΕΣ ΤΟΥΣ ΣΤΙΣ ΤΡΕΧΟΥΣΕΣ WEB SEARCH ENGINES. ΕΠΟΠΤΗΣ ΚΑΘΗΓΗΤΗΣ: ΣΤΕΡΓΙΟΣ ΠΑΠΑΔΗΜΗΤΡΙΟΥ ΣΠΟΥΔΑΣΤΡΙΑ: ΜΑΡΙΑ ΧΑΛΚΙΑ Α.Μ:325 ΚΑΒΑΛΑ ΜΑΡΤΙΟΣ 2010

2 ΠΡΟΛΟΓΟΣ Η παρούσα πτυχιακή εργασία εκπονήθηκε κατά τη διάρκεια του εαρινού εξαμήνου του ακαδημαϊκού έτους 2010 από την σπουδάστρια Μαρία Χαλκιά. Η υπόδειξη του θέματος έγινε από τον διδάκτορα του ΤΕΙ Παπαδημητρίου Στέργιο, τον οποίο θέλω να ευχαριστήσω για το ενδιαφέρον του, για τις παρατηρήσεις και προτάσεις προς βελτίωση της εργασίας. Θα ήθελα επίσης να ευχαριστήσω την οικογένειά μου για την στήριξη και την οικονομική τους συμβολή που μου παρείχαν όλα αυτά τα χρόνια

3 ΕΙΣΑΓΩΓΗ. 1 ENOTHTA 1 ΚΕΦΑΛΑΙΟ 1 ΟΙ ΜΗΧΑΝΕΣ ΑΝΑΖΗΤΗΣΗΣ. 3 ΚΕΦΑΛΑΙΟ 2 ΜΕΓΙΣΤΟΠΟΙΗΣΗ ΤΗΣ ΚΥΚΛΟΦΟΡΙΑΣ ΜΙΑΣ ΙΣΤΟΣΕΛΙΔΑΣ (WEB SITE) Η ΑΞΙΑ ΤΗΣ ΕΠΙΛΟΓΗΣ ΣΩΣΤΩΝ ΛΕΞΕΩΝ ΚΛΕΙΔΙΑ (KEYWORDS) ΤΟΠΟΘΕΤΗΣΗ ΤΩΝ ΛΕΞΕΩΝ ΚΛΕΙΔΙΑ ΜΕΣΑ ΣΤΗΝ ΙΣΤΟΣΕΛΙΔΑ ΤΟ ΒΑΡΟΣ ΤΩΝ ΛΕΞΕΩΝ ΚΛΕΙΔΙΑ (KEYWORDS WEIGHT) ΔΗΜΙΟΥΡΓΙΑ ΤΙΤΛΩΝ ΠΟΥ ΠΡΟΚΑΛΟΥΝ ΤΗΝ ΠΡΟΣΟΧΗ ΤΑ DESCRIPTION TAGS ΣΤΡΑΤΗΓΙΚΕΣ ΤΩΝ ΜΗΧΑΝΩΝ ΑΝΑΖΗΤΗΣΗΣ ΑΛΛΕΣ ΣΗΜΑΝΤΙΚΕΣ ΣΤΡΑΤΗΓΙΚΕΣ ΠΡΟΛΗΨΗ ΠΡΟΒΛΗΜΑΤΩΝ ΜΕ ΤΙΣ ΜΗΧΑΝΕΣ 14 ΚΕΦΑΛΑΙΟ 3 ΑΝΑΤΟΜΙΑ ΜΙΑΣ ΜΗΧΑΝΗΣ ΑΝΑΖΗΤΗΣΗΣ (GOOGLE) ΣΧΕΔΙΑΣΤΙΚΟΙ ΣΤΟΧΟΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΣΥΣΤΗΜΑΤΟΣ ANCHOR TEXT ΑΛΛΑ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΝΑΤΟΜΙΑ ΣΥΣΤΗΜΑΤΟΣ ΕΠΙΣΚΟΠΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ GOOGLE ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ (DATA STRUCTURES) BIG FILES ΑΠΟΘΗΚΗ (REPOSITORY) DOCUMENT INDEX ΛΕΞΙΚΟ (LEXICON) (HIT LISTS) (FORWARD INDEX) ΑΝΤΕΣΤΡΑΜΜΕΝΟ ΕΥΡΕΤΗΡΙΟ (INVERTED INDEX) ΑΝΑΖΗΤΗΣΗ ΤΟ ΣΥΣΤΗΜΑ ΒΑΘΜΟΛΟΓΗΣΗΣ (RANKING SYSTEM).26 ΚΕΦΑΛΑΙΟ 4 ΟΜΑΔΟΠΟΙΗΣΗ ΤΩΝ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΤΗΣ ΑΝΑΖΗΤΗΣΗΣ 4.1. ΕΙΣΑΓΩΓΗ ΤΕΧΝΙΚΕΣ ΟΜΑΔΟΠΟΙΗΣΗΣ ΟΜΑΔΟΠΟΙΗΣΗ ΚΕΙΜΕΝΩΝ ΣΤΗΝ ΑΝΑΚΤΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ Η ΟΜΑΔΟΠΟΙΗΣΗ ΣΤΗΝ ΜΗΧΑΝΗ ΕΚΜΑΘΗΣΗΣ ΑΛΓΟΡΙΘΜΟΙ ΑΠΛΟΣ ΣΥΝΔΕΣΜΟΣ CLASSIT/AGGLOM INCLASS ΠΕΡΙΓΡΑΦΗ ΟΜΑΔΑΣ..34 ΚΕΦΑΛΑΙΟ 5 ΞΕΝΕΣ ΜΗΧΑΝΕΣ ΑΝΑΖΗΤΗΣΗΣ- ΚΑΤΑΛΟΓΟΙ.36. ΕΛΛΗΝΙΚΕΣ ΜΗΧΑΝΕΣ ΚΑΙ ΚΑΤΑΛΟΓΟΙ.37

4 ΤΙ ΕΙΝΑΙ Η ΕΦΑΡΜΟΓΗ WEB;.38 ENOTHTA 2 ΚΕΦΑΛΑΙΟ 1 ΒΑΣΙΚΕΣ ΤΕΧΝΟΛΟΓΙΕΣ ΙΝΤΕΡΝΕΤ ΕΙΣΑΓΩΓΗ WORLD WIDE WEB COMMON GETAWAY INTERFACE ΟΛΟΚΛΗΡΩΣΗ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΟ (WWW) ΑΣΦΑΛΕΙΑ ΣΥΣΤΗΜΑΤΟΣ ΚΑΙ ΑΠΟΔΟΣΗ JAVA 48 ΚΕΦΑΛΑΙΟ 2 Η ΤΕΧΝΟΛΟΓΙΑ WEB ΕΙΣΑΓΩΓΗ ΜΙΚΡΟΓΡΑΦΙΕΣ ΕΠΙΛΟΓΩΝ- APPLETS ΗΛΕΚΤΡΟΝΙΚΟ ΤΑΧΥΔΡΟΜΕΙΟ ΚΑΙ ΜΗΧΑΝΕΣ ΑΝΑΖΗΤΗΣΗΣ ΑΜΕΣΗ ΑΝΤΑΛΛΑΓΗ ΜΥΝΗΜΑΤΩΝ-INSTANT MESSEGES ΕΥΦΥΕΙΣ ΜΕΣΟΛΛΑΒΗΤΕΣ ΕΚΤΕΤΑΜΕΝΗ ΔΟΜΗ ΤΟΥ WEB:CORBA KAI ΚΑΤΑΝΕΜΗΜΕΝΟ ΥΠΟΛΟΓΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ.57 ΚΕΦΑΛΑΙΟ 3 ΠΛΑΙΣΙΟ ΑΝΑΠΤΥΞΗΣ ΚΟΜΒΟΥ WEB ΕΙΣΑΓΩΓΗ Η ΔΙΑΔΙΚΑΣΙΑ ΑΝΑΠΤΥΞΗΣ ΛΟΓΙΣΜΙΚΟΥ ΣΤΟ WEB ΑΝΑΛΥΣΗ ΚΑΙ ΚΑΘΟΡΙΣΜΟΣ ΑΠΑΙΤΗΣΕΩΝ ΣΧΕΔΙΑΣΜΟΣ ΥΛΟΠΟΙΗΣΗ ΣΥΝΤΗΡΗΣΗ ΑΠΑΙΤΗΣΕΙΣ ΑΠΟ ΤΗΝ ΤΕΧΝΟΛΟΓΙΑ ΥΛΟΠΟΙΗΣΗΣ ΠΟΛΙΤΙΚΕΣ ΠΑΡΟΥΣΙΑΣΗΣ ΚΟΜΒΩΝ WEB 69 ΕΝΟΤΗΤΑ 3 ΟΙ ΕΦΑΡΜΟΓΕΣ ΤΩΝ ΜΗΧΑΝΩΝ ΑΝΑΖΗΤΗΣΗΣ ΣΤΟ WEB ENGINE ΕΙΣΑΓΩΓΗ.71 SEARCH ENGINE MARKETING 72 ΕΜΠΟΡΙΚΗ ΕΦΑΡΜΟΓΗ 73 Η ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ WALFARM/ALPHA 79 ACTIVE 3 CSM..85 ΝΕΕΣ ΕΦΑΡΜΟΓΕΣ ΑΝΑΖΗΤΗΣΗΣ ΣΤΗ ΜΗΧΑΝΗ ΤΗΣ GOOGLE 87

5 ΕΙΣΑΓΩΓΗ Μηχανές Αναζήτησης (Search Engines) Οι μηχανές αναζήτησης είναι προγράμματα που έχουν σχεδιαστεί για να βοηθούν τους χρήστες των ηλεκτρονικών υπολογιστών να βρίσκουν την πληροφορία που επιθυμούν, ανάμεσα σε πλήθος πληροφοριών, όπως το Διαδίκτυο (World Wide Web) ή έναν προσωπικό υπολογιστή. Η μηχανή αναζήτησης επιτρέπει στους χρήστες να εισάγουν μία ή περισσότερες λέξεις-κλειδιά, με βάση τις οποίες βγάζει τα σχετικά αποτελέσματα. Κάποιες από τις πιο γνωστές μηχανές αναζήτησης είναι το google, in, msn και άλλες. Μηχανές αναζήτησης στο Internet Οι μηχανές αναζήτησης για το Διαδίκτυο είναι αυτές που σας ενδιαφέρουν περισσότερο, αφού οι περισσότεροι από σας τις χρησιμοποιείτε για τις αναζητήσεις σας στο Διαδίκτυο, όπως ακριβώς κάνουν και εκατομμύρια ανθρώπων καθημερινά για να βρουν αυτό που επιθυμούν, να ενημερωθούν και να αγοράσουν προϊόντα και υπηρεσίες από το Διαδίκτυο. Οι σελίδες που εμφανίζονται στα αποτελέσματα των μηχανών αναζήτησης ταξινομούνται με βάση πολύπλοκους αλγορίθμους και ανανεώνουν τα στοιχεία τους ανά τακτά χρονικά διαστήματα (π.χ ημέρες) αυτόματα, με τη βοήθεια ειδικών προγραμμάτων που ονομάζονται robots ή spiders. Η χρησιμότητα των μηχανών αναζήτησης Οι επισκέψεις που δέχονται καθημερινά οι μηχανές αναζήτησης σε όλο τον κόσμο φτάνουν τις μερικές εκατοντάδες εκατομμύρια και αποτελούν την πιο διαδεδομένη μέθοδο εύρεσης πληροφορίας. Με βάση τα αποτελέσματα των μηχανών αναζήτησης εκατομμύρια ανθρώπων κάνουν αγορές online καθημερινά, ενώ ένα πολύ μεγάλο ποσοστό των διαφόρων εταιρειών και επιχειρήσεων χτίζουν το πελατολόγιο τους, εκμεταλλευόμενες τις καλές θέσεις που έχει η ιστοσελίδα τους στις μηχανές αναζήτησης. Το να συμπεριληφθεί μια ιστοσελίδα στα πρώτα αποτελέσματα των μηχανών αναζήτησης απαιτεί εξειδικευμένη εργασία από ειδικούς και είναι μια χρονοβόρα και ιδιαίτερα απαιτητική δουλειά, αφού χρειάζεται εμπειρία, 1

6 γνώσεις και καθημερινή παρακολούθηση των εξελίξεων γύρω από τον τρόπο λειτουργίας και τις παραμέτρους των μηχανών αναζήτησης. Η τελευταία δεκαετία του 20 ου αιώνα σημαδεύτηκε από την ραγδαία ανάπτυξη και μετεξέλιξη τυο Internet, από ένα δίκτυο έρευνας που χρησιμοποιούνταν πρωταρχικά από την επιστημονική κοινότητα, σε ένα δίκτυο που χρησιμοποιείται από εκατομμύρια χρήστες. Η πολύ μεγάλη αυτή ανάπτυξη του Internet οφείλεται κατά κύριο λόγο στην δημοφιλέστερη εφαρμογή του, το World Wide Web (WWW).Η πληροφορία στο WWW είναι δομημένη σε σελίδες που είναι αποθηκευμένες σε εξυπηρετητές (servers). Μία τυπική σελίδα του WWW αποτελείται από κείμενο και άλλα δεδομένα όπως εικόνες (inline images) και συνδέσμους (hyperlinks) που οδηγούν σε άλλες σελίδες. Ένας χρήστης του Internet καλεί τις σελίδες που επιθυμεί να δει, τις διαβάζει και στη συνέχεια χρησιμοποιεί τους συνδέσμους για να μεταφερθεί σε άλλες σελίδες. Η τυπική αυτή διαδικασία ονομάζεται Web Browsing (πλοήγηση)[1]. Το μεγάλο πλήθος των σελίδων που αποτελούν το WWW, δίνουν την δυνατότητα στον χρήστη να βρει οποιαδήποτε πληροφορία θέλει ανα πάσα στιγμή. Τα προβλήματα ξεκινούν όταν εξαιτίας αυτου του τεράστιου αριθμού των σελίδων, ο χρήστης δεν γνωρίζει που ακριβώς θα βρει την πληροφορία που ψάχνει καθώς και αν αυτή είναι ποιοτική ή όχι. 2

7 ΚΕΦΑΛΑΙΟ 1 ΟΙ ΜΗΧΑΝΕΣ ΑΝΑΖΗΤΗΣΗΣ Την ανάγκη αυτή καλύπτουν στις μέρες μας οι μηχανές αναζήτησης (Search Engines). Οι μηχανές αυτές είναι συνδιασμός προγραμμάτων που διατρέχουν το internet, συλλέγουν σελίδες και μπορούν να απαντήσουν στις αιτήσεις των χρηστών για συγκεκριμένα θέματα που τον ενδιαφέρουν. Μια τυπική μηχανή αναζήτησης αποτελείται από τα παρακάτω μέρη: 1. Τον Crawler. Οι crawlers είναι μικρά προγράμματα που «ψάχνουν» το δίκτυο για λογαριασμό της μηχανής, με τον ίδιο τρόπό που ένας απλός χρήστης θα ακολουθούσε τους διάφορους συνδέσμους (links) για να βρει διαφορετικές σελίδες 2. Την Αποθήκη. Η αποθήκη κάθε μηχανής αναζήτησης είναι ένα κλιμακωτό αποθηκευτικό σύστημα που συντηρεί μεγάλες συλλογές ιστοσελίδων 3. Τη Διευθυνσιοδότηση (Indexing). Οι διάφοροι indexers δημιουργούν μια σειρά απο διαφορετικά ευρετήρια πάνω στις συλλεγόμενες σελίδες 4. Την Αξιολόγηση (Ranking). Είναι ίσως το σημαντικότερο τμήμα μιας μηχανής αναζήτησης. Δέχεται τους όρους της αναζήτησης που δίνει ο χρήστης και ανακτά σελίδες που φαίνεται να είναι οι πιο σχετικές, παρουσιάζοντας τες στον χρήστη. Το άφθονο περιεχόμενο του Παγκόσμιου Ιστού (World-Wide Web) είναι πολύ χρήσιμο σε πολλούς. Αρκετοί απλά ψάχνουν το δίκτυο μέσω κάποιου σημείου εισόδου, όπως είναι το Yahoo. Αλλά οι περισσότεροι που αναζητούν πληροφορίες χρησιμοποιούν μια μηχανή αναζήτησης (search engine) για να 3

8 ξεκινήσουν την δραστηριότητά τους.έτσι αναζητώντας σύγχρονους και αποδοτικούς αλγόριθμους ανάκτησης της πληροφορίας στο διαδίκτυο, σχεδόν αποκλειστικά στρέφουμε το βλέμμα μας στον τρόπο λειτουργίας των μηχανών αναζήτησης (search engines). Πολλές από τις μηχανές αναζήτησης χρησιμοποιούν γνωστούς αλγόριθμους και τεχνικές για ανάκτηση πληροφορίας. Όμως τέτοιοι αλγόριθμοι έχουν σχεδιαστεί για σχετικά μικρές και συνεκτικές συλλογές όπως άρθρα εφημερίδων και κατάλογοι βιβλίων σε μια βιβλιοθήκη. Το Δίκτυο όμως, είναι δυναμικό, λιγότερο συνεκτικό, αλλάζει πιο γρήγορα, και απλώνεται σε γεωγραφικά διασκορπισμένους υπολογιστές. Αυτό απαιτεί νέες τεχνικές, ή επεκτάσεις στις παλαιότερες για να τα καταφέρει με τον χειρισμό της πληροφορίας, να κάνει τις δομές των index κλιμακωτές και επαρκώς αναβαθμίσιμες και να βελτιώσει την ικανότητα των search engines. Δεν υπάρχει αμφιβολία πως το Δίκτυο είναι τεράστιο και είναι μεγάλη η πρόκληση του να τα καταφέρεις με αυτό. Διάφορες μελέτες έχουν υπολογίσει το μέγεθος του Δικτύου και ενώ αναφέρονται διάφοροι αριθμοί, οι περισσότεροι συγκλίνουν στο ότι υπάρχουν πάνω από δισεκατομμύριο σελίδες. Δοθέντος ότι το μέσο μέγεθος μιας ιστοσελίδας (Web Page) είναι περίπου 5-10 KB bytes, μόνο τα δεδομένα των κειμένων αθροίζονται σε τουλάχιστον δεκάδες gigabytes. Ο ρυθμός ανάπτυξης του Δικτύου είναι ακόμη πιο δραματικός.παράλληλα με το μέγεθος και την ταχύτατη αλλαγή, οι υπάρχουσες σελίδες συνεχώς ανανεώνονται. Θεωρούμε πως το μοντέλο της Poison προόδου είναι αρκετά καλό για να περιγράψει τις αλλαγές στις ιστοσελίδες και με βάση αυτό μπορούμε να περιγράψουμε την ποιότητα των μηχανών αναζήτησης.επί προσθέτως με το μέγεθος, η διασυνδετική φύση του Δικτύου το κάνει να ξεχωρίζει από άλλες συλλογές. Διάφορες μελέτες προσπαθούν να εξηγήσουν πως η συνδεσμολογία του Δικτύου είναι δομημένη και πως αυτή η δομή μπορεί να μοντελοποιηθεί. Πριν περιγράψουμε τις τεχνικές που χρησιμοποιούνται στις μηχανές αναζήτησης είναι χρήσιμο να δούμε πώς μια τέτοια μηχανή αναζήτησης είναι σχεδιασμένη. Η εικόνα 4

9 παρουσιάζει την σχηματική αρχιτεκτονική μιας τέτοιας μηχανής.[1] Εικόνα 1. Γενική αρχιτεκτονική μιας μηχανής αναζήτησης Κάθε μηχανή αναζήτησης στηρίζεται σε μια μονάδα crawler για να παράγει το υλικό για τις λειτουργίες της. Οι crawlers είναι μικρά προγράμματα που «ψάχνουν» το Δίκτυο (Web) για λογαριασμό της μηχανής αναζήτησης, όπως ένας κοινός χρήστης θα ακολουθούσε τους συνδέσμους (links) για να φτάσει σε διάφορες σελίδες. Τα προγράμματα λοιπόν αυτά, δίνουν ένα αρχικό σετ από URLs, των οποίων οι σελίδες θα ανακτηθούν από το Δίκτυο (Web). Οι crawlers εξάγουν τα URLs που φαίνονται στις σελίδες που έχουν ανακτηθεί και δίνουν αυτή τη πληροφορία στη μονάδα ελέγχου του crawler ( crawler control ). Οι crawlers επίσης στέλνουν τις σελίδες που έχουν ανακτηθεί μέσα σε μια αποθήκη σελίδων (page repository). Οι crawlers συνεχίζουν να επισκέπτονται το Δίκτυο (Web), μέχρι οι τοπικές πηγές του συστήματος μας, όπως για παράδειγμα οι χώροι αποθήκευσης, εξαντληθούν. Αυτός ο βασικός αλγόριθμος λειτουργίας ενός crawler μορφοποιείται και συναντάται σε πολλές διαφοροποιήσεις που δίνουν στις μηχανές αναζήτησης διαφορετικά επίπεδα κάλυψης. Για παράδειγμα, οι crawlers σε μια μηχανή μπορεί να έχουν οριστεί να επισκεφθούν όσο το δυνατόν περισσότερα 5

10 sites, αφήνοντας έξω τις σελίδες που είναι θαμμένες βαθιά (συναντώνται σαν εσωτερικοί σύνδεσμοι) μέσα σε κάθε site. Οι crawlers σε άλλες μηχανές μπορεί να έχουν ειδικευτεί σε συγκεκριμένα domain (τύποι σελίδων π.χ..com.org.edu ), όπως οι κυβερνητικές σελίδες. Η μονάδα ελέγχου του crawler είναι υπεύθυνη για την κατεύθυνση των λειτουργιών του crawling. Όταν μια μηχανή αναζήτησης έχει ολοκληρώσει έναν κύκλο crawling, η μονάδα ελέγχου του crawler μπορεί να πληροφορηθεί από διάφορα ευρετήρια (indexes) που είχαν δημιουργηθεί σε προγενέστερες crawl διαδικασίες. Η μονάδα ελέγχου του crawler μπορεί για παράδειγμα να χρησιμοποιήσει ένα προηγούμενο γράφημα συνδέσμων του crawl (crawl s link graph ή structure index στην εικόνα 1), για να αποφασίσει ποιους συνδέσμους (links) οι crawlers πρέπει να εξερευνήσουν και πoιοί πρέπει να αγνοηθούν. Η μονάδα ελέγχου του crawler μπορεί επίσης να χρησιμοποιήσει μια ανατροφοδότηση (feedback) από κάποια υποδείγματα ή τεχνικές χρήσης για να καθοδηγήσει στην διαδικασία του crawling, συνδέοντας έτσι την μηχανή που δέχεται τις αιτήσεις (query engine) και την μονάδα ελέγχου του crawler στη εικόνα 1. H μονάδα indexer εξάγει όλες τις λέξεις από κάθε σελίδα, και καταγράφει το URL όπου κάθε λέξη βρίσκεται. Το αποτέλεσμα είναι γενικά ένας πολύ μεγάλος πίνακας εμφάνισης που μπορεί να παρέχει όλα τα URLs που σημαδεύουν στις σελίδες όπου μια λέξη βρίσκεται, (ο text indexer που εμφανίζεται στην εικόνα 1). Αυτός ο πίνακας φυσικά περιορίζεται στις σελίδες που έχουν καλυφθεί από την διαδικασία του crawling. Όπως αναφέρθηκε, το text indexing του Δικτύου (Web) παρουσιάζει ειδικές δυσκολίες, εξαιτίας του μεγέθους του, και του ταχύτατου ρυθμού αλλαγής του. Παράλληλα με αυτές τις ποσοτικές προκλήσεις, το Δίκτυο (Web) απαντά και σε κάποια ειδικά, λιγότερο κοινά, είδη ευρετηρίων (indexes). Για παράδειγμα, η μονάδα indexing μπορεί επίσης να δημιουργήσει ένα ευρετήριο δομής (structure index), όπου παρουσιάζει τους εσωτερικούς συνδέσμους (links) ανάμεσα στις σελίδες. Τέτοια ευρετήρια (indexes) δεν θα είναι βέβαια κατάλληλα για παραδοσιακές συλλογές κειμένων που δεν είναι σχεδιασμένες με τη αρχιτεκτονική των συνδέσμων. H μονάδα ανάλυσης της συλλογής (collection analysis) είναι υπεύθυνη για τη δημιουργία μιας ποικιλίας άλλων ευρετηρίων (indexes).to ευρετήριο χρήσης (utility index) στην εικόνα 1 δημιουργείται από την μονάδα ανάλυσης της συλλογής. Για παράδειγμα, τα ευρετήρια χρήσης (utility indexes) μπορούν να παρέχουν πρόσβαση σε σελίδες δοσμένου μήκους, σελίδες συγκεκριμένης 6

11 «σημασίας» ή σελίδες με κάποιο αριθμό εικόνων. H μονάδα ανάλυσης της συλλογής (collection analysis) μπορεί να χρησιμοποιήσει τα ευρετήρια λέξεων (text) και δομής (structure indexes) όταν δημιουργεί τα ευρετήρια χρήσης (utility indexes). Στη διάρκεια μιας εκτέλεσης crawling και indexing, οι μηχανές αναζήτησης πρέπει να αποθηκεύουν τις σελίδες που ανέκτησαν από το Δίκτυο (Web). Η αποθήκη σελίδων (page repository) της εικόνας 1 αναπαριστά αυτή τη μάλλον προσωρινή συλλογή. Ορισμένες φορές οι μηχανές αναζήτησης, διατηρούν μια μνήμη γρήγορης προσπέλασης (cache) με τις σελίδες που έχουν επισκεφθεί πριν ακόμη δημιουργηθούν όλα τα ευρετήρια. Αυτή η μνήμη (cache) τους επιτρέπει να βρίσκουν τις ζητούμενες σελίδες πολύ γρήγορα παρέχοντας παράλληλα βασικές δραστηριότητες αναζήτησης. Η μονάδα μηχανής ερωτήσεων (query engine) είναι υπεύθυνη για να παραλαμβάνει και να εκπληρώνει τις αιτήσεις αναζήτησης από τους χρήστες. Η μηχανή βασίζεται κυρίως στα ευρετήρια (indexes) και μερικές φορές και στην αποθήκη σελίδων (page repository). Εξαιτίας του μεγέθους του Web και του ότι οι χρήστες εισάγουν σχεδόν πάντα μια ή δυο λέξεις, τα σετ των αποτελεσμάτων είναι συνήθως πολύ μεγάλα. Η μονάδα αξιολόγησης (ranking) γι αυτό το λόγο είναι ίσως η σημαντικότερη μονάδα μιας μηχανής αναζήτησης και αυτή που τελικά καθορίζει την εμπορική ή όποια άλλη (ανάλογα τους στόχους των σχεδιαστών) επιτυχία της. Έχει την ευθύνη να ταξινομεί τα αποτελέσματα έτσι ώστε αυτά που είναι πιο πάνω στη λίστα να είναι πιο πιθανό να σχετίζονται με την αίτηση του χρήστη. Η μονάδα ερωτήσεων είναι ειδικού ενδιαφέροντος, επειδή οι παραδοσιακές τεχνικές ανάκτησης πληροφορίας (Information Retrieval) έχουν απαντήσει σε επιλεγμένα προβλήματα που έχουν τεθεί που όμως δεν παρουσιάζουν την ιδιομορφία της αναζήτησης στο Web. Οι περισσότερες παραδοσιακές τεχνικές βασίζονται στην μέτρηση της ομοιότητας των κειμένων μιας ερώτησης με κείμενα κάποιας συλλογής. Οι ελάχιστες σε μέγεθος αιτήσεις των χρηστών μπροστά σε απέραντες συλλογές που είναι κάτι πολύ συνηθισμένο για τις μηχανές αναζήτησης, προστατεύουν αυτές τις προσεγγίσεις που βασίζονται στην ομοιότητα, από το φιλτράρισμα επαρκούς αριθμού μη σχετικών σελίδων έξω από τα αποτελέσματα της αναζήτησης. Το πρόβλημα που προκύπτει την έρευνα με βάση λέξεις είναι ότι ο χρήστης πρέπει να μορφοποιήσει την ερώτηση του χρησιμοποιώντας keywords και ως εκ τούτου μπορεί να αντιμετωπίζει δυσκολίες στο να βρει τις σωστές λέξεις 7

12 που περιγράφουν το ενδιαφέρον του. Η μηχανή αναζήτησης μπορεί επίσης να υποστηρίξει ένα διαφορετικό είδος αιτήματος που ονομάζεται find related αίτημα. Σε αυτό το είδος της αίτησης, ο χρήστης δίνει μια συνθήκη, συνήθως μια ιστοσελίδα, του είδους της πληροφορίας που αναζητά. Η μηχανή αναζήτησης ανακτά άλλες ιστοσελίδες που είναι παρόμοιες με την δοθείσα. Αυτό το είδος αίτησης υποστηρίζεται όπως θα δούμε για παράδειγμα από το Google Κατηγοριοποίηση και Συλλογή Πηγών Πολλές πύλες αναζήτησης όπως το Yahoo! και το Altavista διαθέτουν μια ιεραρχική κατηγοριοποίηση ενός υποσυνόλου των ιστοσελίδων. Ο χρήστης μπορεί να ψάξει ιεραρχικά για να εντοπίσει την πληροφορία που τον ενδιαφέρει. Αυτές οι ιεραρχίες συνήθως είναι φτιαγμένες από τους ίδιους τους σχεδιαστές. Το πρόβλημα της αυτόματης κατηγοριοποίησης των εγγράφων βασίζεται σε ορισμένα παραδείγματα κατηγοριοποίησης που έχουν μελετηθεί αρκετά στην ανάκτηση πληροφορίας. Οι Chakrabarti, Dom και ο Indyk [25]έχουν επεκτείνει τις τεχνικές ανάκτησης πληροφορίας ώστε να περιλαμβάνουν και την hyperlink πληροφορία. Η βασική ιδέα είναι να χρησιμοποιείς όχι μόνο τις λέξεις των εγγράφων αλλά επίσης και τις κατηγορίες των γειτονικών σελίδων για την κατηγοριοποίηση. Έχουν δείξει πειραματικά ότι οι τεχνικές τους περικλείουν την ακρίβεια της κατηγοριοποίησης. Ένα σχετικό πρόβλημα που έχει επίσης μελετηθεί είναι αυτό της αυτόματης συλλογής των πηγών. Η έμφαση σε αυτή τη περίπτωση δίνεται στο να αναγνωρίσεις τις υψηλής ποιότητας σελίδες για μια συγκεκριμένη κατηγορία ή θέμα. Οι αλγόριθμοι που έχουν προταθεί είναι τροποποιήσεις του HITS, που κάνουν χρήση της πληροφορίας του περιεχομένου επιπροσθέτως με τα links. 8

13 Κεφάλαιο 2 Μεγιστοποίηση της Κυκλοφορίας μιας ιστοσελίδας ( Web Site) Παρουσιάσαμε τις κυριότερες τεχνικές και τον τρόπο λειτουργίας των μηχανών αναζήτησης. Στη συνέχεια θα μεταφερθούμε στην σκοπιά του σχεδιαστή μιας ιστοσελίδας για να δούμε τις τεχνικές που πρέπει να ακολουθήσει για να επιτύχει μια καλή αξιολόγηση από τις μηχανές αναζήτησης. Αν η ιστοσελίδα μας δεν αξιολογηθεί στις πρώτες 30 για μια από τις σημαντικότερες λέξεις κλειδιά μας (keywords), τότε δεν θα βρεθεί. Γι αυτό χρειάζεται να δημιουργηθούν ιστοσελίδες φιλικές προς τις μηχανές αναζήτησης που θα οδηγήσουν ένα site στην κορυφή της αξιολόγησης και αυτόματα θα αυξήσουν την κίνηση μέσα στο Δίκτυο για τις σημαντικές λέξεις κλειδιά. Οι μηχανές αναζήτησης συνεχώς πειραματίζονται καθώς προσπαθούν να δώσουν στους επισκέπτες τους αποτελέσματα αναζήτησης που είναι όσο το δυνατόν πιο κοντά στις ερωτήσεις που έχουν γίνει. Και βέβαια η σημασία των μηχανών αναζήτησης είναι παρά πολύ μεγάλη καθώς έχουν γίνει πιο ισχυρές σε ότι αφορά το marketing από οτιδήποτε άλλο υπήρξε ποτέ. Η θέση μέσα σε μια μηχανή αναζήτησης είναι η πλέον προτιμητέα μέθοδος προβολής των ιστοσελίδων και αυτό γιατί υπολογίζεται πως το 84.8% των επισκεπτών κάποιας ιστοσελίδας βρέθηκαν εκεί μέσω μιας μεγάλης μηχανής αναζήτησης. Οι αλγόριθμοι και οι τεχνικές που χρησιμοποιούν οι μηχανές αναζήτησης έχουν διαφορετικά κριτήρια ανάλογα με το αν στοχεύουν στην σχετικότητα των keywords, την link popularity ή άλλες μορφές αξιολόγησης για τα αποτελέσματα που πρέπει να επιστρέψουν. 9

14 2.1 Η αξία της επιλογής σωστών λέξεων κλειδιά (keywords) Όταν οι χρήστες επισκέπτονται μια μηχανή αναζήτησης και ζητούν links για σχετικές ιστοσελίδες, βάζουν ένα keyword στο παράθυρο της μηχανής και νοιώθουν πως θα πάρουν την πληροφορία που χρειάζονται. Έτσι λοιπόν εξαρτάται από εμάς να βρούμε ποια keyword θα χρησιμοποιούσαν αν έψαχναν τη δική μας ιστοσελίδα. Είναι φανερό πλέον πως σημαντικό ρόλο αποτελεί η σωστή επιλογή της keyword φράσης. Για να δούμε την σημασία των φράσεων με keyword θα τα χρησιμοποιήσουμε μέσα στα META tags, τον τίτλο και τα άλλα σημαντικά tags, όπως και στο body της ίδιας της σελίδας. Ένα σημαντικό λάθος είναι να προσπαθήσουμε να χρησιμοποιήσουμε γενικόλογες λέξης στην φράση κλειδί μας. Όχι μόνο θα έχουμε να συναγωνιστούμε ένα μεγάλο αριθμό σελίδων αλλά δεν θα προσφέρουμε και καλές υπηρεσίες στους υπόλοιπους χρήστες. Είναι σημαντικό λοιπόν να αναρωτηθούμε όχι ποια φράση κλειδί θα χρησιμοποιούσαμε εμείς αλλά αυτοί στους οποίους απευθύνεται η ιστοσελίδα μας. Υπάρχουν ορισμένες λέξεις που ονομάζονται Stop,οι οποίες είναι αρκετά κοινές και αγνοούνται από τις μηχανές αναζήτησης σαν ένας τρόπος να μειώσουν τον αποθηκευτικό χώρο και να επιταχύνουν τις αναζητήσεις. 2.2 Τοποθέτηση των λέξεων κλειδιά μέσα στην ιστοσελίδα Εξίσου σημαντικό με την κατάλληλη επιλογή της φράσης κλειδί είναι και η θέση στην οποία πρέπει να τοποθετήσουμε αυτή τη φράση. Το καλύτερο που έχουμε να κάνουμε είναι να κρατάμε σε κοντινή απόσταση μεταξύ τους, τις λέξεις κλειδιά. Επίσης πρέπει να τοποθετήσουμε τις λέξεις κλειδιά σε όλα τα σημαντικά σημεία μιας ιστοσελίδας. Αν τα τις τοποθετήσουμε στον τίτλο και στα heading tags και αν μια μηχανή αναζήτησης ασχολείται περισσότερο με αυτά τα πεδία, η σελίδα θα αναρριχηθεί στην αξιολόγηση της μηχανής. Σε 10

15 άλλες μηχανές όμως μπορεί να βοηθήσει η παρουσία των λέξεων κλειδιών μέσα στο κείμενο ή και στο URL. Αυτό που πρέπει κανείς να αποφεύγει είναι να τοποθετεί τις λέξεις κλειδιά σε subdirectories που βρίσκονται δύο ή τρία directories μακριά από το root domain. Σημαντικό ρόλο για την «επικοινωνία» της ιστοσελίδας με τη μηχανή αναζήτησης παίζουν τα META tags, κάποια html tags που δίνουν πληροφορίες για την ιστοσελίδα. Υπάρχουν διάφοροι τύποι META tags που εκτελούν διάφορες εργασίες, αλλά τα σημαντικότερα META tags είναι αυτά που βοηθούν μια σελίδα να ανακαλυφθεί από τις μηχανές αναζήτησης. Τέτοια είναι τα Meta keywords, META description και τα META robots tags Είναι σημαντικό, αφού οι περισσότερες μηχανές αναζήτησης ανακτούν τις πρώτες γραμμές της ιστοσελίδας μας για να περιγράψουν το περιεχόμενο της όταν παρουσιάζουν τα αποτελέσματα της αναζήτησης, να διανθίσουμε τις πρώτες 25 λέξεις του Body της ιστοσελίδας μας με πολλές λέξεις κλειδιά αλλά και να προσπαθήσουμε να κάνουμε το κείμενο μας όσο το δυνατόν πιο ελκυστικό. Εξίσου χρήσιμο είναι να περιλάβουμε την λέξη κλειδί μέσα στο URL και στο ALT tag των κρυμμένων links καθώς ισχυροποιείται η σχετικότητα της ιστοσελίδας. Ειδικά στην περίπτωση των κρυμμένων links θεωρείται πλεονέκτημα μιας σελίδας να διαθέτει τέτοια links από την βασική (home page) προς όλες τις άλλες σελίδες γιατί έτσι επιτρέπει στον crawler της μηχανής να διατρέξει όλο το site ακολουθώντας ένα προς ένα τα links. Αναφέραμε τα κυριότερα σημεία που πρέπει να τοποθετούνται οι λέξεις κλειδιά. Ποτέ βέβαια δεν πρέπει να μας διαφεύγει πως ο μηχανές αναζήτησης αρέσκονται στην απλότητα και δεν πρέπει να προσπαθούμε να βελτιστοποιήσουμε τις σελίδες μας με όλες τις τεχνικές για όλες τις μηχανές. Γενικά είναι πολύ δύσκολο να βελτιστοποιήσεις κάθε σελίδα για περισσότερες από δύο λέξεις κλειδιά. Καλύτερα είναι να ξεκινάμε με τις πιο βασικές τεχνικές για κάθε μηχανή και σιγά να προσθέτουμε νέα στοιχεία Το βάρος των λέξεων κλειδιά(keyword weight) 11

16 Το βάρος της λέξης κλειδί έχει να κάνει με τον αριθμό των εμφανίσεων ενός συγκεκριμένου keyword μέσα σε μια ιστοσελίδα σε σχέση με τον συνολικό αριθμό των λέξεων που εμφανίζονται σε αυτή τη σελίδα. Ένας απλός τρόπος να αυξήσεις το βάρος της λέξης κλειδί είναι να διατηρείς τον συνολικό αριθμό των λέξεων της σελίδας σταθερό αυξάνοντας παράλληλα τον αριθμό των εμφανίσεων της λέξης ή φράσης κλειδί. Αναλύοντας τις σελίδες που βαθμολογούνται υψηλά για την σχετικότητα τους στις διάφορες μηχανές αναζήτησης, μπορούμε να συλλέξουμε τα στατιστικά εκείνα που θα μας επιτρέψουν να διακρίνουμε ποια είναι η πυκνότητα των λέξεων κλειδιά αυτών των σελίδων Δημιουργία τίτλων που προκαλούν την προσοχή Το tag <title> είναι το σημαντικότερο tag της ιστοσελίδας. Είναι υπεύθυνο για το κείμενο που εμφανίζεται στην κορυφή του browser window. Όταν αναζητάς μια λέξη σε μια μηχανή αναζήτησης, δέχεσαι ένα σετ αποτελεσμάτων από την αναζήτηση σου. Σχεδόν όλες οι μηχανές χρησιμοποιούν τα περιεχόμενα του title tag σε αυτές τις έρευνες. Πρέπει λοιπόν να έχουμε υπ όψιν όταν πάμε να βρούμε τον τίτλο της σελίδας ότι στην ουσία απευθυνόμαστε τόσο στις μηχανές αναζήτησης όσο και στο κοινό που θα δει τη σελίδα. Γι αυτό το λόγο πρέπει να βρούμε μια καλή ισορροπία. Γενικά πρέπει να προσπαθούμε να δημιουργούμε μεγάλους τίτλους όταν αυτό είναι δυνατό 2.5. Τα Description Tags Τα META description tags είναι τα αμέσως πιο σημαντικά tags μέσα στη σελίδα. Όπως τα tilte έτσι και αυτά εμφανίζονται στα αποτελέσματα της αναζήτησης μιας μηχανής. Το description tag μπορεί να επιφέρει την επιτυχία για ένα site ή μπορεί και να κρατήσει τον κόσμο μακριά από αυτό. Για να καταλάβουμε το ρόλο που παίζει το tag αυτό στην επιτυχία μιας ιστοσελίδας 12

17 μπορούμε να τα παραλληλίσουμε με την εύρεση του κεντρικού συνθήματος μιας διαφημιστικής καμπάνιας. Κλείνοντας την αναφορά στα title και description tag θα λέγαμε πως χρειάζεται να καταναλώσουμε τόσο χρόνο σε αυτά όσο και για την εύρεση της λέξεως κλειδί Στρατηγικές των μηχανών αναζήτησης Η βαθμολόγηση των μηχανών αναζήτησης για μια ιστοσελίδα εξαρτώνται πλέον και από την δημοτικότητα αυτής. Πρέπει βέβαια να αναλύσουμε τον όρο δημοτικότητα. Έτσι λοιπόν μια ιστοσελίδα δεν είναι δημοφιλής μόνο να παρουσιάζει μεγάλη κίνηση. Η δημοτικότητα μιας σελίδας καθορίζεται από δύο παράγοντες: την δημοτικότητα της σελίδας (site popularity) και τη δημοτικότητα των συνδέσμων(link popularity). Η site popularity καθορίζεται από τον αριθμό των επισκεπτών που κλικαραν πάνω στο site στα αποτελέσματα της αναζήτησης καθώς και από το χρόνο που παρέμειναν σε αυτό. Η link popularity καθορίζεται από τον αριθμό των ιστοσελίδων που βρίσκουν μια σελίδα αρκετά ενδιαφέρουσα ώστε να σημαδεύουν πάνω σε αυτήν με ένα link. Ένας τρόπος να αυξηθεί η δημοτικότητα είναι να πραγματοποιηθεί μια ανεπίσημη ανταλλαγή από link. Δηλαδή φτιάχνοντας μια σελίδα με Favorite Links για την ιστοσελίδα σου, ζητάς από αυτά τα sites που δείχνεις να σε δείξουν και αυτά Άλλες σημαντικές στρατηγικές Μιλώντας για στρατηγικές δεν πρέπει ποτέ να ξεχνάμε την αξία που έχει το περιεχόμενο μιας ιστοσελίδας. Οι σημερινές μηχανές αναζήτησης ψάχνουν για σελίδες με πλούσιο περιεχόμενο για τους επισκέπτες τους. Το πλούσιο περιεχόμενο δείχνει στις μηχανές ότι η σελίδα μας είναι πραγματικά σχετική με τους όρους της αναζήτησης. 13

18 Οι περισσότερες μηχανές επιτρέπουν πλέον να καταχωρίσεις μόνο την αρχική σελίδα του site γι αυτό είναι πολύ κρίσιμο να τοποθετήσουμε links προς όλες τις υπόλοιπες σελίδες, ακόμη και αν αυτά είναι κρυφά (hidden links) έτσι ώστε να τα πάρει και αυτά μαζί της η μηχανή. Όταν εξετάζαμε τις στρατηγικές που ακολουθούν οι μηχανές για να κάνουν refresh στις σελίδες που έχουν ήδη κατεβάσει οι crawler του συστήματος αναφέραμε πως πρέπει να υπάρξει μια συμφωνία με το Δίκτυο έτσι ώστε οι μηχανές να μην προκαλούν μεγάλη κυκλοφοριακή συμφόρηση και να μην ενοχλούν την ορθή λειτουργία των σελίδων. Κάθε σελίδα λοιπόν, έχει τη δυνατότητα με τη βοήθεια του revisit tag να καθορίσει στην μηχανή τον μέγιστο αριθμό επισκέψεων που μπορεί να δεχθεί από αυτήν σε κάποιο χρονικό διάστημα, π.χ. μια φορά την ημέρα. Όπως αναφέρθηκε και προηγουμένως οι μηχανές αναζήτησης προτιμούν την απλότητα. Έτσι λοιπόν οι «απλές σελίδες που δεν χρησιμοποιούν frames, tables ή εφαρμογές java θα έχουν πολύ πιο εύκολο δρόμο στο να πάρουν υψηλή βαθμολογία από ότι πιο πολύπλοκα sites που χρησιμοποιούν πιο προηγμένη τεχνολογία. Όλες οι στρατηγικές που αναφέραμε μέχρι τώρα είναι πολύ σημαντικές, αλλά πάντα πρέπει να έχουμε στο μυαλό μας πως η βιομηχανία των μηχανών αναζήτησης αλλάζει και εξελίσσεται. Τίποτα δεν παραμένει το ίδιο για πολύ καιρό. Γι αυτό χρειάζεται συνεχής παρακολούθηση και υιοθέτηση των νέων τεχνικών Πρόληψη Προβλημάτων με τις Μηχανές Στο Δίκτυο σήμερα υπάρχουν ορισμένες λειτουργίες που είναι επιτήδειες και επιβλαβείς και καλούνται spam. Ανάλογα με το αν μιλάμε για τις mail υπηρεσίες, τα newsgroup ή τις μηχανές αναζήτησης ο όρος spam έχει ξεχωριστή σημασία. Σε ότι αφορά τις μηχανές αναζήτησης spamming θεωρείται η προσπάθεια ορισμένων ασυνείδητων σχεδιαστών ιστοσελίδων να υπονομεύσουν τα αποτελέσματα της αναζήτησης ώστε να αυξήσουν την κίνηση στη δική τους σελίδα. Βέβαια η δυσκολία για τις μηχανές αναζήτησης έγκειται στο διακρίνουν τι πραγματικά είναι «ασυνείδητο» και τι είναι μια πετυχημένη στρατηγική. Αυτά τα κριτήρια αλλάζουν συνεχώς και αυτό που 14

19 πριν λίγο καιρό θεωρείτο spamming τώρα μπορεί να απασχολεί αποτελέσματα της αναζήτησης εμποδίζεται από τις μηχανές αναζήτησης. Μεγάλη προσοχή πρέπει να δίνεται στο να μη χρησιμοποιούμε ποτέ λέξεις κλειδιά μέσα στα META ή σε άλλα tags, που το περιεχόμενο τους δεν ανταποκρίνεται σε αυτό του site. Χρειάζεται μεγάλη προσοχή στις κινήσεις μας καθώς αν μια μηχανή θεωρήσει ότι κάνουμε spamming θα μας δώσει τον τίτλο του spammer και θα μας τιμωρήσει απομακρύνοντας όλες τις σελίδες μας από τα index της. Σε μια τέτοια περίπτωση πρέπει να «καθαρίσουμε» την ιστοσελίδα μας και να προσπαθήσουμε ξανά αποφεύγοντας όλες τις τεχνικές που μπορεί να θεωρηθούν spam. Είναι φανερό πως το spamming προκαλεί προβλήματα σε όλο το Web, εμποδίζοντας τους χρήστες των μηχανών και τους νόμιμους ιδιοκτήτες των ιστοσελίδων, γι αυτό πρέπει να βοηθήσουμε τις μηχανές να πολεμήσουν το spamming και όλοι να κερδίσουν από αυτό. 15

20 Κεφάλαιο 3 Ανατομία μιας μηχανής αναζήτησης (Google) Στην συνέχεια θα παρουσιάσουμε την δομή και τους τρόπους λειτουργίας του Google,[3] που αποτελεί το πρότυπο μιας μεγάλης κλίμακας μηχανής που κάνει ευρεία χρήση της δομής που εμφανίζεται στα hypertext. To Google έχει σχεδιαστεί να κάνει crawl και indexing στο Web επαρκώς και να παράγει πολύ περισσότερο ικανοποιητικά αποτελέσματα από τις ήδη υπάρχουσες μηχανές. 3.1 Σχεδιαστικοί στόχοι Βασικός στόχος των σχεδιαστών ήταν να βελτιώσουν την ποιότητα των μηχανών αναζήτησης. Ο χαρακτήρας του Web αλλάζει συνεχώς. Οποιοσδήποτε έχει χρησιμοποιήσει μια μηχανή αναζήτησης πρόσφατα, μπορεί εύκολα να διακρίνει πως η πληρότητα του index δεν είναι ο μοναδικός παράγοντας που επηρεάζει την ποιότητα των μηχανών αναζήτησης. Και αυτό γιατί τα άχρηστα αποτελέσματα Junk Results συνήθως σκεπάζουν τα όποια αποτελέσματα ενδιαφέρουν κάποιο χρήστη. Ένας από τους σημαντικότερους λόγους του προβλήματος είναι πως ο αριθμός των εγγράφων στα indices έχει αυξηθεί σε ένα πολύ μεγάλο βαθμό, η ικανότητα του χρήστη στο να τα εντοπίσει όμως όχι. Οι χρήστες συνεχίζουν να κοιτούν μόνο τα δέκα πρώτα αποτελέσματα. Εξαιτίας αυτού, όσο το μέγεθος της συλλογής αυξάνει, χρειαζόμαστε εργαλεία που θα έχουν πολύ υψηλή ακρίβεια (σε ότι αφορά τον αριθμό των εγγράφων 16

21 που επιστρέφονται ας πούμε στην πρώτη δεκάδα των αποτελεσμάτων). Επίσης θέλουμε αυτή η αίσθηση της «σχετικότητας» να περιλαμβάνει μόνο τα καλύτερα από τα έγγραφα τη στιγμή που υπάρχουν δεκάδες χιλιάδες σχετιζόμενα. Αυτή η υψηλή προσδοκία είναι σημαντική και σε ότι έχει να κάνει με το κόστος της επανάκλησης ( ο συνολικός αριθμός των σχετιζόμενων εγγράφων που μπορεί το σύστημα να επιστρέψει). Υπάρχει αισιοδοξία πως η μεγαλύτερη χρήση της Hypertextual πληροφορίας μπορεί να βελτιώσει τόσο την αναζήτηση όσο και άλλες εφαρμογές. Συγκεκριμένα, η συνδεσμιακή δομή (link structure) και τα κείμενα των συνδέσμων (link text) παρέχουν πολλές πληροφορίες για αποφάσεις σχετικότητας και ποιοτικό φιλτράρισμα. Τα Google κάνει χρήση τόσο του link structure όσο και του anchor text όπως θα δούμε στη συνέχεια αναλυτικά. Ένας άλλος σημαντικός σχεδιαστικός στόχος ήταν να δημιουργηθούν συστήματα όπου σημαντικός αριθμός ανθρώπων θα μπορούσαν στην ουσία να τα χρησιμοποιήσουν. Η χρήση από το κοινό είναι πολύ σημαντική γιατί μερική από την πιο ενδιαφέρουσα έρευνα έχει να κάνει με την επιρροή πάνω στην απέραντη έκταση των προς χρήση δεδομένων που είναι διαθέσιμη από τα μοντέρνα web συστήματα. Ο τελικός στόχος ήταν να χτιστεί μια αρχιτεκτονική που θα μπορούσε να υποστηρίξει όχι συνηθισμένες δραστηριότητες έρευνας πάνω μεγάλης κλίμακας web δεδομένα. Για να υποστηρίξει τέτοιου είδους έρευνες, το Google αποθηκεύει όλα τα πραγματικά έγγραφα που τους κάνει crawl σε συμπιεσμένη μορφή. Σχεδιάζοντας το Google υπήρχε ο στόχος να φτιαχτεί ένα περιβάλλον που και άλλες έρευνες θα μπορούσαν γίνουν γρήγορα, όπως η επεξεργασία μεγάλων τμημάτων του web και η παραγωγή ενδιαφερόντων αποτελεσμάτων που θα ήταν δύσκολο να παραχθούν αλλιώς Χαρακτηριστικά Συστήματος Η μηχανή αναζήτησης Google έχει δυο σημαντικά χαρακτηριστικά που το βοηθούν να παράγει αποτελέσματα υψηλής ποιότητας. 17

22 Με τη χρήση της συνδεσμιακής δομής (link structure) του Δικτύου (Web) υπολογίζει την βαθμολογία ποιότητας κάθε σελίδας. Αυτή η αξιολόγηση είναι το γνωστό μας Page Rank του οποίου ο υπολογισμός και η χρήση αναλύθηκαν σε προηγούμενα κεφάλαια Anchor Text Το κείμενο των συνδέσμων αντιμετωπίζεται διαφορετικά από το Google. Οι περισσότερες μηχανές αναζήτησης συσχετίζουν το κείμενο ενός συνδέσμου (link) με τη σελίδα που ο σύνδεσμος βρίσκεται. Επί προσθέτως, το συσχετίζουμε και με τη σελίδα που ο σύνδεσμος στοχεύει. Αυτό έχει διάφορα πλεονεκτήματα. α) οι Anchors συχνά παρέχουν πιο ακριβείς περιγραφές των σελίδων από ότι οι σελίδες γι αυτές. β) οι Anchors μπορεί να υπάρχουν για documents που δεν μπορεί να καταχωρηθούν από text based μηχανές αναζήτησης, όπως είναι εικόνες, προγράμματα και βάσεις δεδομένων. Αυτό κάνει πιθανό να επιστραφούν σελίδες που στην πραγματικότητα δεν έχουν περάσει από crawl. Αυτό βέβαια μπορεί να προκαλέσει προβλήματα γιατί σελίδες που δεν έχουν υποστεί crawl στην ουσία δεν έχουν ελεγχθεί για την εγκυρότητά τους πριν επιστραφούν στον χρήστη. Σε αυτή τη περίπτωση, η μηχανή αναζήτησης μπορεί να επιστρέψει μια σελίδα που ποτέ δεν υπήρξε στην πραγματικότητα, αλλά είχε hyperlinks που έδειχναν πάνω της. Όμως είναι δυνατόν να φιλτράρεις τα αποτελέσματα, ώστε αυτό το πρόβλημα να εμφανίζεται σπάνια. Βέβαια το να χρησιμοποιείς anchor text ικανοποιητικά είναι τεχνικά δύσκολο εξαιτίας του μεγάλου όγκου των δεδομένων που πρέπει να επεξεργαστείς. Στον τωρινό crawl των 24 εκατ. Σελίδων που κάνει το Google, διαθέτει πάνω από 259 εκατ. Anchors που έχει καταχωρήσει Άλλα Χαρακτηριστικά 18

23 Έκτος από το Page Rank και την χρήση του anchor text, το Google διαθέτει και κάποια άλλα χαρακτηριστικά. Κατ αρχήν, έχει πληροφορία θέσης για κάθε ένα από τα hits του ώστε να κάνει ευρεία χρήση της μικρής απόστασης στην αναζήτηση. Δεύτερον, το Google κρατάει αρχείο με κάποιες λεπτομέρειες που αφορούν την οπτική παρουσίαση, όπως είναι το μέγεθος των λέξεων. Έτσι λέξεις με μεγαλύτερο φόντο ή έντονα γραμμένες (bold) τοποθετούνται ψηλότερα από κάποιες άλλες. Τρίτον, το πλήρες HTML περιεχόμενο των σελίδων είναι διαθέσιμο σε μια αποθήκη Ανατομία Συστήματος Θα παρουσιάσουμε αρκετά αναλυτικά την αρχιτεκτονική του συστήματος. Μετά ακολουθούν μερικές περιγραφές σε βάθος ορισμένων σημαντικών δομών δεδομένων. Τέλος, θα παρουσιάσουμε κάποιες σημαντικές εφαρμογές : το crawling το indexing και το searching Επισκόπηση Αρχιτεκτονικής Google Σε αυτό το κεφάλαιο θα παρουσιάσουμε μια αρκετά αναλυτική επισκόπηση του πως το όλο σύστημα δουλεύει, όπως εμφανίζεται στην εικόνα 11. Σε άλλα κεφάλαια και πιο αναλυτικά θα συζητηθούν οι εφαρμογές και οι δομές δεδομένων που δεν αναφέρονται εδώ. 19

24 Εικόνα 2 Γενική επισκόπηση Αρχιτεκτονικής Google Το μεγαλύτερο κομμάτι του Google είναι υλοποιημένο σε C και C++ και τρέχει είτε σε Solaris είτε σε Linux. Στο Google το web crawling γίνεται από διάφορους διάσπαρτους crawlers. Ένας URL server στέλνει λίστες από URLs για να συλλεχθούν από τους crawlers Οι σελίδες μαζεύονται στον storeserver O storeserver συμπιέζει και αποθηκεύει τις σελίδες σε μια αποθήκη (repository) Κάθε σελίδα έχει το δικό της ID (doc ID) που το αποκτά μόλις μια νέα URL σελίδα διαβαστεί. Το indexing έχει αναλάβει ο indexer και ο sorter O indexer διαβάζει την αποθήκη, αποσυμπιέζει τα documents, και τα διατρέχει. Κάθε doc μετατρέπεται σε ένα σετ λέξεων που ονομάζεται hits. To hits αντιγράφει τη λέξη, τη θέση μέσα στο document, τον τύπο του font και αν είναι κεφαλαίο. Ο indexer διασκορπίζει αυτά τα hits σε ένα σετ από( barrels ) δημιουργώντας ένα τμηματικό ταξινομημένο προς τα εμπρός index. O indexer κάνει και μια ακόμη σημαντική λειτουργία. Διατρέχει όλα τα links σε κάθε ιστοσελίδα και αποθηκεύει σημαντικές πληροφορίες γι αυτά σε ένα anchors file. Αυτό το αρχείο περιλαμβάνει αρκετές πληροφορίες για να καθορίσει ποια σελίδα σημαδεύεται από και προς που, καθώς και το περιεχόμενο του link. O URLresolver διαβάζει αυτό το anchors file και μετατρέπει τα σχετιζόμενα URLs σε απόλυτα URLs και μετά σε docids. Τοποθετεί το 20

25 anchor text μέσα στο index και το συσχετίζει με το docid που το anchor text δείχνει. Επίσης δημιουργεί μια βάση δεδομένων των links που είναι ζευγάρια από docids. Αυτή η βάση δεδομένων χρησιμοποιείται για τον υπολογισμό του Page Rank όλων των documents. O sorter παίρνει τα barels, που είναι ταξινομημένα από τα docids και τα αναταξινομεί κατά wordid για να δημιουργήσει το inverted index. Αυτό γίνεται με τέτοιο τρόπο ώστε να χρειάζεται μικρός προσωρινός επιπρόσθετος χώρος. Ο sorter επίσης παράγει μια λίστα από wordids και offsets μέσα στο inverted index. Ένα πρόγραμμα που ονομάζεται DumpLexicon παίρνει αυτή τη λίστα μαζί με το παραγόμενο λεξικό (lexicon) που παράγεται από τον indexer και δημιουργεί μια νέα λεξικολογική που θα χρησιμοποιηθεί από τον searcher. O searcher τρέχει από ένα Web server και χρησιμοποιεί το λεξικό που έχει κατασκευάσει ο Dump Lexicon μαζί με το inverted index και το Page Rank για να απαντήσει στις ερωτήσεις Βασικές Δομές Δεδομένων (Data Structures) Οι δομές δεδομένων του Google είναι βελτιωμένες έτσι ώστε μεγάλες συλλογές δεδομένων μπορούν να περάσουν από crawl,indexing και αναζήτηση με μικρό κόστος. Αν και οι CPUs και οι ρυθμοί μεταξύ input output έχουν βελτιωθεί εκπληκτικά όσο περνούν τα χρόνια, μια έρευνα στο δίσκο ακόμη απαιτεί περίπου 10msecs για να ολοκληρωθεί. Το Google έχει σχεδιαστεί ώστε να αποφεύγει την έρευνα στους δίσκους όσο είναι αυτό δυνατό και αυτό είχε σημαντική επίδραση στον σχεδιασμό των δομών δεδομένων Big Files Τα Big Files είναι εικονικά αρχεία που συνδέουν πολλαπλά αρχεία συστήματος (file systems) και διευθυνσοδοτούνται από 64 bit ακέραιους. Η κατανομή ανάμεσα στα πολλαπλά αρχεία συστήματος είναι αυτόματα διαχειριζόμενη. Το πακέτο των Big Files επίσης διαχειρίζεται και την κατανομή και αποκατανομή 21

26 των file descriptors, αφού τα λειτουργικά συστήματα δεν καλύπτουν τις ανάγκες μας. Τα Big Files τέλος καλύπτουν στοιχειώδης επιλογές συμπίεσης Αποθήκη (Repository) H αποθήκη περιέχει όλη την HTML κάθε σελίδας. Κάθε σελίδα συμπιέζεται χρησιμοποιώντας το zlib. Η επιλογή της τεχνικής συμπίεσης περιφέρεται μεταξύ ταχύτητας και ρυθμού συμπίεσης. Στην αποθήκη τα documents αποθηκεύονται το ένα μετά το άλλο και διακρίνονται από το docid,το μήκος και το URL όπως φαίνεται και στην εικόνα 3. Η αποθήκη δεν απαιτεί άλλες δομές δεδομένων να χρησιμοποιηθούν για να την προσπελάσεις. Εικόνα 3. Δομή δεδομένων Αποθήκης Document Index Το document index κρατά πληροφορίες για κάθε document. Είναι ένα fixed width ISAM index, που οριοθετείται από το docid. Η πληροφορία που αποθηκεύεται σε κάθε είσοδο περιλαμβάνει την τωρινή κατάσταση του document, ένα δείκτη στην αποθήκη, ένα checksum του doc και διάφορες άλλες στατιστικές. Αν το doc έχει υποστεί crawl, περιλαμβάνει επίσης ένα δείκτη σε ένα μεταβλητού πλάτους αρχείο που ονομάζεται docinfo που περιλαμβάνει το URL του και το τίτλο του. Αλλιώς ο δείκτης δείχνει πάνω στην URLlist που περιλαμβάνει απλώς το URL. Αυτή η σχεδιαστική απόφαση ελήφθη από την επιθυμία να έχουμε μια λογικά ενιαία δομή δεδομένων, και την δυνατότητα να φέρουμε πίσω ένα αρχείο σε μια έρευνα σε δίσκο κατά τη διάρκεια μιας αναζήτησης. Επιπροσθέτως υπάρχει ένα αρχείο που χρησιμοποιείται για να μετατρέψει τα URLs σε docids. Είναι μια λίστα από URL αθροίσματα επαλήθευσης με τα 22

27 αντίστοιχα docids και ταξινομείται από αυτά τα αθροίσματα. Για να βρούμε το docid ενός συγκεκριμένου URL, το άθροισμα επαλήθευσης υπολογίζεται και μια δυαδική έρευνα εκτελείται στο αρχείο των αθροισμάτων για να βρεθεί το docid του Λεξικό (Lexicon) Το Λεξικό έχει διάφορες μορφές. Μια σημαντική αλλαγή από προηγούμενα συστήματα είναι ότι το Λεξικό μπορεί να τοποθετηθεί στη μνήμη για μια λογική τιμή. Στην τωρινή του υλοποίηση μπορούμε να διατηρήσουμε το Λεξικό στη μνήμη σε ένα μηχάνημα με 256ΜΒ κύριας μνήμης. Το τωρινό Λεξικό περιλαμβάνει 14 εκατ. λέξεις. Υλοποιείται σε δύο τμήματα μια λίστα από λέξεις (συνδεδεμένες μαζί αλλά διαχωρισμένες από κενά) και ένα τυχαίο πίνακα με δείκτες. Για διάφορες λειτουργίες, η λίστα με τις λέξεις έχει κάποια ειδική πληροφορία που δεν χρειάζεται να αναφέρουμε (Hit Lists) Μια hit list αντιστοιχεί σε μια λίστα συνθηκών μιας συγκεκριμένης λέξης σε ένα συγκεκριμένο document συμπεριλαμβανομένου τη θέση, το font και το αν είναι κεφαλαίο ή όχι. Τα Hit lists καταλαμβάνουν το μεγαλύτερο χώρο και στα forward και στα inverted indices. Γι αυτό το λόγο είναι σημαντικό να τα παρουσιάζουμε όσο το δυνατό πιο έξυπνα. Αναφέρουμε διάφοροι εναλλακτικοί τρόποι για να κωδικοποιήσουμε τη θέση, τα fonts και τα κεφαλαία η απλή κωδικοποίηση (μια τριάδα ακεραίων, μια συμπιεσμένη κωδικοποίηση ή μια κωδικοποίηση Huffman. Τελικά επιλέγουμε hand optimized συμπιεσμένη κωδικοποίηση καθώς απαιτεί πολύ μικρότερο χώρο από την απλή συμπίεση και πολύ πιο μικρή διασπορά Bits από την Ηuffman. Οι λεπτομέρειες των hits εμφανίζονται στην εικόνα 4. 23

28 Εικόνα 4. Forward και Reverse Indexes και το Λεξικό Η κωδικοποίηση μας χρησιμοποιεί 2 bytes για κάθε hit. Υπάρχουν δύο είδη hits:τα fancy hits και τα plain hits. Τα Fancy hits συμπεριλαμβάνουν τα hits που συμβαίνουν σε ένα URL, σε ένα τίτλο, ένα anchor text ή σε ένα meta tag.τα Plain hits περιλαμβάνουν οτιδήποτε άλλο, αποτελούνται από ένα bit για τα κεφαλαία, το μέγεθος του font και 12 bits για τη θέση της λέξης μέσα στο document.tα Fancy hits συγκροτείται από ένα bit για τα κεφαλαία, το μέγεθος του font ορίζεται στο 7 για να δείξει ότι είναι fancy hit, 4 bits για την κωδικοποίηση του τύπου του fancy hit και 8 bits για την θέση του (Forward Index) To (Forward Index) είναι στη πραγματικότητα ταξινομημένο τμηματικά. Είναι αποθηκευμένο σε ένα αριθμό barel. Κάθε barel κρατά μια σειρά από wordid s. Αν ένα document περιλαμβάνει λέξεις που υπάρχουν μέσα σε ένα συγκεκριμένο barel, το docid αποθηκεύεται μέσα στο barel, ακολουθούμενο από μια λίστα από wordid s με τα hitlists που αντιστοιχούν σε αυτές τις λέξεις. 24

29 Αντεστραμμένο Ευρετήριο (Inverted Index) To αντεστραμμένο ευρετήριο (inverted index) αποτελείται από τα ίδια βαρέλια με αυτά του forward index,εκτός του ότι έχουν υποστεί επεξεργασία από τον sorter. Για κάθε έγκυρη wordid, το Λεξικό διαθέτει ένα δείκτη στο βαρέλι που περιέχει τη wordid. Σημαδεύει πάνω σε μια doclist από docid s μαζί με τα αντίστοιχα τους hit lists.αυτή η docklist παρουσιάζει όλες τις εμφανίσεις αυτής της λέξης σε όλα τα documents. Ένα σημαντικό ζήτημα είναι σε ποια σειρά τα dockid s θα πρέπει να εμφανίζονται μέσα στην doclist. Μια απλή λύση είναι να τα αποθηκεύουμε ταξινομημένα με βάση το docid. Αυτό επιτρέπει την γρήγορη ένωση πολλών διαφορετικών doclists για πολλαπλές ερωτήσεις λέξεων. Μια άλλη επιλογή είναι να τους αποθηκεύσουμε ταξινομημένες με βάση την αξιολόγηση της παρουσίας της λέξης σε κάθε document. Αυτό κάνει την απάντηση σε μια ερώτηση για λέξη, ασήμαντη και το κάνει πιο πιθανό ότι οι απαντήσεις σε πολλαπλών λέξεων ερωτήσεις θα είναι κοντά στην αρχή. Όμως, η ένωση σε αυτή τη περίπτωση είναι πολύ πιο δύσκολη. Τελικά επιλέγουμε μια σύνθεση μεταξύ των δυο αυτών επιλογών, κρατώντας δύο σετ από inverted βαρέλια- ένα σετ για τα hit lists που περιλαμβάνουν τον τίτλο ή τα anchor hits και ένα άλλο σετ για τα υπόλοιπα hit lists. Με αυτό τον τρόπο ελέγχουμε το πρώτο σετ των βαρελιών και αν δεν υπάρχουν αρκετά αποτελέσματα μέσα σε αυτά τα βαρέλια τότε ελέγχουμε τα μεγαλύτερα. Parsing Κάθε parser που έχει σχεδιαστεί για να διατρέχει όλο το Web πρέπει να αντιμετωπίζει ένα τεράστιο αριθμό πιθανών λαθών. Αυτό κυμαίνεται από στα HTML tags μέχρι kilobytes μηδενικών ση μέση ενός tag, non- ASCII χαρακτήρες και μια μεγάλη ποικιλία άλλων τέτοιων λαθών. Για μεγαλύτερη ταχύτητα, αντί να χρησιμοποιήσουμε YACC για να παράγουμε έναν CFG parser, χρησιμοποιούμε flex για να παράγουμε ένα λεξικολογικό αναλυτή τον οποίο 25

30 Διευθυνσοδότηση κειμένων μέσα σε Barrels) Αφού έχουμε διατρέξει κάθε document, το κωδικοποιούμε μέσα σε barrels. Κάθε λέξη κωδικοποιείται σε μια wordid χρησιμοποιώντας το Λεξικό. Νέες προσθήκες στον πίνακα του Λεξικού καταχωρούνται σε ένα αρχείο. Η μεγαλύτερη δυσκολία στον παραλληλισμό της φάσης του indexing είναι ότι το Λεξικό χρειάζεται να μοιράζεται. Αντί να μοιράζουμε το Λεξικό, πήραμε το πλησίασμα γράφοντας ένα κατάλογο όλων των extra λέξεων που δεν υπάρχουν στο βασικό Λεξικό, τις οποίες καθορίσαμε γύρω στα 14 εκατομμύρια λέξεις. Κατάξη (Sorting) Για να δημιουργήσουμε το inverted index, o sorter παίρνει κάθε ένα από τα forward barrel και τα ταξινομεί με βάση το wordid για να παράγει ένα inverted barrel για τον τίτλο και τα anchor hits και ένα fuul text inverted barrel. Αυτή η διαδικασία γίνεται με ένα barrel κάθε φορά έτσι απαιτεί μικρό προσωρινό αποθηκευτικό χώρο. Επίσης παραλληλίζουμε την sorting φάση ώστε να χρησιμοποιήσουμε όσο το δυνατόν περισσότερες μηχανές έχουμε απλά τρέχοντας πολλαπλούς sorters Αναζήτηση Ο στόχος της αναζήτησης είναι να παρέχει ποιοτικά αποτελέσματα. Πολλές από τις μεγάλες εμπορικές μηχανές μοιάζουν να έχουν κάνει μεγάλη πρόοδο στους όρους της αντίληψης. Γι αυτό επικεντρώθηκε η προσοχή στη ποιότητα της έρευνας Το Σύστημα βαθμολόγησης (Ranking System) Το Google διατηρεί πολύ περισσότερη πληροφορία για τα documents του web από τις τυπικές μηχανές αναζήτησης. Κάθε hitlist περιλαμβάνει την θέση, το font και την πληροφορία για τα κεφαλαία. Επί προσθέτως, από το anchor text και το Page Rank του document. Συνδυάζοντας όλη αυτή τη πληροφορία σε μια κατάταξη είναι δύσκολο. Σχεδιάσαμε την λειτουργία της αξιολόγησης έτσι ώστε κανένας ιδιαίτερος παράγοντας δεν μπορεί να έχει ιδιαίτερη επίδραση. Πρώτα, ας θεωρήσουμε την απλή περίπτωση μιας ερώτησης μιας λέξης. Το Google ψάχνει στην hit list των document s για αυτή τη λέξη. Το Google θεωρεί κάθε hit σαν να είναι διαφορετικών τύπων (τίτλος,anchor,url,plain text large font,plain text small font,...) κάθε ένα από τα οποία έχει το δικό του βάρος. 26

31 Κεφάλαιο 4 Ομαδοποίηση των αποτελεσμάτων της αναζήτησης Η δυνατότητα της επαρκούς οργάνωσης των ανεκτημένων αποτελεσμάτων γίνεται πιο σημαντική τώρα που οι τεχνικές για την ανάκτηση πληροφορίας εστιάζουν πάνω σε διαδραστικές (interactive) διαδικασιές αναζήτησης. Οι τεχνικές αυτόματης κατηγοριοποίησης [5]είναι ικανές να παρέχουν την απαραίτητη οργάνωση πληροφορίας, οργανώνοντας τα ανακτημένα δεδομένα σε ομάδες απο κείμενα με κοινά θέματα. Σε αυτό το κεφάλαιο θα παρουσιάσουμε και θα συγκρίνουμε μεθόδους κατηγοριοποίησης απο την Ανάκτηση Πληροφορίας IR και την Μηχανή Εκμάθησης (Machine Learning) για την ομαδοποίηση τών αποτελεσμάτων μιας αναζήτησης. Θα συζητήσουμε ζητήματα όπως η παρουσίαση κειμένων, οι αλγόριθμοι κατηγοριοποίησης και παρουσίαση ομάδων Εισαγωγή Ένα σύστημα ανάκτησης πληροφορίας (IR) τυπικά παράγει μια αξιολογημένη λίστα κειμένων σε απάντηση της αίτησης ενός χρήστη. Αυτά τα κείμενα παρουσιάζονται στον χρήστη για εξέταση και αξιολόγηση. Αν και τα κείμενα είναι αξιολογημένα, υπάρχει ένα σημαντικό ενδεχόμενο κέρδους απο την παροχή επιπρόσθετης δομής στις μεγάλου μήκους ανεκτημένες λίστες. Ο ρόλος της οργάνωσης της πληροφορίας γίνεται όλο και πιο σημαντική στο 27

32 διαδραστικό μοντέλο της ανάκτησης, όπου η εστίαση είναι στο μέρος του χρήστη σε ένα κύκλο μορφοποίησης της ερώτησης, παρουσίασης των αποτελεσμάτων της έρευνας και επαναμορφοποίησης της ερώτησης. Μια εναλλακτική περίπτωση της αξιολόγησης είναι να διαίρεσεις (ή να ομαδοποίησεις) το ανεκτημένο σετ σε ομάδες κειμένων με παρόμοια θέματα. Για παράδειγμα, ας θεωρησουμε μια κατάσταση όπου το σύστημα παρουσιάζεται με μια γενική ερώτηση. Τα αποτελέσματα της ανάκτησης θα περιελάμβαναν μια μεγάλη ποικιλία θεμάτων που αφορούν αυτή τη γενική περιοχή. Ένα εργαλείο αυτόματης κατηγοριοποίησης θα μπορούσε να δημιουργήσει κλάσεις παρόμοιων κειμένων επιτρέπωντας στον χρήστη να εστιάσει σε κάποιο συγκεκριμένο θέμα. Θα ξεκινήσουμε αναλύωντας την τωρινή έρευνα στην ομαδοποίηση τόσο στην ανάκτηση πληροφορίας (IR) όσο και στην Μηχανή εκμάθησης (ML). Με έκπληξη διακρίνουμε ότι μόνο μερικά συστήματα χρησιμοποιούν μεθόδους ομαδοποίησης των ανακτημένων αποτελεσμάτων. Μάλιστα, δεν υπάρχει καμμία βιβλιογραφία σχετικά με προσπάθειες να αξιολογηθούν αυτές οι τεχνικές. Η ομαδοποίηση έχει επίσης μελετηθεί στην Μηχανή Εκμάθησης (Machine Learning) για ένα σχετικά μεγάλο χρονικό διάστημα και ένας μεγάλος αριθμός αλγορίθμων έχει σχεδιαστεί. Υπάρχουν, όμως, μερικές εφαρμογές αυτών των τεχνικών στην Ανάκτηση Πληροφοριών (ΙR)[27]. Υπάρχουν τέσσερα σημεία που πρέπει να εστιάσουμε: Την είσοδο του ταξινομητή, ή τις επαναπαρουσιάσεις των κειμένων. Γενικά, τα κείμενα αντιμετωπίζονται σαν διανύσματα από ζεύγη όρωνβάρους (weight-term). Παρ όλα αυτά, παραμένουν προς διερεύνηση τα ερωτήματα για το ποιούς όρους πρέπει να διαλέξουμε και αν πρέπει να χρησιμοποιηθούν όλο το κείμενο ή ένα μόνο κομμάτι του, που είναι η πηγή των όρων. Ο αλγόριθμος της κατηγοριοποίησης. Οι υπάρχουσες τεχνικές ομαδοποίησης διαφέρουν σε ακρίβεια, σε ευρωστία, σε ταχύτητα και σε απαιτήσεις αποθήκευσης. Χρειάζεται περισσότερη αξιολόγηση για να διαλέξουμε την κατάλληλη διαδικασία κατηγοριοποίησης. Η έξοδος του ταξινομητή, ή οι επαναπαρουσιάσεις των ομάδων. Η διαδικασία της κατηγοριοποίησης έχει σαν αποτέλεσμα ένα σετ απο ομάδες, όπου κάθε ομάδα περιέχει κείμενα κάποιου συγκεκριμένου θέματος. Οι ομάδες είχαν επαναπαρουσιαστεί χρησιμοποιώντας ένα 28

33 επιλεγμένο κείμενο ή λίστα όρων, αλλά δεν είναι φανερό να αυτό είναι στ αλήθεια το επιθυμητό. Η αξιολόγηση. Αφού το εργαλείο της κατηγοριοποίησης έχει σχεδιαστεί, χρειαζόμαστε τεχνικές για να αναλύσουμε και να αξιολογήσουμε την απόδοσή του ως προς την επάρκεια και την αποτελεσματικότητά. Η αξιολόγηση της αποτελεσματικότητας ενος εργαλείου διασύνδεσης (interface tool) είναι πολύ πιο δύσκολο απο το τοπικό σενάριο ανάκτησης Τεχνικές Ομαδοποίησης Ομαδοποίηση κειμένων στην Ανάκτηση Πληροφοριών Η βάση για τη χρήση ομαδοποίησης κειμένων στην Ανάκτηση Πληροφοριών (IR) είναι η Υπόθεση ομαδοποίησης του vanrijsbergen:[28] Κοντινά συσχετιζόμενα κείμενα τείνουν να είναι συνδεδεμένα με την ίδια αίτηση. Η ιδέα είναι ότι σχετιζόμενα κείμενα είναι περισσότερο όμοια μεταξύ τους από ότι τα μη σχετικά μεταξύ τους κείμενα. Αν αυτή η υπόθεση χρησιμοποιηθεί σε μια συγκεκριμένη συλλογή, τότε θα κάνει την ανάκτηση πιο αποδοτική, καθώς η κλάση που βρέθηκε θα περιέχει μόνο τα σχετιζόμενα κείμενα. Ένας άλλος τρόπος χρήσης της ομαδοποίησης των κειμένων είναι να δώσεις την ευκαιρία στον χρήστη να ψάξει ανάμεσα στην δομή της ομάδας, εξερευνώντας τις διαφορετικές περιοχές μιας συλλογής. Αυτό βοηθάει πολύ σε περιπτώσεις που ο χρήστης ψάχνει κάποια συγκεριμένη πληροφορία, αλλά έχει πρόβλημα να το εκφράσει. Υπάρχει μάλιστα η πιθανότητα, ο χρήστης να μην ψάχνει τίποτα ιδιαίτερο, αλλά απλά θέλει να εξερευνήσει τα γενικά περιοχόμενα της βάσης δεδομένων. Δύο είναι οι προσεγγίσεις που χρησιμοποιούνται για την επαναπαρουσίαση των κειμένων. Πρώτον, η ομοιότητα των διαφόρων κειμένων μετρείται από τον αριθμό των παραθεμάτων που έχουν κοινά. Ο 29

34 δεύτερος, πιο κοινός τρόπος είναι να επαναπαρουσιάσεις τα κείμενα από ένα είται αυτόματο είται σχεδιασμένο ευρετήριο όρων. Η βάση κάθε διαδικασίας κατηγοριοποίησης είναι κάποιο μέτρο συσχέτισης ανάμεσα σε αντικείμενα. Συνήθως Είναι μια δυαδική σχέση που χαρακτηρίζει την διαφορετικότητα ανάμεσα σ ένα ζεύγος κειμένων. Κάποιος, μπορεί επίσης να θεωρήσει την συνάρτηση της διαφορετικότητας ως μια συνάρτηση «απόστασης» σε ότι αφορα το υπερδιάστημα μεταξύ των κειμένων. Ανεξάρτητα με ποιά μέθοδο ομοιότητας χρησμοποιείται, δύο βασικές μέθοδοι ομαδοποίησης έχουν δημιουργηθεί για να συγκεντρώσουν παρόμοια κείμενα: η ιεραρχική και μη ιεραρχική. Η μη ιεραρχική μέθοδος διαιρεί μια συλλογή σε μια σειρά από υποομάδες. Η πιο κοινή προσέγγιση προσπαθεί να διαμερίσει Ν αντικείμενα σε Κ κλάσσεις με έναν τρόπο που θα ελαχιστοποιούσε την απόσταση των αντικειμένων σε Κ κέντρα βάρους. Αυτές οι μέθοδοι είναι ελκυστικές λόγω του χαμηλού κόστους υπολογισμών που είναι της τάξης Ο(Ν) και Ο(NlogN). Παρ όλα αυτά, η δομή που προκύπτει εξαρτάται απο την επιλογή των Κ αντικειμένων και συχνά αποτυγχάνει να αντανακλάσει την υφέρπουσα δομή του συνόλου των κειμένων. Η ιεραρχική μέθοδος έχει σαν αποτέλεσμα μια δομή που μοιάζει δεντρική, όπου οι ομάδες των συσχετιζόμενων κειμένων είναι φωλιασμένες μέσα σε μαγαλύτερες ομάδεςπου περιέχουν κείμενα που είναι λιγότερα όμοια. Υπάρχουν δυο στρατηγικές διαθέσιμες για την ιεραρχική ομαδοποίηση. Μια στρατηγική διαίρεσης προχωρά διαιρώντας την αρχική ομάδα σε μικρότερα και μικρότερα σύνολα κειμένων. Μια ομαδική στρατηγική προχωρά χτίζοντας το από κάτω προς τα πάνω δέντρο κατηγοριοποίησης, συγκεντρώνοντας απλά κείμενα μέσα στις ομάδες, έχοντας ολόκληρη τη συλλογή σαν τη ρίζα δέντρου, μέχρι το τέλος. Το σύστημα Scatter/Gather [29] είναι ένα παράδειγμα της προσέγγισης με αναζήτηση στην διαδικασία της ανάκτησης. Χρησιμοποιεί γρήγορη ομαδοποίηση κειμένων για να παράγει επικεφαλίδες που μοιάζουν σαν περιεχόμενα της μεγάλης συλλογής των κειμένων. Κατα τη διάρκεια μιας περιόδου με το σύστημα, ένα σετ ομάδων εμφανίζεται στον χρήστη. Διαλέγει μερικές από αυτές ως πιο ενδιαφέρουσες. Τα κείμενα σε αυτές τις κλάσσεις συγκεντρώνονται και επανομαδοποιούνται απ ευθείας, για να παράγουν ένα 30

35 σύνολο ομάδων που θα καλύπτουν την μειωμένη συλλογή. Στην [30] αυτή η τεχνική χρησιμοποιείται για να ομαδοποιήσει ανεκτημένα αποτελέσματα Η ομαδοποίηση στην Μηχανή Εκμάθησης (Machine Learning) Η Μηχανή Εκμάθησης ασχολείται με την βελτίωση της εξαγωγής συμπερασμάτων αυτοματοποιώντας την απόκτηση γνώσης και την εκλέπτυνση. Αυτή η διαδικασία μπορεί να περιγραφεί σαν γενίκευση συγκεκριμένων περιπτώσεων. Ξεκινά με αντικείμενα και δημιουργεί μια ή περισσότερες κλάσεις και κατηγορίες.ένα συμπερασματικό στοιχείο μπορεί να χρησιμοποιήσει αυτές τις κατηγορίες για να δημιουργήσει συμπεράσματα για νέα παραδείγματα που βασίζονται σε τμηματική πληροφορία. Στον τομέα που οι ενέργειες δεν είναι προ-ομαδοποιημένες, ένα αυτόματο επαγωγικό σύστημα που μαθαίνει από την παρατήρηση (σε αντίθεση με την μάθηση απο παραδείγματα) αναγνωρίζοντας την κανονικότητα ανάμεσα στα αντικείμενα και οργανώνοντας τα σε μια ιεραρχία κλάσεων. Αυτό το έργο της μάθησης ονομάστηκε εννοιολογική ομαδοποίηση απο τον Michalski.[31] Στην ανάλυση της ομαδοποίησης, το μέτρο της ομοιότητας ανάμεσα σε δύο αντικείμενα χαρτογραφεί την «απόσταση» μεταξύ δύο συμβολικών περιγραφών αντικειμένων σε ένα απλό αριθμό. Η χαρτογράφηση είναι ανεξάρτητη με τα συμφραζόμενα και η ομοιότητα μεταξύ δύο αντικειμένων εξαρτάται μόνο από τις ιδιότητες αυτών των δύο αντικειμένων. Αυτή η μέθοδος δεν επιρρεάζεται από το περιβάλλον που καλύπτει τα αντικείμενα ή όποιους άλλους εξωτερικούς παράγοντες που μπορεί να είναι χρήσιμοι για να ερμηνεύσουν τη δομή του αντικειμένου. Τα συστήματα εννοιολογικής ομαδοποίησης προσπαθούν να αναγνωρίσουν σίγουρες εννοιολογικές δομές. Για κάθε ομάδα, κάθε τέτοιο σύστημα, δημιουργεί μια εννοιολογική περιγραφή που χαρακτηρ ζει το περιεχόμενο της ομάδας. Οι μέθοδοι εννοιολογικής ομαδοποίησης δεν σχηματίζουν ομάδες αν δεν διαθέτουν δομές που παρέχουν κάποια ολοκληρωμένη νοητικά ερμηνεία των δεδομένων. Η εννοιολογική ομαδοποίηση έχει τόσο θετικά όσο και αρνητικα χαρακτηρισιτικά σε σχέση με την οπτική της ανακτησης πληροφορίας. 31

36 4.3. Αλγόριθμοι Οι αλγόριθμοι που θα παρουσιάστουν είναι ιεραρχικοί και ομαδικοί. Έχουν πολυπλοκότητα χρόνου Ο(n 2 ) όπου n είναι ο αριθμός των ανεκτημένων κειμένων. Η επιλογή προήλθε από την ιδέα πως αυτοί οι αλγόριθμοι είναι γενικα πιο ισχυροί και ανεξάρτητοι από τη σειρά με την οποία εμφανίζονται τα αντικείμενα. Αν και ο χρόνος επεξεργασίας αυξάνεται γεωμετρικά με την αύξηση του αριθμού των κειμένων, αυτό γίνεται αποδεκτό γιατι, δεν αναμένεται το n να ξεπεράσει τα 200 έγγραφα. Θεωρείται μάλλον ανώφελο να παρουσιαστει ο χρήστης με μια βαθεία ομαδοποιημένη δομή. Κατ αρχήν στα προκαταρκτικά πειράματα βρέθηκε πως τα μεγάλα δέντρα ομαδοποίησης είναι πολύ ενοχλητικά. Ενα «ψηλό» δέντρο ομαδοποίησης περιέχει ένα μεγάλο αριθμό κλάσεων μεμ μόνο λίγα αντικείμενα μέσα. Όχι μόνο ο χρήστης σπαταλά πολύ χρόνο για να καταλάβει το περιεχόμενο των μικρών κλάσεων, αλλα και η προσοχή αποσπάται στην κατανόηση των σχέσεων μεταξύ των κλάσεων και των υποκλάσεων. Έπειτα, ο αλγόριθμος ομαδοποίησης δεν είναι τέλειος και κάνει λάθη. Όσο πιο βαθεια πάμε στην ιεραρχία της ομαδοποίησης, τόσο περισσότερα παρόμοια κείμενα θα καταγράψουμε.όσο πιο παρόμοια είναι τα κείμενα, τόσο πιο δύσκολο είναι για τον αλγόριθμο να τα ομαδοποιήσει με ακρίβεια. Αυτό αυξάνει τις πιθανότητες ο αλγόριθμος να τοποθετήσει σε λάθος θέσεις τα κείμενα και αυτό τελικα να οδηγήσει σε όλο και πιο μπερδεμένες δομές υποδέντρων. Στο τέλος, μια μεγάλη δομή απλά γεμίζει το χώρο της οθόνης, και κάνει πιο δύσκολο στον χρήστη να ανακαλύψει το τελικό αποτέλεσμα. Έτσι οριοθετούμε κάθε αλγόριθμο να παράγει ομάδες χωρίς καμμία ιεραρχία υποκλάσεων. Είναι επίσης αχρηστο να ομαδοποιήσεις κάθε ένα απο τα ανεκτημένα κείμενα. Αυτο μπορεί να παρατηρηθεί για παράδειγμα σε μια βάση δεδομένων με τέτοια διαίρεση περιεχομένων όπως αυτή της WallStreet87, όπου σχεδόν το ¼ με 1/3 των ανεκτημένων κειμένων αντιπροσωπευουν ένα μοναδικό υποθέμα.μια προσπάθεια να συγκεντρώσεις αυτά τα έγγραφα οδηγεί στη δημιουργία πολύ δυνατών και αμφιλεγόμενων κλάσεων και μεταλλάσει το δέντρο ομαδοποίησης Απλός-Συνδεσμος (Single-link) 32

37 O Both van Rijsbergen και ο Willet [28,32], έδωσαν το όνομα στη μέθοδο του απλού-συνδέσμου επειδή αυτή παράγει καλά αποτελέσματα για την ομαδοποίηση των κειμένων. Ο αλγόριθμος φέρνει μαζί κείμενα των οποίων η ομοιότητα ξεπερνά ένα προκαθορισμένο κατώφλι. Για να ανήκει ένα αντικείμενο σε μια ομάδα πρέπει να είναι παρόμοιο με τουλάχιστον ένα από τα υπόλοιπα μέλη της ομάδας. Για να χαρακτηρίστει η ομοιότητα μεταξύ ενός ζεύγους κειμένων χρησιμοποιείται ένας συντελεστής συνημιτόνου CLASSIT/AGGLOM Το πιο γνωστό εννοιολογικό σύστημα ομαδοποίησης είναι το COBWEB.[33,34] Δημιουργεί ομάδες που χαρακτρίζονται από μια λίστα τιμών με εικονικές ιδιότητες και από πιθανότητες που σχετίζονται με αυτές. Η συνάρτηση αξιολόγησης του COBWEB s, δεν υπολογίζει την ομοιότητα μεταξύ ανεξάρτητων αντικειμένων, αλλά την ποιότητα ολόκληρου του τμήματος. Στα πειράματα, χρησιμοποιήθηκε ο διάδοχος του COBWEB, που επεκτείνει αυτές τις ιδέες σε τιμές συνεχών ιδιοτήτων. Έπρεπε να τροποποιηθεί η συνάρτηση αξιολόγησης του CLASSIT για να υπολογίζει τους χαμένους όρους: K Ik I P( C ) 1 ( ) 1 1 ( ) 1 K P A LK ick P A L i ik i k i i CU C1, C2,..., C K K όπου PC ( k ) είναι η πιθανότητα να παρατηρήσεις μια περίπτωση από τη κλάση C K, P( A C ) παρατηρηθεί στη κλάσση i K και PA ( i ) είναι οι πιθανότητες μια ιδιότητα θα C K και στο σετ των δεδομένων, αριθμοί των ιδιοτήτων στην δοσμένοη κλάσση K είναι ο αριθμός των κλάσεων σε αυτό το κομμάτι, I K και I είναι οι C K και στο σετ των δεδομένων, i και ik είναι οι σταθερές αποκλίσεις των τιμών των ιδιοτήτων για μια δοσμένη ιδιότητα σε μια δοσμένη κλάσση στο σύνολο των δεδομένων. 33

38 Ο αλγόριθμος CLASSIT δημιουργεί δέντρα κατηγοριοποίησης που είναι σε μεγάλο βαθμό εξαρτώμενα από τη σειρά με την οποία τα αντικείμενα παρουσιάζονται στο σύστημα. Ο Fisher και οι συνεργάτες [35] του πρότειναν τον AGGLOM, μια έκδοση του COBWEB, που δεν έχει αυτή την έλλειψη. Ο αλγόριθμος αυτός συνδιάστηκε με την τροποποιημένη συνάρτηση και έδωσε το όνομα στη νεα διαδικασία, την γνωστη CLASSIT/AGGLOM ΙnCLASS Μαζί με τους αλγόριθμους CLASSIT/AGGLOM και τον single-link υπάρχει και μια μεικτή προσέγγιση. Η βασική διαφορά από τον single-link είναι ότι για κάθε ομάδα, δημιουργεί μια περιγραφή της ομάδας μαζεύοντας τα προφίλ των μελών της. Όπως και στον AGGLOM, ο αλγόριθμος ξεκινά δημιουργώντας μια μοναδική ομάδα για κάθε κείμενο. Στη συνέχεια προχωρά βρίσκοντας και ενώνοντας τις πιο κοινές ομάδες. Αντί να αξιολογεί τα συγκεκριμένα κομμάτια, ο αλγόριθμος υπολογίζει την ομοιότητα των εσωτερικών ομάδων χρησιμοποιώντας τον συντελεστή του συνημιτόνου. Ένα προκαθορισμένο κατώφλι οριοθετεί τα κείμενα που είναι τόσο ανόμοια που δεν μπορούν να ανήκουν στην ομάδα Περιγραφή ομάδας Για να περιγραφεί μια ομάδα επιλέγεται ένας αριθμός από τους πιο σημαντικούς όρους από τα μέλη και παρουσιάζεται στον χρήστη. Οι «σημαντικοί» όροι μπορούν να καθοριστούν με διάφορους τρόπους. Αρχικά, μπορούν να επιλεγούν οι πιο συχνοί όροι (οι όροι με το υψηλότερο ) από την ομάδα. Το πλεονέκτημα αυτής της μεθόδου είναι η ανεξαρτησία της απο τον αλγόριθμο ομαδοποίησης. Μια άλλη προσέγγιση είναι να εναποθέσουμε στην συνάρτηση αξιολόγησης να κατατάξει τους όρους. Για παράδειγμα, ας θεωρήσουμε το σύστημα CLASSIT/AGGLOM. Μια ομάδα μπορεί να οριστεί σαν κομμάτι των μελών της. Η κατηγορία της χρησιμότητας χαρακτηρίζει όλη την ποιότητα του τμήματος και, για αυτό το λόγο, περιγράφει την ποιότητα και της ίδιας της ομάδας. Ξαναγράφουμε την κατηγορία της χρησιμότητας ως εξής: 34

39 1 CU C, C,..., C CT 1 2 K IK I i i, όπου K I CT ( ) ( ) 1 ( ) 1 i P CK I P A k i CK P A i k ik i Οι όροι μπορουν να βαθμολογηθούν σύμφωνα με τις τιμές των CT i τους, χαρακτηρίζοντας την είσοδό τους στην συνολική ποιότητα της ομάδας. Το εναλλακτικό είναι να αντικαταστήσουμε τους σημαντικούς όρους με σημαντικες φράσεις. Μια φράση ορίζεται σαν μια συνέχεια από ένα ή περισσότερα ουσιαστικά. Η βασική ιδέα είναι ότι οι φράσεις γενικά μεταφέρουν πιο περιεκτική πληροφορία από τους ανεξάρτητους όρους. Για να επιλεγούν οι φράσεις απ ο τα κείμενα χρησιμοποιείται ο InFINDER. Αποσπάται κάθε φράση που φαίνεται να είναι σε περισσότερο από το 50% των κειμένων του ανεκτημένου σετ 35

40 ΚΕΦΑΛΑΙΟ 5 ΞΕΝΕΣ ΜΗΧΑΝΕΣ ΑΝΑΖΗΤΗΣΗΣ - ΚΑΤΑΛΟΓΟΙ Ενδεικτικά παραθέτουμε τις σημαντικότερες μηχανές αναζήτησης και τους ηλεκτρονικούς καταλόγους που χρησιμοποιούν περισσότερο οι χρήστες του internet στην Ελλάδα και το εξωτερικό. Ίσως η πιο σημαντική και αξιόπιστη μηχανή αναζήτησης παγκόσμια. Αποτελείται από ένα τεράστιο δίκτυο υπολογιστών που συγχρονίζονται μια φορά κάθε μήνα (Google dance) και παρέχουν το 70% σχεδόν των αναζητήσεων παγκοσμίως. Η παράθεση των αποτελεσμάτων γίνεται αξιοκρατικά ενώ οι όποιες προβεβλημένες πληρωμένες καταχωρήσεις βρίσκονται στα δεξιά και δεν εμποδίζουν τον αναγνώστη. Σημαντικό στοιχείο αποτελεί το ότι η μηχανή είναι διαθέσιμη σε όλες τις γλώσσες και υποστηρίζει θαυμάσια τις αναζητήσεις και στα Ελληνικά! Ο μεγάλος ανταγωνιστής του google πέρασε σε δεύτερη μοίρα μετά από αρκετά χρόνια πρωτοπορίας. Στην παρούσα του μορφή είναι περισσότερο «κατάλογος» παρά μηχανή καθώς οι εγγραφές τους στηρίζονται σε ανθρώπινη παρέμβαση. Τα αποτελέσματα είναι ένα μείγμα από πληρωμένες καταχωρήσεις, διαφημίσεις και δωρεάν εγγραφές. Ο μεγάλος χρόνος που μεσολαβεί για την εμφάνιση νέων καταχωρήσεων αποτελεί τροχοπέδη και μεγάλο μειονέκτημα. Η προσπάθεια της Microsoft να καθιερωθεί και σε αυτό το χώρο. Μια αρκετά φιλόδοξη πορεία με εξαγορές μικρότερων εξειδικευμένων εταιριών που όμως ακόμα δεν έφτασε στα επιθυμητά αποτελέσματα. Τα αποτελέσματα σε αυτή τη μηχανή αναζήτησης είναι αρκετά αξιόπιστα. Αρνητικό στοιχείο αποτελεί και εδώ ο μεγάλος χρόνος που μεσολαβεί για πρωτοεμφανιζόμενες καταχωρήσεις. 36

41 Από τις πρώτες μηχανές αναζήτησης που έγιναν γνωστές στην Ελλάδα λόγω του ονόματος και του συνειρμού με το άγριο τετράποδο. Σήμερα έχει πέσει σε δεύτερη μοίρα με μόλις το 3% των αναζητήσεων στον Ελλαδικό χώρο. Και αυτή από τις παλιές μηχανές αναζήτησης. Σήμερα κατέχει ένα ελάχιστο ποσοστό στον Ελλαδικό χώρο από παλιούς χρήστες του internet. Τα αποτελέσματα της κρίνονται αναξιόπιστα και ανούσια καθώς τοποθετεί στις πρώτες θέσεις τις.com εταιρίες και μετά σε ακανόνιστη σειρά τα.gr domain. Αξιόλογη μηχανή που όμως ανανεώνεται πολύ αργά με αποτέλεσμα οι εγγραφές της να είναι ξεπερασμένες. Τα στοιχεία της τα συγκεντρώνει από το Yahoo. Χρησιμοποιείται ελάχιστα από τους Έλληνες χρήστες. Ελληνικές μηχανές αναζήτησης - κατάλογοι Ο πληρέστερος κατάλογος στον Ελληνικό χώρο έχει την υπογραφή, την εγγύηση και την υποστήριξη του Δημοσιογραφικού Οργανισμού Λαμπράκη. Πρόκειται για ένα τμήμα του γνωστού portal που παρουσιάζει τα περιεχόμενα με αλφαβητική σειρά μέσα σε επαγγελματικές υποκατηγορίες χωρίς γεωγραφική κατανομή. Η αναζήτηση με λέξεις κλειδιά χρειάζεται ακόμα βελτίωση. Μια από τις καλύτερες ιστοσελίδες στον Ελλαδικό χώρο. Ξεκίνησε από γνώστες του internet και όπως όλα τα καλά πράγματα εξαγοράστηκε. Σήμερα εξακολουθεί να είναι ένα από τα πιο καλοστημένα portal στην Ελλάδα που βρίσκεται μέσα στις πρώτες θέσεις από πλευράς επισκέψεων. Ο κατάλογος που έχει δεν προσφέρει πάντα ικανοποιητικά αποτελέσματα καθώς δεν γίνεται έλεγχος για μεταβολές στις ιστοσελίδες που καταχωρήθηκαν. Ο κατάλογος της Forthnet για τον Ελληνικό χώρο. Μια αρκετά ικανοποιητική δουλειά με γεωγραφική κατανομή των εγγραφών. Η παράθεση των εγγραφών γίνεται κατόπιν αξιολόγησης ενώ για ορισμένες εγγραφές η ανθρώπινη παρέμβαση μεγαλουργεί. Παρόλα αυτά όλοι έχουν μια θέση, πρώτα ιεραρχικά και μετά αλφαβητικά. Το θετικό είναι ότι λόγω μεγέθους ISP (η Forthnet είναι ο δεύτερος μεγαλύτερος provider στην Ελλάδα) ο κατάλογος έχει μεγάλη επισκεψιμότητα και χρησιμοποιείται από τους Έλληνες χρήστες. 37

42 Η προσπάθεια των Ελλήνων της διασποράς. Πρόκειται για την καλύτερη ίσως Ελληνική μηχανή αναζήτησης και από τις πιο παλιές. Όταν οι άλλες έσβησαν σαν φιλόδοξα πυροτεχνήματα που δεν είχαν χρηματοδότηση, ο Phantis συνεχίζει και σήμερα ακάθεκτος και ενημερωμένος. Προτείνεται ανεπιφύλακτα. Η μηχανή αναζήτησης της Otenet. Αρκετά ικανοποιητική προσπάθεια που και αυτή έχει τους οικονομικούς πόρους να εξελιχθεί. Τα αποτελέσματα είναι ενημερωμένα αλλά αργεί χαρακτηριστικά η διαδικασία αναζήτησης. Σήμερα υπάρχουν δεκάδες χιλιάδες μηχανές αναζήτησης και ηλεκτρονικοί κατάλογοι παγκόσμια. Οι περισσότεροι αποτελούν μια ακόμα προσπάθεια εισροής εσόδων μικρών και μεγάλων εταιριών παροχής υπηρεσιών internet. Οι εταιρίες που έλυσαν το οικονομικό πρόβλημα τους προχώρησαν και σε πιο σοβαρές και επαγγελματικές λύσεις με τα αναμενόμενα αποτελέσματα. Σκοπός του σύγχρονου σχεδιαστή ιστοσελίδων είναι να ακολουθεί τις κατευθύνσεις που ορίζουν οι μεγάλες και σοβαρές μηχανές αναζήτησης και οι ηλεκτρονικοί κατάλογοι. Δεν έχει νόημα η εμφάνιση σε κάποια μηχανή που έχει διάρκεια ζωής μερικούς μήνες. Αντίθετα κάτι τέτοιο μπορεί να φέρει τα αντίθετα αποτελέσματα μειώνοντας το κύρος της ιστοσελίδας που προβάλλεται.. Τι είναι η Web Εφαρμογή; Για να γίνει κατανοητό τι είναι μια web εφαρμογή θα πρέπει πρώτα να αναφέρουμε το τι είναι μια εφαρμογή. Εφαρμογή ονομάζεται το λογισμικό το οποίο εγκαθίσταται σε έναν ηλεκτρονικό υπολογιστή και έχει σχεδιαστεί ώστε να πραγματοποιεί συγκεκριμένες διεργασίες, να επιτυγχάνει συγκεκριμένους στόχους και να εξάγει στον χρήστη την επιθυμητή πληροφορία ή αποτέλεσμα. Η Web εφαρμογή είναι το ίδιο με την μόνη διαφορά ότι δεν εγκαθίσταται σε έναν ή περισσότερους ηλεκτρονικούς υπολογιστές αλλά είναι προσβάσιμο με έναν φυλλομετρητή (web browser) μέσω του internet ή κάποιου τοπικού δικτύου. Αυτό που διαχωρίζει μια web εφαρμογή από μια ιστοσελίδα είναι ότι ο βασικός σκοπός μιας ιστοσελίδας είναι να πληροφορήσει τον χρήστη προβάλλοντας κείμενο, εικόνες ή video, ενώ ο σκοπός μιας web εφαρμογής είναι να προσφέρει στον χρήστη ένα περιβάλλον εργασίας στο οποίο μπορεί να πάρει αλλά και να δώσει πληροφορίες, να εκτελέσει διεργασίες, να επεξεργαστεί δεδομένα και να πετύχει κάποιο στόχο. Ένα πολύ καλό και 38

43 γνωστό παράδειγμα μιας web εφαρμογής είναι το Hotmail στο οποίο ο χρήστης δεν είναι απλά ένας επισκέπτης αλλά αλληλεπιδρά με το σύστημα. Η web εφαρμογή δεν έρχεται να υποβαθμίσει την έννοια της ιστοσελίδας η οποία είναι πλέον ανεκτίμητη και αναντικατάστατη, αλλά να προσφέρει ακόμα περισσότερες λύσεις σε εξειδικευμένες ανάγκες. Η web εφαρμογή είναι το απαραίτητο εργαλείο για τις επιχειρήσεις που θέλουν να προσφέρουν ακόμα πιο προηγμένες υπηρεσίες στους πελάτες τους ή στους συνεργάτες τους. Η web εφαρμογή μπορεί να είναι προσβάσιμη στο ευρύτερο κοινό μέσω του internet ή μόνο στο προσωπικό της επιχείρησης μέσω ενός ιδιωτικού τοπικού δικτύου. ΕΝΟΤΗΤΑ 2 ΒΑΣΙΚΕΣ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET 39

44 ΕΙΣΑΓΩΓΗ Η έννοια της λεωφόρου των πληροφοριών (information highway) ταυτίζεται με το διαδίκτυο (Internet), το μεγαλύτερο παγκόσμιο δίκτυο το οποίο συνδέει εκατομμύρια υπολογιστές σε όλη τη γή. Το Internet είναι απόγονος του ARPAnet, ενός δικτύου υπολογιστών το οποίο δημιουργήθηκε το 1967 από το Advanced Research Project Agency για να διευκολύνει την άμυνα, τους επιστήμονες και τα Πανεπιστήμια στην ανταλλαγή δεδομένων και πληροφοριών. Ο σκοπός του επεκτάθηκε στο τέλος του 1980 όταν το Ίδρυμα Ερευνών των Ηνωμένων Πολιτειών θέλησε τα ακαδημαϊκά ινστιτούτα όλων των χωρών να έχουν πρόσβαση σε υπερυπολογιστές. Ο ευκολότερος τρόπος για να επιτευχθεί αυτό ήταν μέσω του ARPAnet. Αργότερα, τα Πανεπιστήμια σε άλλες χώρες άρχισαν να δημιουργούν συνδέσεις και έτσι το δίκτυο έγινε παγκόσμιο. Ένας από τους σημαντικότερους λόγους επέκτασης του Internet είναι το γεγονός ότι οποιοσδήποτε προσωπικός υπολογιστής μπορεί να συνδεθεί άμεσα και να αποτελέσει κόμβο του δικτύου. Οι ταχύτητες μετάδοσης κυμαίνονται στο διάστημα 2400 bps και 19 kbps εάν η σύνδεση πραγματοποιηθεί με χρήση τηλεφώνου και διαμορφωτή-αποδιαμορφωτή (modem). To Internet αποτελείται από υψηλής ταχύτητας γραμμές δεδομένων συνδεδεμένων με δρομολογητές αρχιτεκτονικής RISC. Οι συνδέσεις αυτές υψηλής ταχύτητας και ισχύος σχεδιάστηκαν όχι μόνο για να προάγουν την έρευνα αλλά και να επιτρέψουν στον επιχειρηματικό κόσμο να παρέχει υψηλότερης ποιότητας υπηρεσίες υγείας, εκπαίδευσης, εμπορίου και πολλών άλλων δραστηριοτήτων. Η παρούσα καλωδιακή τεχνολογία των twin copper cables που είναι διαθέσιμη από τα τηλεφωνικά δίκτυα επιτρέπει την μετάδοση αρκετών εκατοντάδων χιλιάδων ψηφιοποιημένων δυαδικών ψηφίων ανά δευτερόλεπτο σε εύρος αρκετών χιλιομέτρων και η τεχνολογία καλωδίωσης οπτικών ινών μπορεί να χειριστεί αποτελεσματικά την άμεση σύνδεση του 40

45 χρήστη μέσω τηλεφώνου με μία απομακρυσμένη βάση δεδομένων όπως επίσης την παρακολούθηση τηλεόρασης και video στην οθόνη του υπολογιστή. To σημαντικό πλεονέκτημα της τεχνολογίας καλωδίωσης οπτικών ινών είναι ότι η κατανεμημένη οπτική amplification μειώνει τους ηλεκτρονικούς repeaters που απαιτούνται στο υβριδικό (π.χ. οπτικό και ηλεκτρονικό) δίκτυο. Το ATM (Asynchronous Transfer Mode) είναι μια τεχνολογία επικοινωνιών η οποία υπόσχεται να επιλύσει αρκετά από τα προβλήματα μετάδοσης που υπάρχουν στα σημερινά δίκτυα επικοινωνιών. Αποτελεί κρίσιμο παράγοντα για την επιτυχία της τεχνολογίας ATM το ερώτημα του πως αυτή θα λειτουργήσει συνεργαζόμενη αποδοτικά (interoperate) με τις υπάρχουσες τεχνολογίες καλωδίωσης των τοπικών δικτύων. Αρκετές από τις εφαρμογές της αφορούν την εξομοίωση τοπικών δικτύων Ethernet και Token Ring σε πλατφόρμα ATM (ATM infrastructure). O παγκόσμιος ιστός αποτελεί την γενική υποδομή για την παροχή πληροφοριών και υπηρεσιών. Οι απαιτήσεις και οι προσδοκίες των προμηθευτών και των καταναλωτών πληροφοριών οδηγούν την τεχνολογία www σε υψηλότερο επίπεδο ποιότητας παρουσιάσεων, συμπεριλαμβανομένων ενεργών περιεχομένων (active contents) και βελτιωμένης χρησιμότητας της υποδομής κατανεμημένων υπερμέσων. Αυτή η τεχνολογική εξέλιξη, παρόλα αυτά δεν υποστηρίζεται από κατάλληλες μεθοδολογίες web σχεδίασης. Η ανάπτυξη κόμβων web συνήθως πραγματοποιείται χωρίς να ακολουθεί μια καλά καθορισμένη διαδικασία και υστερεί σε κατάλληλα εργαλεία υποστήριξης. Επιπλέον, οι τεχνολογίες web είναι αρκετά ισχυρές και αρκετά δύσκολες με αποτέλεσμα η κατανόηση της δομής ενός σύνθετου κόμβου web και η διαχείριση της εξέλιξης του να αποτελεί σύνθετο και δύσκολο έργο. Η διαδικασία ανάπτυξης ενός κόμβου web αποτελείται από τα στάδια ανάλυσης απαιτήσεων, σχεδίασης και υλοποίησης σε μια γλώσσα υψηλού επιπέδου. Οι εφαρμογές τηλεματικής που παρέχονται σήμερα στο πλαίσιο της τεχνολογίας web είναι:computer Integrated Globally Distributed Manufacturing, Electronic Commerce, Just in Time Manufacture, Video on 41

46 Demand, Education, Health Care, Paying bills electronically, Electronic mails, Multimedia & Work World Wide Web O Web 1 αναπτύχθηκε αρχικά από ερευνητές στον CERN. Ο Web αποτελεί τρόπο οργάνωσης και προσπέλασης σε πραγματικό χρόνο (on line) περιεχομένου πολλαπλών μέσων (multiple media) χρησιμοποιώντας σχέσεις υπερσυνδέσμων (hyperlinked relations) στο Internet. O Web αποτελεί προσπάθεια ολοκλήρωσης όλων των βασικών πρωτοκόλλων και εφαρμογών στο Internet σε μια εύκολη στη χρήση διεπαφή. Ο Web επίσης υποστηρίζει τα παραδοσιακά πρωτόκολλα του Internet όπως τα Telnet, FTP, Gopher και SMTP. Με τον τρόπο αυτό μπορεί να είναι η πλατφόρμα επικοινωνίας (front end) για όλη την πληροφορία που είναι διαθέσιμη στο Internet. Tο αρχικό πρωτόκολλο του Web είναι το HTTP και χρησιμοποιείται από το To HTTP είναι πρωτόκολλο επιπέδου εφαρμογής (applicationlevel protocol) για κατανεμημένα πληροφοριακά συστήματα συνεργασίας υπερμέσων. Είναι ένα γενικευμένο αντικειμενοστραφές πρωτόκολλο που μπορεί να χρησιμοποιηθεί για αρκετά έργα όπως είναι οι εξυπηρετητές ονοματολογίας (name servers) και τα κατανεμημένα συστήματα αντικειμένων (distributed object management systems) μέσω επεκτάσεως των μεθόδων υποβολής αιτημάτων (request methods). Ένα χαρακτηριστικό του HTTP είναι η πληκτρολόγηση και η διαπραγμάτευση της αναπαράστασης των δεδομένων που επιτρέπει στα συστήματα να φτιαχτούν ανεξάρτητα από τα δεδομένα τα οποία μεταδίδονται. Η Hypertext Markup Language (HTML) αποτελεί μια απλή μορφή δεδομένων που χρησιμοποιείται για τη δημιουργία εγγράφων υπερκειμένων που είναι μεταφέρσιμα από μια πλατφόρμα σε άλλη. Τα έγγραφα HTML είναι έγγραφα της Standard Generalized Markup Language (SGML) με γενικευμένη σημασιολογία κατάλληλη για αναπαράσταση πληροφοριών σε ένα μεγάλο εύρος περιοχών. 1 T. Berners-Lee et al. World Wide Web: The Information Universe, Elect. Networking, vol.1, no. 2, Spring

47 Εικόνα 1: Μοντέλο πελάτη/εξυπηρετητή στην ίδια μηχανή Εικόνα 2: Μοντέλο πελάτη/εξυπηρετητή σε διαφορετικές μηχανές Ο Web βασίζεται στην αρχιτεκτονική πελάτη/εξυπηρετητή και βασικά λειτουργεί ως εξής: τα έγγραφα υπερκειμένων που είναι διαθέσιμα στον Web 43

48 προετοιμάζονται σε HTML και είναι διαθέσιμα μέσω ενός Web εξυπηρετητή. Οι χρήστες που επιθυμούν να ανακτήσουν έγγραφα μπορούν να το επιτύχουν χρησιμοποιώντας έναν Web client (Web browser, e.g. Netscape, Internet Explorer, Mosaic) o οποίος πραγματοποιεί σύνδεση με τον Web server που περιέχει τα έγγραφα. Υπάρχει μέσω του browser δυνατότητα ανάκτησης κειμένου, γραφικών, ήχου και κινούμενων εικόνων. Αποτελεί μέσο άμεσης επικοινωνίας ανάμεσα στον χρήστη και τις μηχανές. Εικόνα 3: WWW browser με WWW εξυπηρετητή 1.2. Common Gateway Interface (CGI) Το common gateway interface (CGI) αποτελεί πρότυπο για την διεπαφή εξωτερικών εφαρμογών με εξυπηρετητές Web. Eνα έγγραφο HTML το οποίο ανακτάται από έναν Web daemon είναι στατικό, δηλαδή υπάρχει σε μια σταθερή κατάσταση (ένα αρχείο κειμένου το οποίο δεν μεταβάλλεται). Ένα πρόγραμμα CGI, εκτελείται σε πραγματικό χρόνο και μπορεί να εξάγει δυναμική πληροφόρηση. Για παράδειγμα ας υποθέσουμε ότι επιθυμείτε να δημοσιοποιήσετε μια UNIX βάση δεδομένων στον Web για να επιτρέψετε σε ανθρώπους απο όλον τον κόσμο να υποβάλλουν αιτήματα αναζήτησης σε αυτήν. Βασικά χρειάζεστε να δημιουργήσετε ένα πρόγραμμα CGI το οποίο θα εκτελέσει ο Web daemon για να μεταδώσει πληροφορία στην μηχανή της βάσης δεδομένων (database engine) και για να παραλάβει τα αποτελέσματα της αναζήτησης και να τα εμφανίσει στον πελάτη. Αυτό είναι παράδειγμα μιας gateway και έτσι ακριβώς προήλθαν τα CGI. Στην επόμενη εικόνα παρουσιάζεται η αρχιτεκτονική του Web με CGI. 44

49 Εικόνα 4: Η αρχή του Common Gateway Interface Τα CGI αποτελούν την γέφυρα ανάμεσα στον HTTP εξυπηρετητή, την βάση δεδομένων και άλλες πηγές πληροφοριών. Ο πελάτης μπορεί να εκτελέσει το πρόγραμμα που βρίσκεται στον εξυπηρετητή και το οποίο ονομάζεται «πρόγραμμα CGI». O HTTP server μπορεί να δημιουργήσει ένα έγγραφο HTML δυναμικά μέσω εκτέλεσης του CGI προγράμματος και να απαντήσει στον πελάτη. Πολλές γλώσσες προγραμματισμού μπορούν να δημιουργηθούν για την σχεδίαση των CGI προγραμμάτων όπως είναι η C, η C++, η Perl, η BASIC, η Java και άλλες. Το ζήτημα είναι ότι επιθυμούμε να χρησιμοποιήσουμε την πιό αξιόπιστη γλώσσα για την υλοποίηση. Στον browser χρειάζεται να επικαλεστούμε ένα URL (π.χ. προκειμένου να εκτελεστεί το CGI πρόγραμμα. Μόλις ο εξυπηρετητής λάβει το αίτημα εκτελεί το πρόγραμμα query.cgi. Τα CGI δυναμικά δημιουργούν ένα HTML output κατόπιν αιτήματος του πελάτη και στη συνέχεια ο server απαντά με το HTML output στον browser Oλοκλήρωση βάσεων δεδομένων στον WWW Ένας τρόπος χρήσης CGI δεδομένων 2. είναι η ανάκτηση πληροφοριών από μια βάση 2 J. Rowe, Building Internet Database Servers with CGI, Sams.net, 1996, pp

50 Εικόνα 5: Εφαρμογή WWW με CGI H διεπαφή του CGI δέχεται δεδομένα από τον client (web browser) και τα μεταφράζει στο στύλ της μορφής της βάσεως δεδομένων. Αυτά τα μεταφρασμένα δεδομένα μπορούν να μεταδοθούν στην διεπαφή της βάσης δεδομένων για να εκτελεστούν. Εικόνα 6: Παράδειγμα εκτέλεσης CGI Η σχεδίαση ενός τέτοιου CGI μπορεί να είναι η ακόλουθη: Ανάκτηση δεδομένων από την βάση δεδομένων μέσω ενός προγράμματος CGI 46

51 Η SQL είναι εμφυτευμένη στην HTML, το CGI διοχετεύει τις εισόδους του στο HTML-SQL πρόγραμμα, αντικαθίσταται απο το αποτέλεσμα της εκτέλεσης εντολών και στη συνέχεια απαντά στον browser Η βάση δεδομένων παρέχει την βιβλιοθήκη προγραμμάτων που μπορούν να εκτελεστούν από το CGI Χρήση του ODBC (Open Database Connectivity) API (Application Programming Interface): αφορά κλήση στο ODBC API για ανάκτηση των ODBC-compatible βάσεων δεδομένων. Χρήση ειδικής διεπαφής εφαρμογών σαν γέφυρα ανάμεσα στον browser και τις βάσεις δεδομένων Ασφάλεια Συστήματος και Απόδοση Είναι γνωστό ότι η κωδικοποίηση δεδομένων (data encrypsion) είναι η βασική ιδέα για την εξασφάλιση της ασφάλειας των πληροφοριών στο δίκτυο. Ο HTTP server αποτελεί ένα άλλο μεγάλο ζήτημα για την ασφάλεια του δικτύου διότι το μεγαλύτερο μέρος των πληροφοριών ανακτάται από αυτόν. Το CGI επιτρέπει στον πελάτη να υποβάλλει ένα εξωτερικό πρόγραμμα στον εξυπηρετητή και επίσης παρέχει μια μεγάλη δυνατότητα στον hacker να καταστρέψει, διορθώσει ή να αντικαταστήσει το αρχείο. Μπορούμε να σχεδιάσουμε ένα firewall για να εξασφαλίσουμε την ασφάλεια του δικτύου. Το firewall διαχωρίζει το εσωτερικό δίκτυο από το εξωτερικό δίκτυο και φιλτράρει την πληροφορία ανάμεσα στο προηγούμενο (former) και το επόμενο (latter). Εικόνα 7: Firewall στο Internet 47

52 To CGI είναι διαδικασία υψηλού κόστους, διότι ο εξυπηρετητής χρειάζεται να δημιουργήσει ένα αντίγραφο του εαυτού του. Το CGI πρόγραμμα παίρνει όλη την πληροφορία από τον εξυπηρετητή και στη συνέχεια επεξεργάζεται τα αιτήματα του πελάτη. Το σύστημα παρουσιάζει επιπλέον φόρτο καθώς εκτελεί το CGI. Ο χρόνος για την δυναμική δημιουργία της εξόδου HTML πρέπει επίσης να ληφθεί υπόψη. Κακή σχεδίαση του CGI επιβαρύνει το σύστημα. Επομένως η δομή δεδομένων και ο αλγόριθμος χρειάζεται να βελτιστοποιηθούν για να επιτευχθεί ικανοποιητική απόδοση του αλγορίθμου JAVA H Java αποτελεί επανάσταση για την ανάπτυξη και την λειτουργία δικτυακών εφαρμογών στο Internet. Η Java είναι μια αντικειμενοστραφής γλώσσα προγραμματισμού η οποία είναι υποσύνολο της C++. H Java διαθέτει μια εκτεταμένη βιβλιοθήκη ρουτινών για τον εύκολο χειρισμό των πρωτοκόλλων Internet όπως είναι το Transmission Control Protocol/Internet Protocol (TCP/IP), το HTTP και το File Transfer Protocol (FTP). Η βιβλιοθήκη αυτή παρέχει τη δυνατότητα δημιουργίας συνδέσεων δικτύων πολύ ευκολότερα απο ότι αυτές πραγματοποιούνται με την C ή την C++. Οι εφαρμογές Java μπορούν να ανοίξουν και να προσπελάσουν αντικείμενα κατά μήκος του δικτύου μέσω ομοιόμορφων εντοπιστών πόρων (uniform resource locators URL s) με την ίδια ευκολία που έχει ένας προγραμματιστής στο να προσπελάσει ένα αρχείο στο τοπικό σύστημα διαχείρισης αρχείων. Η Java χρησιμοποιείται για την συγγραφή προγραμμάτων τα οποία πρέπει να είναι αξιόπιστα με πολλούς διαφορετικούς τρόπους. Στην Java δίνεται μεγάλη έμφαση στον έλεγχο ύπαρξης δυνατών προβλημάτων, στον δυναμικό έλεγχο (runtime checking) και στον περιορισμό περιπτώσεων εμφάνισης σφαλμάτων. Η Java είναι γλώσσα που δημιουργήθηκε για χρήση σε περιβάλλοντα δικτύων καθώς και σε κατανεμημένα περιβάλλοντα. Η Java επιτρέπει την κατασκευή συστημάτων virus-free και tamper-free. Οι τεχνικές authentication βασίζονται στην public key encryption. 48

53 Η Java σχεδιάστηκε για να υποστηρίξει εφαρμογές δικτύων. Γενικά τα δίκτυα αποτελούνται από μια πληθώρα συστημάτων με μια πληθώρα CPU s και αρχιτεκτονικές λειτουργικών συστημάτων. Για να επιτραπεί σε μια εφαρμογή Java να εκτελεστεί οπουδήποτε στο δίκτυο, ο μεταγλωττιστής δημιουργεί ένα architecture-neutral object file format- o μεταγλωττισμένος κώδικας είναι εκτελέσιμος σε πολλούς επεξεργαστές, με προαπαιτούμενη την ύπαρξη του Java runtime συστήματος. Αυτό είναι χρήσιμο όχι μόνο για δίκτυα αλλά επίσης για διανομή λογισμικού απλών συστημάτων (single system software distribution). Στην τρέχουσα αγορά προσωπικών ηλεκτρονικών υπολογιστών, οι δημιουργοί λογισμικού θα πρέπει να παράγουν εκδόσεις της εφαρμογής τους που να είναι συμβατές με τα PC και τα Macs. Με την Java, η ίδια έκδοση της εφαρμογής εκτελείται σε όλες τις πλατφόρμες. Ο μεταγλωττιστής της Java το επιτυγχάνει δημιουργώντας byte-code εντολές οι οποίες δεν έχουν τίποτα να κάνουν με την παρούσα αρχιτεκτονική υπολογιστή. Επομένως, τα προγράμματα σχεδιάζονται ώστε να μπορούν εύκολα να διερμηνευτούν και να μεταφραστούν σε native κώδικα μηχανής κατά την εκτέλεση. 49

54 Κεφάλαιο 2 Η ΤΕΧΝΟΛΟΓΙΑ WEB ΕΙΣΑΓΩΓΗ O WWW είναι ένα σύστημα ανάκτησης πληροφοριών υπερκειμένων (Hypertext Information Retrieval System) το οποίο εκτελείται σε κατάσταση πελάτη/εξυπηρετητή. Το τμήμα Web του πελάτη (Web client part) αποτελείται από έναν Web browser και το τμήμα Web του εξυπηρετητή αποτελείται από δύο ενότητες. Η πρώτη ενότητα είναι η μηχανή ανάκτησης πληροφοριών υπερκειμένων (Hypertext information retrieval engine) και η δεύτερη είναι το πρωτόκολλο μετάδοσης υπερκειμένων (HyperText Transfer Protocol Daemon HTTP). Όταν κάποιος βρίσκεται αντιμέτωπος με μια νέα τεχνολογία, ενστικτωδώς την τοποθετεί σε ένα πλαίσιο αξιολόγησης με βάση τις υπάρχουσες εργασιακές συνθήκες και πρακτικές. Ανάλογη είναι και η περίπτωση της τεχνολογίας Web (Web technology). O Web αποτελεί μία νέα τεχνολογία η οποία έχει προκαλέσει την τάση για αλλαγή του τρόπου ανάπτυξης του λογισμικού. Όπως η εμφάνιση του μικροεπεξεργαστή άλλαξε τις βασικές υποθέσεις σχεδίασης του υλικού, ο Web έχει αλλάξει αρκετές από τις υποθέσεις που αφορούν την ανάπτυξη του λογισμικού και ειδικότερα αυτές που σχετίζονται με το (software artifact) και τις διαδικασίες συνεργασίας σε ομάδες για την κατασκευή του. O Web αποτελεί ένα νέο μέσο ανταλλαγής πληροφοριών βασισμένο σε έναν παγκόσμια δικτυωμένο, κατανεμημένο και συνδεδεμένο κόσμο πληροφοριών. Παρόλο που το μέσο είναι ακόμη νέο, μερικά απο τα αποτελέσματα στο λογισμικό είναι ήδη εμφανή. 50

55 Εικόνα 8: Το περιβάλλον Web 2.1. Μικρογραφίες εφαρμογών - applets Μικρογραφίες εφαρμογών (miniature applications ή applets) αποτελούν καθεστώς στον Web. Αρκετά ενδιαφέροντα χαρακτηριστικά αυτών των μικρογραφιών εφαρμογών τις τοποθετούν σε διαφορετική κατηγορία από τις παραδοσιακές εφαρμογές λογισμικού. Τα applets αυτόματα αποθηκεύονται στον δίσκο του υπολογιστή του υπολογιστή πελάτη, εγκαθίστανται και εκτελούνται χωρίς την ανάμιξη του χρήστη στην διαδικασία. Τα applets βρίσκονται στις σελίδες Web, εκτελούνται αυτόματα μόλις ο χρήστης προσπελάσει την σελίδα που τα φιλοξενεί και τερματίζονται μόλις ο χρήστης αποχωρήσει από την σελίδα. Τα applets είναι εμφυτευμένα μέσα στην πληροφορία που παρέχεται από μια Web σελίδα, σε αντίθεση με τις παραδοσιακές εφαρμογές οι οποίες δημιουργούν και εμφυτεύουν την πληροφορία. 51

56 Τα applets, φορτώνονται δυναμικά (dynamically), σταδιακά(incrementally) και με διαφάνεια (transparently). Τα applets αποκρύπτονται από τον browser για λόγους αποτελεσματικότητας. Για λόγους ασφάλειας, τα applets έχουν περιορισμένη προσπέλαση στο περιβάλλον του πελάτη. Πίνακας 1: Χαρακτηριστικά των μικρογραφιών εφαρμογών Ας θεωρήσουμε τις ενέργειες που εκτελεί ένας Web browser για να εμφανίσει μια σελίδα. Ο browser ανακτά και αναλύει συντακτικά το HTML έγγραφο, ανακτά οποιαδήποτε εμφυτευμένα στοιχεία, προσδιορίζει τον τύπο κάθε εμφυτευμένου στοιχείου και καλεί τον κατάλληλο χειριστή του περιεχομένου για να εμφανίσει το περιεχόμενο. Στην περίπτωση ενός εμφυτευμένου applet, ο διαχειριστής του περιεχομένου του browser είναι ένας εικονικός διερμηνευτής μηχανής (virtual machine interpreter) ο οποίος εκλαμβάνει το περιεχόμενο ως εκτελέσιμες εντολές. Παρόλο που τα χαρακτηριστικά των applets φαίνονται περίεργα με μια πρώτη επισκόπηση έχουν νόημα όταν κάποιος συνειδητοποιήσει ότι ο στόχος του Web είναι η επικοινωνία και η ανταλλαγή των πληροφοριών. Οι συνιστώσες ActiveX 3 και τα Java 4 applets είναι δύο από τους πιό δημοφιλείς μηχανισμούς για την δημιουργία applets. Η πιό σημαντική διαφορά ανάμεσα σε αυτούς τους δύο μηχανισμούς είναι ότι υιοθετούν διαφορετικά μοντέλα ασφάλειας και ότι οι συνιστώσες ActiveX είναι applets γραμμένα για συγκεκριμένες πλατφόρμες, ενώ τα Java applets είναι byte-code διερμηνεύσιμα και ανεξάρτητα πλατφόρμας. Το μοντέλο ActiveX μοιάζει με αυτό ενός καταστήματος λογισμικού λιανικής πωλήσεως. Μόλις γίνει αποδεκτό το applet έχει απεριόριστη προσπέλαση στην μηχανή του πελάτη. Με τα Java applets, οι περισσότεροι Web browsers υλοποιούν ένα μοντέλο ασφάλειας «sandbox» στο οποίο τα applets εκτελούνται σε ένα αυστηρά περιορισμένο περιβάλλον στην μηχανή του πελάτη. Αυτό το περιορισμένο περιβάλλον 3 Active X Java 52

57 εκτέλεσης εμποδίζει τα applet να δράσουν κακόβουλα, έτσι ώστε οι χρήστες δεν χρειάζεται να πάρουν αποφάσεις ασφάλειας. Αντίθετα από τα plug-ins τα ActiveX και τα Java applets μπορούν αυτόματα να αποθηκευτούν, να εγκατασταθούν και να εκτελεστούν με μικρή ανάμιξη του χρήστη. Και οι δύο τεχνολογίες περιορίζουν το γενικό πλαίσιο εκτέλεσης του applet σε μια απλή σελίδα Web. Επομένως, το πλαίσιο εκτέλεσης του applet δεν μπορεί να διατηρηθεί πέρα από μια σελίδα Web εκτός εάν το πλαίσιο μεταδοθεί στον Web server καθώς ο χρήστης εγκαταλείπει την πηγαία σελίδα και αποθηκεύεται όταν ο χρήστης φθάσει στην σελίδα προορισμού Ηλεκτρονικό ταχυδρομείο & μηχανές αναζήτησης Δύο τεχνολογίες Internet που είναι σε ευρεία χρήση σήμερα είναι οι μηχανές αναζήτησης και το ηλεκτρονικό ταχυδρομείο. Οι μηχανές αναζήτησης (search engines) είναι απλά εργαλεία για αναζήτηση πληροφοριών στον WWW. Μόλις ο χρήστης εισαγάγει τα κριτήρια στην μηχανή αναζήτησης, ο υπολογιστής προσπαθεί να βρεί στον κυβερνοχώρο την ζητούμενη πληροφορία και μόλις η μηχανή βρεί την πληροφορία την εμφανίζει στον χρήστη. Η τεχνολογία αυτή συνεχίζει να εξελίσσεται και υπάρχουν αρκετοί προμηθευτές της υπηρεσίας αυτής. Το ηλεκτρονικό ταχυδρομείο ( ) επιτρέπει την αποστολή μηνυμάτων και επισυναπτόμενων αρχείων (file attachments) σε έναν ή περισσότερους χρήστες. Αυτός ο τρόπος επικοινωνίας είναι πάρα πολύ χρήσιμος όταν ένα τηλέφωνο μπορεί να μην είναι απαραίτητο. Το ηλεκτρονικό ταχυδρομείο αποτελεί ένα εξαίρετο εργαλείο για μονόδρομη (one-way) διάδοση πληροφοριών ή εκπομπή (broadcasting) του ιδίου μηνύματος σε πολλούς χρήστες. Χαρακτηριστικά όπως είναι οι λίστες παραληπτών (distribution lists) επιτρέπουν την επικοινωνία πολλών χρηστών. Παρόλα αυτά το ηλεκτρονικό ταχυδρομείο έχει και τους περιορισμούς του. Η αλληλογραφία βασίζεται στην δρομολόγηση του μηνύματος μέσω του Internet 53

58 το οποίο μπορεί να φθάσει στον προορισμό του με καθυστέρηση ενός λεπτού ή πολλών ωρών ή σε κάποιες σπάνιες περιπτώσεις ημερών Άμεση ανταλλαγή μηνυμάτων Instant Messaging Υπάρχουν αρκετά διαφορετικά προγράμματα άμεσης ανταλλαγής μηνυμάτων. Το μεγαλύτερο μέρος αυτού του λογισμικού είναι ελεύθερα διαθέσιμο και μπορεί να ανακτηθεί από διάφορους κόμβους Web στο Internet. AOL Instant Messenger Ding! Firefly Passport ichat Pager ICQ LiveList NetPopUp PeerChat PeopleLink Netmeeting Πίνακας 2: Λογισμικό άμεσης ανταλλαγής μηνυμάτων 2.4. Ευφυείς μεσολαβητές-intelligent agents Έχουν γίνει αρκετές προσπάθειες χρήσης της τεχνητής νοημοσύνης σε Web εφαρμογές. Οι προσπάθειες αφορούν κυρίως την χρήση ευφυών μεσολαβητών (intelligent agents). H μεγαλύτερη επίδραση αυτών των προγραμμάτων οφείλεται στην δυνατότητα τους να εποπτεύουν ετερογενείς WWW βάσεις δεδομένων. Οι ευφυείς μεσολαβητές μπορούν να εποπτεύουν επίσης αλλαγές που πραγματοποιούνται σε κόμβους και οι κόμβοι μπορούν να τους αξιοποιήσουν για να καταγράψουν τους χρήστες τους και τα ενδιαφέροντα τους. 54

59 Μεσολαβητές υποστήριξης Web browsing-tour guides (agents that directly assist web browsing-tour guides) Μερικοί ευφυείς μεσολαβητές διευκολύνουν την εμφάνιση των περιεχομένων του Web παρέχοντας στους χρήστες υποστήριξη σχετικά με τις αναζητήσεις τους. Δύο από τα πλέον γνωστά συστήματα αυτής της κατηγορίας είναι ο WebWatcher και η Letizia. Ο WebWatcher προσφέρει αρκετές δυνατότητες πέρα από την εμφάνιση περιεχομένων συμπεριλαμβανομένης της δυνατότητας ανεύρεσης σελίδων που να σχετίζονται με την τρέχουσα σελίδα, η πρόσθεση υπερσυνδέσμων στην αρχική σελίδα έτσι ώστε να ικανοποιούνται οι στόχοι αναζήτησης του χρήστη και η παροχή συμβουλευτικής υποστήριξης στον χρήστη. Mε την Letizia, ο χρήστης εμφανίζει τα περιεχόμενα των σελίδων Web μέσω οποιουδήποτε browser ενώ ο μεσολαβητής συγκεντρώνει με χρήση ευρετικών αλγορίθμων πληροφορίες σχετικά με την συμπεριφορά του χρήστη και προσπαθεί να προβλέψει επιπρόσθετα στοιχεία που ίσως ενδιαφέρουν τον χρήστη. Μεσολαβητές ανεύρεσης προϊόντων ή πληροφοριών (agents finding products or information on the WWW) Αρκετά ευφυή συστήματα μπορούν να βρούν πληροφορίες ή προϊόντα στον WWW. Τυπικά, ένας μεσολαβητής εξαρτάται από τους χρήστες που παρέχουν την πληροφορία είτε άμεσα είτε έμμεσα μέσω των επιλογών τους έτσι ώστε να μπορεί να διδαχθεί σχετικά με τα ενδιαφέροντα τους. Γνωστά συστήματα αυτής της μορφής είναι τα Firefly, Webdoggie, NewsWeederII, BargainFinder. Συχνές ερωτήσεις (Frequently asked questions) Τα αρχεία αυτής της μορφής είναι συλλογές των απόψεων ομάδων ειδικών σε ένα θέμα ενδιαφέροντος από όλον τον κόσμο (newsgroups) οι οποίοι απαντούν σε συχνές ερωτήσεις στον τομέα τους. Συστήματα της μορφής αυτής είναι τα FAQFinder και meta-faq. Μηχανές αναζήτησης (search engines, meta-search engines) Τα προγράμματα αυτής της μορφής πραγματοποιούν πολλά έργα στον WWW όπως ανάκτηση πληροφοριών, αξιολόγηση συνδέσμων ή κώδικα HTML και δημιουργία στατιστικών. Μια λίστα αυτών των ρομποτικών 55

60 μεσολαβητών (agent robots) περιλαμβάνει τους: Lycos, InfoSeek, World Wide Web Worm, Web Crawler και Wandex. Οι μηχανές meta-search χρησιμοποιούν περισσότερες από μια πηγές πληροφοριών για την αναζήτηση. Στην κατηγορία αυτή ανήκουν οι: Find-it, All-in-One, Savvy Search, LinkSearch, Configurable Unified Search Interface, ISWorkgroup και Spider Εκτεταμένη δομή του Web: CORBA και Κατανεμημένο Υπολογιστικό Περιβάλλον Αρκετά πλεονεκτήματα των αντικειμένων (objects) μπορούν να χρησιμοποιηθούν στο περιβάλλον Web διαμέσου μίας γέφυρας ανάμεσα στην CORBA και τον Web. Μία τέτοια γέφυρα (gateway) παρουσιάζεται στην Εικόνα 10. Ένας χρήστης σε έναν Web browser μπορεί να καλέσει ένα αντικείμενο CORBA (υπηρεσία) άμεσα χρησιμοποιώντας το πρωτόκολλο HTTP. Μόλις ληφθεί το αίτημα η γέφυρα διοχετεύει τα δεδομένα στον πελάτη CORBA (CORBA client). Ο πελάτης CORBA καλεί τον εξυπηρετητή CORBA με τη βοήθεια του πρωτοκόλου IIOP και στη συνέχεια επιστέφει το αποτέλεσμα στον πελάτη Web μέσω της γέφυρας. 56

61 Εικόνα 9: Η CORBA και το περιβάλλον WEB 57

62 Εικόνα 10: Η CORBA και το κατανεμημένο υπολογιστικό περιβάλλον Εικόνα 11: Video On Demand Σύστημα σε CORBA Βιβλιογραφία 1. J.A. Sears, Harnessing the World Wide Web, IEEE Expert, Vol. 10, No. 4, Aug. 1995, pp

63 . Κεφάλαιο 3 ΠΛΑΙΣΙΟ ΑΝΑΠΤΥΞΗΣ ΚΟΜΒΟΥ WEB ΕΙΣΑΓΩΓΗ Από την πρώτη εμφάνιση του το 1990, ο παγκόσμιος ιστός (World Wide Web) εξελίσσεται με πάρα πολύ γρήγορους ρυθμούς. Ο αριθμός των κόμβων WWW αυξάνεται καθώς οι χρήστες του Internet συνειδητοποιούν τα oφέλη που προκύπτουν από ένα γενικό σύστημα συνδεδεμένων υπερμέσων. Οι εταιρείες, οι οργανισμοί και τα Πανεπιστήμια εξερευνούν την βάση (infrastructure) του WWW για να παρέχουν στους πελάτες και τους χρήστες πληροφορίες και υπηρεσίες. Οι προσδοκίες των προμηθευτών και των καταναλωτών οδηγούν σε ερευνητικές προσπάθειες βελτίωσης της τεχνολογίας WWW. Παραδείγματα αυτής της κατηγορίας αποτελούν η εισαγωγή δυναμικών περιεχομένων (active contents) σε στατικές σελίδες υπερκειμένων μέσω χρήσης γλωσσών προγραμματισμού και τεχνολογιών όπως η Java και Javascript και η χρήση της τεχνολογίας Servlet για τον έλεγχο της συμπεριφοράς (customization) ενός εξυπηρετητή Web (Web Server). Αυτή η εξέλιξη έχει οδηγήσει την υποδομή του web στο να μεταβεί από την διανομή υπηρεσιών και πληροφοριών σε μια πλατφόρμα υλοποίησης κατανεμημένων εφαρμογών στο παγκόσμιο σκηνικό. Οι τρέχουσες τεχνολογίες WWW παρέχουν μηχανισμούς χαμηλού επιπέδου (low level mechanisms) που επιτρέπουν την παραγωγή οπτικών αποτελεσμάτων ή ολοκλήρωση εφαρμογών. Η χρήση αυτών των μηχανισμών δεν καθοδηγείται από μια συστηματική μεθοδολογία η οποία να παρέχει σε όσους αναπτύσσουν κόμβους Web την δυνατότητα υψηλής εποπτείας της δομής της βάσης υπερμέσων και με μια καλά καθορισμένη διαδικασία ανάπτυξης η οποία να υποστηρίζεται από κατάλληλα εργαλεία. Οι πλέον πρόσφατες πρακτικές ανάπτυξης και διοίκησης ενός κόμβου WWW 59

64 στηρίζονται συνήθως στις γνώσεις και την εμπειρία αυτού που κάνει την ανάπτυξη. Η παρούσα κατάσταση παραπέμπει στην περίοδο των πρώτων σταδίων της ανάπτυξης λογισμικού, όταν οι εφαρμογές λογισμικού αναπτύχθηκαν χωρίς μεθοδολογική υποστήριξη και χωρίς τα κατάλληλα εργαλεία στην βάση της κοινής λογικής και των ατομικών ικανοτήτων των προγραμματιστών. Η ανάπτυξη κόμβων Web σήμερα χαρακτηρίζεται από ανάλογο πρόβλημα δεδομένου ότι οι δημιουργοί τους συνήθως προχωρούν στην φάση υλοποίησης, δίνοντας μικρή ή καθόλου βαρύτητα στο στάδιο του καθορισμού απαιτήσεων (requirements specification) και στο στάδιο της σχεδίασης (design phase). Στις περισσότερες περιπτώσεις η υλοποίηση πραγματοποιείται χρησιμοποιώντας τεχνολογία χαμηλού επιπέδου όπως είναι η χρήση της γλώσσας HTML (Hypertext Markup Language). Για να χρησιμοποιήσουμε την αναλογία με τους συμβατικούς τρόπους ανάπτυξης λογισμικού, αυτή η προσέγγιση αντιστοιχεί στην υλοποίηση εφαρμογών με άμεση απεικόνιση μη τυποποιημένων σχεδιάσεων (informal designs) σε γλώσσα μηχανής. Το αποτέλεσμα αυτής της προσέγγισης είναι η δυσκολία διαχείρισης του κόμβου Web και η τάση παρουσίασης σφαλμάτων διότι ο χειρισμός αλλαγών και η δομική εξέλιξη πρέπει να πραγματοποιηθούν σε επίπεδο υλοποίησης. Το πρόβλημα αυτό είναι πάρα πολύ κρίσιμο διότι τα συστήματα WWW λόγω της φύσης τους υπόκεινται σε συχνές ενημερώσεις και σε επανασχεδιάσεις. Η Τεχνολογία Λογισμικού παρέχει τεχνολογίες (π.χ. αντικειμενοστρεφείς γλώσσες προγραμματισμού) και μεθοδολογίες (π.χ. design paradigms) και εργαλεία (π.χ. ολοκληρωμένα περιβάλλοντα ανάπτυξης) που υποστηρίζουν την διαδικασία ανάπτυξης του λογισμικού. Αυτή η ολοκληρωμένη υποστήριξη επιτρέπει σε όσους αναπτύσσουν λογισμικό να μπορούν να παραδώσουν υψηλής ποιότητας προϊόντα σε σύντομο και με οικονομική αποτελεσματικότητα τρόπο. Η νοητική μοντελοποίηση (conceptual modeling) ενός κόμβου WWW είναι ανεξάρτητη από την τεχνολογία υλοποίησης και μπορεί να υποστηριχθεί αποτελεσματικά από συμβολισμούς που αναπτύχθηκαν για συστήματα υπερμέσων (hypermedia systems notations). H 60

65 αναγκαιότητα εξέλιξης αφορά τις μεθοδολογίες υλοποίησης και την αντίστοιχη τεχνική υποστήριξη η οποία μπορεί να γεφυρώσει το χάσμα ανάμεσα σε μια υψηλού επιπέδου σχεδίαση και μια χαμηλού επιπέδου προγραμματιστική υλοποίηση Η διαδικασία ανάπτυξης λογισμικού στον World Wide Web Η ανάπτυξη ενός κόμβου Web ο οποίος παρέχει δομημένη προσπέλαση σε μεγάλες ποσότητες πληροφοριών, με διαφορετικούς τρόπους είναι μια σύνθετη δραστηριότητα. Με στόχο την ανάπτυξη υψηλής ποιότητας εφαρμογών Web σε περιορισμένο χρόνο και με μειωμένο κόστος, οι υπεύθυνοι ανάπτυξης θα πρέπει να ακολουθήσουν μια καλά καθορισμένη διαδικασία ανάπτυξης η οποία να υποστηρίζεται από κατάλληλα εργαλεία και συμβολισμούς. Οι κόμβοι Web (Web Sites) είναι δομημένα σύνολα πληροφοριών πολυμέσων που υποστηρίζονται με αναφορές υπερκειμένων και επιπλέον μπορεί να περιέχουν προγράμματα που παράγουν περιεχόμενα δυναμικά (όπως CGI scripts, Java applets ή JavaScript κώδικα). Τα πλεονεκτήματα μιας καλά ορισμένης και υποστηριζόμενης διαδικασίας ανάπτυξης λογισμικού είναι γνωστά. Για αυτούς τους λόγους, όπως συμβαίνει για το conventional λογισμικό, διακρίνουμε στην διαδικασία ανάπτυξης ενός κόμβου Web τις παρακάτω φάσεις: ανάλυση απαιτήσεων (requirements analysis), σχεδίαση (design) και υλοποίηση (implementation). Μόλις ο κόμβος υλοποιηθεί και παραδοθεί, η δομή και τα περιεχόμενα του συντηρούνται και επεκτείνονται. Στον καθορισμό αυτών των τριών φάσεων δεν προτείνεται να ακολουθηθεί κάποια συγκεκριμένη δομή διαδικασίας ανάπτυξης. Διαφορετικές μεθοδολογίες μοντελοποίησης λειτουργιών (waterfall, spiral, prototype based) μπορούν να υιοθετηθούν σε αυτό το πλαίσιο. Το ενδιαφέρον μας εστιάζεται στο πως αυτές οι φάσεις μπορούν να δομηθούν Ανάλυση και καθορισμός απαιτήσεων 61

66 Κατά τη διάρκεια της ανάλυσης απαιτήσεων είναι απαραίτητο να γίνει συλλογή των αναγκών σχετικά με το περιεχόμενο (content), την δόμηση (structuring), την προσπέλαση (access) και την εμφάνιση (layout). Οι απαιτήσεις για το περιεχόμενο καθορίζουν τις πληροφορίες (domain specific) οι οποίες πρέπει να γίνουν διαθέσιμες μέσω του κόμβου web. Οι απαιτήσεις δόμησης καθορίζουν τον τρόπο οργάνωσης των περιεχομένων. Αυτές περιλαμβάνουν τον ορισμό των σχέσεων (relations) και των όψεων (views). Οι σχέσεις περιγράφουν σημαντικές συνδέσεις μεταξύ των περιεχομένων. Οι όψεις αφορούν χειρισμούς των δομών πληροφοριών οι οποίες παρουσιάζουν τα περιεχόμενα και τις σχέσεις με διαφορετικούς τρόπους σύμφωνα με διαφορετικές περιπτώσεις χρήσης (π.χ μια περίληψη ενός εγγράφου μπορεί να είναι διαθέσιμη σε όλους τους χρήστες, ενώ το πλήρες έγγραφο είναι διαθέσιμο σε εξουσιοδοτημένους χρήστες). Οι απαιτήσεις προσπέλασης καθορίζουν τον τρόπο προσπέλασης των πληροφοριών τον οποίο επιθυμείται να παρέχει ο κόμβος Web. Αυτός περιλαμβάνει προτεραιότητες στην ανάκτηση πληροφοριών, δεικτοδότηση των περιεχομένων (indexing of contents), διαδικασίες αναζήτησης (query facilities) και υποστήριξη καθοδηγούμενων διασχίσεων σε σύνολα σχετιζόμενων πληροφοριών. Οι απαιτήσεις εμφάνισης καθορίζουν τις ιδιότητες της γενικής εμφάνισης του κόμβου web, όπως είναι η έμφαση σε γραφικά ή σε κείμενο Σχεδίαση Στηριγμένη στις απαιτήσεις, η φάση σχεδίασης καθορίζει την συνολική δομή ενός κόμβου WWW περιγράφοντας πως η πληροφορία μπορεί να οργανωθεί και πως οι χρήστες μπορούν να την πλοηγήσουν. Μια προσεκτική δραστηριότητα σχεδίασης πρέπει να αναδεικνύει τα στοιχειώδη συστατικά ενός κόμβου, εποπτεύοντας με αφηρημένο τρόπο τις χαμηλού επιπέδου λεπτομέρειες υλοποίησης και να επιτρέπει στον σχεδιαστή να καθορίσει δομές και πρότυπα πλοήγησης τα οποία να μπορούν να επαναχρησιμοποιηθούν. Μια καλή σχεδίαση μπορεί να επιβιώσει των συχνών αλλαγών στην υλοποίηση που επιβάλλονται από την εμφάνιση νέων τεχνολογιών. Η δραστηριότητα 62

67 σχεδίασης θα πρέπει να είναι ανεξάρτητη της υλοποίησης και μπορεί να πραγματοποιηθεί χρησιμοποιώντας μεθοδολογίες και συμβολισμούς οι οποίες δεν είναι κατά ανάγκη Web oriented. Οποιαδήποτε μεθοδολογία σχεδίασης για εφαρμογές υπερμέσων μπορεί να χρησιμοποιηθεί. Τέτοιες μεθοδολογίες είναι η HDM 5, η RMDM 6, η OOHDM 7 και η WOOM(Web Object Oriented Model) 8. Στη συνέχεια παραθέτουμε στοιχεία της μεθοδολογίας Hypertext Design Model για την σχεδίαση εφαρμογών υπερμέσων. Κατά τη σχεδίαση μιας εφαρμογής υπερμέσων η μεθοδολογία HDM διακρίνει το επίπεδο υπερβάσης (hyperbase layer) από το επίπεδο προσπέλασης (access layer). To επίπεδο υπερβάσης αποτελεί το backbone της εφαρμογής και μοντελοποιεί δομές πληροφοριών που αναπαριστούν την περιοχή, ενώ το επίπεδο προσπέλασης παρέχει σημεία εισόδου για προσπέλαση στα στοιχεία της υπερβάσης. Η υπερβάση (hyperbase) αποτελείται από οντότητες (entities) συνδεδεμένες με συνδέσμους εφαρμογών (application links). Οι οντότητες είναι «πρώτης τάξεως» δομημένα τεμάχια πληροφορίας τα οποία χρησιμοποιούνται για την αναπαράσταση νοητικών ή φυσικών αντικειμένων στον τομέα εφαρμογών. Οι σύνδεσμοι εφαρμογών χρησιμοποιούνται για την περιγραφή domain-specific μη δομημένων σχέσεων ανάμεσα σε διαφορετικές οντότητες. Οι οντότητες αποτελούνται από συνιστώσες (components). Σύνθετες συνιστώσες μπορούν να δομηθούν αναδρομικά με χρήση άλλων συνιστωσών. Η πληροφορία που περιέχεται σε συνιστώσες μοντελοποιείται με τη χρήση κόμβων (nodes). Συνήθως, οι συνιστώσες μπορούν να περιέχουν μόνο έναν κόμβο, αλλά περισσότεροι του ενός κόμβοι μπορούν να χρησιμοποιηθούν για να παρέχουν διαφορετικές ή εναλλακτικές όψεις (perspectives) της πληροφορίας των συνιστωσών. Τα μονοπάτια πλοήγησης (navigation paths) μέσα σε μια 5 F. Garzotto, P. Paolini, and D. Schwabe, HDM A Model Based Approach to Hypertext Application Design, ACM Transactions on Information Systems, Vol. 11, No. 1, January V. Balasubramanian, T. Isakowitz, and E.A. Stohr, RMM: A Methodology for Structured Hypermedia Design, Communications of the ACM, 38(8), August D. Schwabe and G. Rossi, From Domain Models to Hypermedia Applications: An Object Oriented Approach, Proceedings of the International Workshop on Methodologies for Designing and Developing Hypermedia Applications, Edimburgh, September F. Coda, C. Ghezzi, G. Vigna, F. Garzotto, Towards a Software Engineering Approach to Web Site Development, IEEE

68 οντότητα καθορίζονται με την έννοια των δομικών συνδέσμων (structural links) οι οποίοι αναπαριστούν τις δομικές σχέσεις ανάμεσα στις συνιστώσες. Οι δομικοί σύνδεσμοι μπορούν για παράδειγμα να ορίσουν μια δενδρική δομή η οποία να επιτρέπει στον χρήστη να μετακινηθεί από μια συνιστώσα που βρίσκεται στην ρίζα (root component) σε οποιαδήποτε άλλη συνιστώσα της ίδιας οντότητας. Μόλις ολοκληρωθεί η περιγραφή των οντοτήτων και των συνιστωσών, καθώς επίσης των εσωτερικών και εξωτερικών σχέσεων τους, το επίπεδο προσπέλασης καθορίζει ένα σύνολο συλλογών (collections) που παρέχει στους χρήστες δομές για να προσπελάσουν την υπερβάση. Μια συλλογή ομαδοποιεί έναν αριθμό μελών με στόχο να τα κάνει προσπελάσιμα. Κάθε συλλογή χαρακτηρίζεται από μια ειδική συνιστώσα που ονομάζεται κέντρο συλλογής (collection center) που αναπαριστά το σημείο εκκίνησης της συλλογής. Παραδείγματα συλλογών είναι οι κατευθυνόμενες διαδρομές (guided tours) οι οποίες υποστηρίζουν γραμμικές πλοηγήσεις των μελών (μέσω των συνδέσμων προηγούμενου/επόμενου, πρώτου/τελευταίου) και τα ευρετήρια (indexes) στα οποία η πλοήγηση πραγματοποιείται από το κέντρο προς τα μέλη και ανάστροφα Υλοποίηση Η φάση υλοποίησης δημιουργεί έναν κόμβο Web από την σχεδίαση του. Στο πρώτο βήμα, τα στοιχεία και οι σχέσεις που εντοπίστηκαν κατά τη διάρκεια της σχεδίασης απεικονίζονται στις κατασκευές (constructs) που παρέχονται από την επιλεγχθείσα τεχνολογία υλοποίησης. Οντότητες, συνιστώσες, συνδέσεις και δομές προσπέλασης σχετίζονται με ειδικά πρωταρχικά στοιχεία (primitives) που παρέχονται από την τεχνολογία υπερμέσων. Στο δεύτερο βήμα ο κόμβος εμπλουτίζεται (populated). Το περιεχόμενο εισάγεται στις κατασκευές του πρώτου βήματος και δημιουργούνται συλλογές για να παρέχουν δομημένη πρόσβαση στα περιεχόμενα της υπερβάσης. Το τρίτο βήμα αφορά την παράδοση (delivery). H υλοποίηση του κόμβου πρέπει να γίνει προσπελάσιμη χρησιμοποιώντας τεχνολογίες WWW που έχουν τυποποιηθεί σε Web browsers όπως είναι ο 64

69 Netscape Navigator ή ο Microsoft Internet Explorer που αλληλεπιδρούν με εξυπηρετητές χρησιμοποιώντας το πρωτόκολλο μετάδοσης υπερμέσων- HTTP (hypertext transfer protocol). Αυτό μπορεί να επιτευχθεί με την μετάφραση της υλοποίησης του κόμβου σε ένα σύνολο αρχείων και καταλόγων που εξυπηρετούνται από έναν αριθμό standard WWW εξυπηρετητών (στην ορολογία του Unix ονομάζονται http daemons). Σύμφωνα με τις τρέχουσες πρακτικές, η υλοποίηση ενός κόμβου Web πραγματοποιείται χρησιμοποιώντας πρότυπες τεχνολογίες WWW (standard WWW technologies) και εργαλεία που βασίζονται σε κατασκευές που παρέχονται από αυτές τις τεχνολογίες, όπως είναι οι συντάκτες κειμένων (text editors), συντάκτες εικόνων (image editors) και μετασχηματιστές μορφών (format converters). Αυτές είναι η πηγή των περισσοτέρων δυσκολιών κατά την ανάπτυξη ενός κόμβου. Η standard τεχνολογία WWW παρέχει πάρα πολύ λίγες διευκολύνσεις για την ανάπτυξη του Web οι οποίες είναι: Σελίδες HTML (HTML pages): Αρχεία κειμένου τα οποία περιέχουν γλώσσα HTML (HyperText Markup Language) Καταλόγοι (Directories): Συλλογές σελίδων HTML στον δίσκο σε λογικές περιοχές με ένα όνομα Αναφορές (References): Αφορούν ακολουθίες χαρακτήρων κειμένου που είναι εμφυτευμένες σε HTML tags τα οποία δηλώνουν μια πηγή (π.χ μια σελίδα HTML) χρησιμοποιώντας ένα κοινό σχήμα ονοματολογίας Δεν υπάρχουν δυνατότητες να οριστούν σύνθετες δομές πληροφοριών όπως σύνολα σελίδων με ειδικές μορφές πλοήγησης όπως είναι λίστες σελίδων (lists of pages) ή ευρετήρια (indexes). Τέτοια δομημένα σύνολα πληροφοριών πρέπει να υλοποιηθούν χειρονακτικά συνθέτοντας υπάρχουσες κατασκευές. Επιπρόσθετα δεν υπάρχει δυνατότητα δημιουργίας προτύπων εγγράφων και μηχανισμών επέκτασης υπαρχουσών δομών. Η ανάπτυξη ενός συνόλου εγγράφων τα οποία να παρουσιάζουν την ίδια δομή πραγματοποιείται διορθώνοντας χειρονακτικά κάθε έγγραφο υπερμέσου. Δεν υπάρχουν κατασκευές ή μηχανισμοί για να καθοριστούν διαφορετικές όψεις της ίδιας πληροφορίας και να γίνει παρουσίαση τους ανάλογα με το είδος της 65

70 προσπέλασης (access context). H μοναδική διαθέσιμη μορφή επαναχρησιμοποίησης είναι η αντιγραφή (copy). Μερικά authoring εργαλεία όπως είναι το Microsoft FrontPage και το NetObjects Fussion προσπαθούν να ξεπεράσουν κάποιους από αυτούς τους περιορισμούς παρέχοντας μια όψη επιπέδου κόμβου (site-level view) της υπερβάσης πληροφοριών. Τα εργαλεία αυτά βασίζονται στο συντακτικό της HTML και αποτελούν γεννήτριες σελίδων, καταλόγων και αναφορών Συντήρηση Οι κόμβοι Web έχουν μια δυναμική φύση. Τα περιεχόμενα τους και η αντίστοιχη δομική οργάνωση μπορεί να αλλάζει διαρκώς. Επομένως η συντήρηση αποτελεί μια κρίσιμη φάση, πολύ περισσότερο σημαντική από την περίπτωση των συμβατικών εφαρμογών λογισμικού. Όπως συμβαίνει στην περίπτωση του συμβατικού λογισμικού (conventional software) η συντήρηση κατατάσσεται σε τρείς κατηγορίες: διορθωτική (corrective), προσαρμοστική (adaptive) και για τελειοποίηση (perfective). Η διορθωτική συντήρηση είναι η διαδικασία διόρθωσης σφαλμάτων που υπάρχουν στην υλοποίηση του κόμβου Web. Παραδείγματα αυτής της μορφής είναι οι αναφορές σε σελίδες που δεν υπάρχουν, σφάλματα στην ευρετηρίαση των πόρων ή προσπέλαση σε δημοσιευμένα δεδομένα με ημερομηνία λήξεως. Η προσαρμοστική συντήρηση αφορά την προσαρμογή του κόμβου Web σε αλλαγές του εξωτερικού περιβάλλοντος. Μια πράξη προσαρμοστικής συντήρησης είναι η επαλήθευση των συνδέσεων με αναφορές σε έγγραφα και πόρους που βρίσκονται σε διαφορετικούς κόμβους στους οποίους ο κατασκευαστής του κόμβου δεν έχει κανέναν έλεγχο. Η προσαρμοστική συντήρηση είναι μια συνεχής διαδικασία. Η συντήρηση για τελειοποίηση αφορά την αλλαγή του κόμβου Web με στόχο να βελτιωθεί η δόμηση των περιεχομένων και η παρουσίαση του στον τελικό χρήστη. Αλλαγές τελειοποίησης μπορούν να γίνουν με την προσθήκη νέων πληροφοριών ή με την διαθεσιμότητα νέων τεχνολογιών. Οι αλλαγές που προκύπτουν από την συντήρηση για τελειοποίηση θα πρέπει να απεικονιστούν στα έντυπα σχεδίασης και προδιαγραφών. 66

71 3.6. Απαιτήσεις από την τεχνολογία υλοποίησης Οι τρέχουσες τυποποιημένες τεχνολογίες WWW δεν παρέχουν κατάλληλες κατασκευές και εργαλεία για την υποστήριξη υλοποίησης και συντήρησης ενός κόμβου Web. Η τεχνολογία που χρησιμοποιείται για την υλοποίηση ενός κόμβου Web θα πρέπει να παρέχει υψηλού επιπέδου αφαιρέσεις που να υποστηρίζουν την απεικόνιση των οντοτήτων σχεδίασης σε κατασκευές υλοποίησης και την διαχείριση της υψηλού επιπέδου δομής του κόμβου. Ταυτόχρονα, επειδή ο WWW προσπελαύνεται από χρήστες που χρησιμοποιούν την τυποποιημένη διεπαφή WWW, η τεχνολογία υλοποίησης πρέπει να παρέχει εργαλεία αυτοματοποίησης τέτοιων απεικονίσεων σε τυποποιημένα στοιχεία WWW όπως είναι σελίδες HTML, κατάλογοι και αναφορές. Οι απαιτήσεις από την τεχνολογία υλοποίησης ενός κόμβου Web μπορούν να εξαχθούν με εξέταση των αρχών της τεχνολογίας λογισμικού. Rigor and Formality Μια τεχνολογία υλοποίησης θα πρέπει να παρέχει έναν αυστηρό ορισμό των οντοτήτων που εμπλέκονται στην διαδικασία υλοποίησης, τις σχέσεις τους και τις αντίστοιχες σημαντικότητες (semantics) τους. Ο ακριβής ορισμός των χαρακτηριστικών και της συμπεριφοράς των διαφορετικών στοιχείων ενός κόμβου Web υποστηρίζει την κατανόηση αυτού που κάνει την ανάπτυξη για την εφαρμογή που θέλει να παράγει. Separation of concerns Η τεχνολογία υλοποίησης θα πρέπει να παρέχει διαχωρισμό ανάμεσα στα περιεχόμενα (contents) και την δομική αναπαράσταση (structuring representation), τις προδιαγραφές πλοήγησης (navigational specification) και την παρουσίαση των περιεχομένων (contents presentation). Θα πρέπει να επιτρέπει τον ορισμό διαφορετικών τύπων οντοτήτων με ειδικά χαρακτηριστικά και συμπεριφορά. Επιπρόσθετα, η τεχνολογία θα πρέπει να επιτρέπει στον κατασκευαστή να επεκτείνει τους ιεραρχικούς τύπους με τύπους που απαιτούνται απο τις εφαρμογές. Η τεχνολογία υλοποίησης θα πρέπει να παρέχει υποστήριξη για δόμηση των περιεχομένων του κόμβου με ένα καλά ορισμένο τρόπο. Επίσης θα πρέπει να 67

72 παρέχει δυνατότητα ορισμού προτύπων πλοήγησης για την προσπέλαση των πόρων του κόμβου ξεχωριστά από την μοντελοποίηση των περιεχομένων του κόμβου. Η δυνατότητα εξαγωγής της μορφής των περιεχομένων του κόμβου τα οποία θα εμφανίζονται στον τελικό χρήστη πρέπει να καθοριστεί ξεχωριστά από τις πηγές πληροφόρησης και να παραμετρικοποιηθεί χρησιμοποιώντας τα περιεχόμενα προσπέλασης. Modularity H τεχνολογία υλοποίησης θα πρέπει να παρέχει κατασκευές και αφαιρέσεις που να επιτρέπουν στον κατασκευαστή τη διαίρεση ενός σύνθετου προβλήματος σε μικρότερες απλούστερες συνιστώσες. Τα τμήματα (modules) θα πρέπει να χρησιμοποιούν απόκρυψη πληροφοριών για να επιτρέπουν την εύκολη ολοκλήρωση και την διαχείριση. Οι μηχανισμοί τμηματοποίησης μπορούν στη συνέχεια να χρησιμοποιηθούν για να υποστηρίξουν την επαναχρησιμοποίηση. Abstraction H τεχνολογία υλοποίησης θα πρέπει να αφαιρεί ασήμαντες λεπτομέρειες και να μοντελοποιεί έννοιες οι οποίες υπονοούνται (implicit) ή έχουν αποκρυφθεί (hidden) στην τυποποιημένη τεχνολογία Web. Anticipation of change Oι κόμβοι Web απο τη φύση τους, υπόκεινται συνεχείς αλλαγές. Είναι σημαντικό να παρέχεται υποστήριξη για την συντήρηση. Η χρήση δομημένων τεχνικών, ο χειρισμός απαιτήσεων /σχεδίασης και υλοποίησης, η τμηματοποίηση, ο διαχωρισμός ενδιαφερόντων (concerns) και αφαιρέσεων (abstractions) αποτελεσματική εξέλιξη του Web. Generality αποτελούν την βάση για μια Μια τεχνολογία υλοποίησης θα πρέπει να παρέχει γενικούς μηχανισμούς υποστήριξης της ανάπτυξης κατασκευών υλοποίησης και να επιτρέπει στον κατασκευαστή να δημιουργήσει δικές του ad hoc κατασκευές καθώς και να τροποποιήσει με βάση τις ανάγκες του τις ήδη υπάρχουσες Πολιτικές παρουσίασης κόμβων Web H παρουσίαση (Web style) ενός κόμβου σχετίζεται με την ανάγκη των συγγραφέων ηλεκτρονικών εγγράφων να προσαρμοστούν στις προκλήσεις που παρέχει η δημοσίευση στην οθόνη του υπολογιστή (web screen display), η 68

73 αμεσότητα στην επικοινωνία (interactivity), η δυνατότητες των πολυμέσων (multimedia options) και οι περιορισμοί στον κώδικα (code limitations). Μια ανασκόπηση στην βιβλιογραφία των οδηγών παρουσίασης των κόμβων Web μας οδήγησε στη διαπίστωση ότι η υιοθέτηση οικείων προσεγγίσεων ενδέχεται να οδηγήσει σε εξέλιξη της εμφάνισης των κόμβων Web. Έμφαση πρέπει να δοθεί στις λειτουργίες και στο περιεχόμενο, συμπεριλαμβανομένου του κοινού, του σκοπού, των συνθηκών χρήσης καθώς επίσης και σε διάφορα πολιτιστικά, πολιτικά και ηθικά ζητήματα. Λάβετε απόφαση για τα κριτήρια αξιολόγησης της επιτυχίας Αποφασίστε σχετικά με το ποιόν θέλετε να εντυπωσιάσετε Αφείστε την πληροφορία να κατευθύνει την σχεδίαση Απλοποιείστε την διαδικασία ανάπτυξης και κινηθείτε σταδιακά Μην αναμένετε ότι οι σελίδες θα μοιάζουν με τις υπόλοιπες δημοσιεύσεις σας Χρησιμοποιείστε γραφικά με προσοχή Διατηρείστε το ενδιαφέρον των χρηστών Οι επτά χρυσοί κανόνες για σχεδίαση σελίδων Web 69

74 ΕΝΟΤΗΤΑ 3 ΟΙ ΕΦΑΡΜΟΓΕΣ ΤΩΝ ΜΗΧΑΝΩΝ ΑΝΑΖΗΤΗΣΗΣ ΣΤΟ WEB ENGINE ΕΙΣΑΓΩΓΗ ΟΙ μηχανές αναζήτησης έχουν δικές τους ιστοσελίδες στο διαδύκτιο. Χρηματοδοτούνται με διαφημίσεις και έτσι προσφέρουν τις υπηρεσίες τους στους χρήστες δωρεάν. Σε ειδικά πεδία (search forms) ο χρήστης μπορεί να πληκτρολογεί τις λέξεις κλειδιά προς αναζήτηση και η μηχανή αναζήτησης επιστρέφει τα αποτελέσματα, τους τίτλους ιστοσελίδων συνήθως μ ένα μικρό απόσπασμα του κειμένου της ιστοσελίδας (η σπανιότερα μια μικρή περιγραφή καθώς και μια υπερσύνδεση που οδηγεί σ αυτή. Οι περισσότερες μηχανές αναζήτησης προσφέρουν επίσης καταλόγους ιστοσελίδων οργανωμένους σε θεματικές ενότητες, στους οποίους ο χρήστης μπορεί να πλοηγηθεί αναζητώντας κατι που τον ενδιαφέρει π.χ. επίσης πολλές μηχανές αναζήτησης προσφέρουν μια σειρά από άλλες υπηρεσίες όπως δωρεάν (gmail, yahoomail) chat (pathfinder chat) ειδήσεις, χρηματιστήριο, καιρό κ.α. (in.gr, pathfinder) οι οποίες δεν έχουν καμία σχέση με την λειτουργία των μηχανών αναζήτησης αλλά σκοπεύουν στο να προσελκύουν επισκέπτες στις σελίδες τους. 70

75 Search Engine Marketing : Η πιο Αποδοτική και Αποτελεσματική Μορφή Προσέλκυσης και Απόκτησης Πελατών στο Internet Το Search Engine Marketing μέσω του Search Engine Optimization και της Pay per Click διαφήμισης αποτελεί την πλέον αξιόπιστη και αποτελεσματική στρατηγική Internet marketing. Γι' αυτό, χιλιάδες επιχειρήσεις απ' όλο τον κόσμο έχουν εντάξει το Search Engine Marketing στο πλάνο προώθησής τους στο Ιnternet. Η ομάδα μας μπορεί να σας βοηθήσει να αξιοποιήσετε τα πλεονεκτήματα αυτά, τα σημαντικότερα εκ των οποίων είναι: Σταθερή ροή ενδιαφερόμενων πελατών. Με την επιλογή και χρήση των κατάλληλων λέξεων κλειδιών, μπορείτε να στοχεύσετε με επιτυχία στην συγκεκριμένη αγορά που επιθυμείτε. Πελάτες απ' όλο τον κόσμο. Μπορείτε να προσελκύσετε τους χρήστες που προέρχονται από εκείνες τις χώρες που σας ενδιαφέρουν περισσότερο. Ευελιξία στο κόστος προβολής. Το Search Engine Marketing δεν απευθύνεται μόνο σε επιχειρήσεις που έχουν να διαθέσουν κάποιο σημαντικό ποσό σε Internet Marketing. Έχετε την ευελιξία να καθορίσετε εσείς το διαφημιστικό σας budget, ανάλογα με τις δυνατότητες που έχετε. Branding. Πρόσφατες μελέτες έχουν δείξει ότι ο συσχετισμός μίας μάρκας με τα αποτελέσματα αναζητήσεων σε προϊόντα και υπηρεσίες σχετικές με αυτήν, βοηθάει σημαντικά στην αναγνωρισιμότητα της. Δοκιμή νέων ιδεών και promotion. Έχετε τη δυνατότητα να δοκιμάσετε την ανταπόκριση των υποψήφιων πελατών σας σε νέα προιόντα και υπηρεσίες γρήγορα και οικονομικά. Πλήρης καταγραφή της αποτελεσματικότητας. Τα αποτελέσματα του Search Engine Marketing είναι πλήρως καταγράψιμα. Έτσι μπορείτε να λαμβάνετε τις σωστές αποφάσεις και να γνωρίζετε ανά πάσα στιγμή αν τα χρήματα που επενδύσατε απέδωσαν. Αποτελεσματική παρουσία για χρήστες και μηχανές αναζήτησης. Σκοπός μας είναι να συνδυάσουμε επιτυχημένα τα βασικά στοιχεία που χαρακτηρίζουν τον σωστό σχεδιασμό ιστοσελίδων με την αποτελεσματική προώθηση στις μηχανές αναζήτησης από το στάδιο της κατασκευής του webiste σας. Ο συνδυασμός και των δύο θα σας βοηθήσει να αξιοποιήσετε στο μέγιστο βαθμό τις δυνατότητες που παρέχει το Internet. 71

76 Η ομάδα του SearchEngineMarketing.gr θα σας βοηθήσει να υλοποιήσετε τις ιδέες σας, να προωθήσετε τα προιόντα σας τόσο στην Ελλάδα όσο και στο εξωτερικό, ενώ παράλληλα θα μπορείτε να παρακολουθείτε και την ανταπόκριση των πελατών σας. Εμπορική Εφαρμογή Οι μηχανές αναζήτησης χρησιμοποιούνται πολύ από το αγοραστικό κοινό παγκοσμίως με αποτέλεσμα να αποτελούν ένα σημαντικό μέρος στην κατανάλωση και την διαφήμιση. Στις Ηνωμένες Πολιτείες και στην Βρετανία το συνολικό κόστος διαφήμισης στο διαδίκτυο ξεπέρασε το συνολικό κόστος διαφήμισης στο ραδιόφωνο το Οι καταναλωτές ψάχνουν με 'λέξεις κλειδιά' για προϊόντα μέσω των μηχανών αναζήτησης. Οι εταιρίες που θέλουν να προβληθούν στις μηχανές αναζήτησης, πληθαίνουν, με μεγάλο ανταγωνισμό για τις πρώτες θέσεις στις ιστοσελίδες αποτελεσμάτων αναζήτησης, κάτι που οδήγησε στην ανάπτυξη ενός άλλου κλάδου, του search engine optimization (Βελτιστοποίηση για τις μηχανές αναζήτησης) που περιλαμβάνει τεχνικές κατασκευής και δικτύωσης ιστοσελίδων που να προσφέρουν καλύτερες θέσεις στα αποτελέσματα. Η τέχνη της αναζήτησης Όσο περνά ο καιρός, τόσο ο αριθμός των τόπων και των σελίδων αυξάνεται. Μερικά μυστικά που θα σας βοηθήσουν στις αναζητήσεις σας: Όσο περισσότερες λέξεις χρησιμοποιείτε, τόσο πιο σχετικά θα είναι τα αποτελέσματα που θα πάρετε. Όταν αναζητάτε ονόματα, χρησιμοποιείτε κεφαλαία γράμματα τόσο στο όνομα όσο και στο επώνυμο. Χρησιμοποιήστε τη δυνατότητα αναζήτησης στα ίδια τα αποτελέσματα ( search within results), για να περιορίσετε τον αριθμό των αποτελεσμάτων. Χρησιμοποιήστε την κάθετη γραμμή ανάμεσα στις λέξεις,, για να γίνει η αναζήτηση αυτόματα μέσα στα αποτελέσματα. 72

77 Χρησιμοποιήστε τελεστές, όπως AND ή + (και) και NOT ή (χωρίς), για να αποκλείσετε διευθύνσεις που δε σας ενδιαφέρουν. Βάλτε σε εισαγωγικά τις λέξεις που θέλετε να πηγαίνουν μαζί, για να πάρετε απαντήσεις που αφορούν µόνο τις λέξεις, όπου εμφανίζονται μαζί, ακριβώς µε αυτή τη σειρά. Προσθέστε δίπλα στη λέξη κλειδί και το συγκεκριµένο χαρακτηριστικό που ζητάτε (π.χ. φωτογραφία) Αναλύστε το θέµα σας, για να αποφασίσετε από πού θα αρχίσετε την αναζήτηση (µοναδικές έννοιες, ειδικό θέµα, συνώνυµα, άλλες καταλήξεις, κτλ.) Επιλέξτε το σωστό σηµείο εκκίνησης (βρίσκοντας την κατάλληλη (π.χ. µηχανή αναζήτησης ή θεµατικό κατάλογο ή µεταµηχανή ή ειδική βάση). Μειονεκτήματα των μηχανών αναζήτησης Δεν θυµούνται την προηγούμενη αναζήτηση. Δεν προσωποποιούν τις απαντήσεις ( π χ επιστρέφουν τα ίδια URLs σε καθηγητές Πανεπιστημίου και σε μαθητές δηµοτικού). Δεν ενημερώνουν περιοδικά για νέες εξελίξεις. Δεν φιλτράρουν την άχρηστη πληροφορία. Δεν επεξεργάζονται επιλεγμένη πληροφορία. Υπάρχουν ιστοσελίδες γενικού ενδιαφέροντος, οι οποίες, ανάμεσα στις υπηρεσίες και πληροφορίες που προσφέρουν, περιλαμβάνουν και μία μηχανή αναζήτησης. Μία από της πιο γνωστές ελληνικές πύλες είναι η 73

78 Στην πύλη αυτή μπορούμε να πληροφορηθούμε πληροφορίες για τον καιρό, το χρηματιστήριο, να πλοηγηθούμε στον κατάλογο του Ελληνικού Ιντερνέτ, να δούμε και να διαβάσουμε πρωτοσέλιδα και άρθρα για την επικαιρότητα καθώς και να αναζητήσουμε πληροφορίες στον παγκόσμιο ιστό μέσω της μηχανής αναζήτησης που μας παρέχεται. Παραδείγματα Αναζήτησης Θα χρησιμοποιήσουμε την μηχανή αναζήτησης Google για να βρούμε διάφορες πληροφορίες πχ για την υγεία. Αν πληκτρολογήσουμε στην μηχανή αναζήτησης : υγεία +διατροφή στα αποτελέσματα μας θα έχουμε ιστοσελίδες οι οποίες αναφέρουν στα περιεχόμενα τους ΚΑΙ τις 2 λέξεις που πληκτρολογήσαμε. 74

79 Αν πληκτρολογήσουμε στην μηχανή αναζήτησης : υγεία -διατροφή στα αποτελέσματα μας θα έχουμε ιστοσελίδες οι οποίες αναφέρουν στα περιεχόμενα τους την λέξη υγεία αλλά ΟΧΙ την λέξη διατροφή. 75

80 Αν πληκτρολογήσουμε στην μηχανή αναζήτησης : υγεία OR διατροφή στα αποτελέσματα μας θα έχουμε ιστοσελίδες οι οποίες αναφέρουν στα περιεχόμενα τους τουλάχιστον 1 από τις λέξεις που πληκτρολογήσαμε. 76

81 77

82 Η μηχανή αναζήτησης wolfram/alpha Η Wolfram Alpha είναι μια καινούργια μηχανή αναζήτησης πολύ διαφορετική από τη δημοφιλή GOOGLE, η οποία δεν αναζητεί πληροφορίες σε ιστοσελίδες σύμφωνα με λέξεις κλειδιά, αλλά ουσιαστικά επιχειρεί να δώσει απαντήσεις από μια δική της βάση δεδομένων. Η μηχανή, πολύ διαφορετικά από τις υπάρχουσες μηχανές αναζήτησης, αξιοποιεί μαθηματικούς αλγορίθμους, καθώς έχει ως υπόβαθρο το λογισμικό Mathematica και μια σειρά δεδομένων. Με αυτά μπορεί να εξάγει απαντήσεις σε ερωτήματα που θέτουν οι χρήστες. Στόχος της Wolfram Alpha «είναι η συλλογή και η επεξεργασία όλων των αντικειμενικών δεδομένων, η εφαρμογή κάθε γνωστού μοντέλου, μεθόδου ή αλγορίθμου και δυνατότητα να υπολογιστεί κάθε τι που υπολογίζεται». Επιπλέον, επιδιώκει να οικοδομήσει πάνω στα επιτεύγματα της επιστήμης και σε άλλη συστηματοποιημένη γνώση, ώστε να αποτελέσει μια πηγή στην οποία μπορεί κανείς να βασιστεί, για να εξασφαλίσει οριστικές απαντήσεις σε πραγματικά ερωτήματα. Αν κανείς τοποθετήσει στο ερώτημα (query) στη Wolfram Alpha, για παράδειγμα, τις λέξεις κλειδιά Greece Germany, το αποτέλεσμα δεν είναι ένας κατάλογος ιστοσελίδων με τις λέξεις αυτές, αλλά μια συγκριτική προβολή στοιχείων για τις δύο χώρες, όπως στοιχεία που αφορούν στις διεθνείς ονομασίες των χωρών, χάρτες, αποστάσεις, διάφορα στατιστικά για τον πληθυσμό, το προσδόκιμο ζωής κτλ., καθώς και άλλες πληροφορίες οικονομικής φύσεως όπως το ακαθάριστο εθνικό εισόδημα. Η σπουδαιότητα αυτής της μηχανής για την Γλωσσολογία και ειδικότερα για την Υπολογιστική Γλωσσολογία είναι μεγάλη. Η υπολογιστική μηχανή αναζήτησης περιλαμβάνει στοιχεία που δείχνουν ότι μπορεί να επεξεργάζεται και να τεχνολογεί γλωσσικά δεδομένα και από αυτά να δίνει απαντήσεις. 78

83 Δίνεται επιπλέον η δυνατότητα για αναζήτηση πληροφορίας με ερωτήματα τα οποία περιλαμβάνουν στοιχεία φυσικής γλώσσας. Στην ουσία ο χρήστης μπορεί να δώσει το ερώτημα σε φυσική γλώσσας, η μηχανή αναζήτησης ωστόσο δεν «καταλαβαίνει» φυσική γλώσσα αλλά εντοπίζει τις λέξεις κλειδιά του ερωτήματος: 79

84 Ενδεικτικά στην ερώτηση «What is your name?» η μηχανή απαντά «My name is Wolfram Alpha», ενώ στην ερώτηση «How are you?», απάντησε «I am doing well, thank you» και στο χαιρετισμό «Hello» ανταποκρίνεται με το ωραίο «Hello, human», ενώ στην ερώτηση δε Who wrote the Iliad?, δίνει ως απάντηση Homer. Βέβαια, αυτά μπορεί να μην εντυπωσιάζουν ένα γλωσσολόγο που γνωρίζει ότι και χωρίς πραγματική γλωσσική επεξεργασία ένας αλγόριθμος μπορεί να μιμηθεί ανθρώπινες απαντήσεις, όπως έκανε ήδη από τα μέσα του 1960 το πρόγραμμα ELIZA και άλλα μεταγενέστερα. Ωστόσο, υπάρχουν ορισμένες δυνατότητες που όντως είναι σημαντικές, σχετικές με τη λεξικογραφία και τη στατιστική γραμματική ανάλυση. Για παράδειγμα σε μια αναζήτηση της λέξης subject «υποκείμενο», η υπολογιστική μηχανή δίνει μια πληθώρα απαντήσεων όπως: (α) Δεκαπέντε ξεχωριστές σημασίες: οκτώ για το ουσιαστικό subject, τρεις για το ρήμα και τέσσερις για το επίθετο. 80

85 (β) Στοιχεία για την ετυμολογία της λέξης. (γ) Στοιχεία για τη συχνότητα της λέξεις σε προφορικά και γραπτά σώματα κειμένων, βασισμένο στο Βρετανικό Εθνικό Σώμα (British National Corpus, BNC). (δ) Την προφορά σε Διεθνές Φωνητικό Αλφάβητο. (ε) Τα συνώνυμα για το ουσιαστικό, ρήμα και επίθετο. (στ) Δίνει υπερώνυμα ή ευρύτερους όρους και υπώνυμα στενότερους όρους, (ζ) Ένα δίκτυο συνωνύμων σε γράφημα και (η) Το συλλαβισμό της λέξης. Ο χρήστης μπορεί να ζητήσεις και ειδικότερες απαντήσεις για παράδειγμα αν τροφοδοτήσει τη μηχανή με το ερώτημα «synonyms of answer» θα πάρει ως απάντηση τα συνώνυμα του ρήματος και του ουσιαστικού answer. Σε επίπεδο γραμματικής ανάλυσης, η υπολογιστική μηχανή Wolfram Alpha έχει τη δυνατότητα στατιστικής τεχνολόγησης (parsing) προτάσεων και της ανάλυσής τους σε ομάδες σύμφωνα με δεδομένες γραμματικές (n-grams). Τροφοδοτήσαμε για παράδειγμα την υπολογιστική μηχανή με την τυχαία πρόταση «I have a cat, my cat is black» και το αποτέλεσμα ήταν μια σειρά από ν-γραμματικές (n-grams) σε επίπεδο φωνητικό και σε επίπεδο λεξικό. Τα πιο κάτω δενδροδιαγράμματα είναι το αποτέλεσμα της λεξικής κατανομής που προέκυψε από την ανάλυση της πρότασης (σημειώνεται ότι η 81

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

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ Δρ. Κουζαπάς Δημήτριος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Μηχανές Αναζήτησης Στόχοι 1 Να εξηγήσουμε για ποιον λόγο μας είναι απαραίτητες

Διαβάστε περισσότερα

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

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Μηχανές αναζήτησης ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Μηχανές αναζήτησης Στόχοι 1 Να εξηγήσουμε για ποιο λόγο μας είναι απαραίτητες οι μηχανές αναζήτησης στον Παγκόσμιο Ιστό. Να περιγράψουμε κάποιους

Διαβάστε περισσότερα

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

ΕΠΛ 002: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Μηχανές αναζήτησης ΕΠΛ 002: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Μηχανές αναζήτησης Στόχοι 1 Να εξηγήσουμε για ποιον λόγο μας είναι απαραίτητες οι μηχανές αναζήτησης στον Παγκόσμιο Ιστό. Να περιγράψουμε κάποιους από τους

Διαβάστε περισσότερα

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

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Μηχανές αναζήτησης ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Μηχανές αναζήτησης Στόχοι 1 Να εξηγήσουμε για ποιον λόγο μας είναι απαραίτητες οι μηχανές αναζήτησης στον Παγκόσμιο Ιστό. Να περιγράψουμε κάποιους από τους

Διαβάστε περισσότερα

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

Ανάκτηση Πληροφορίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ανάκτηση Πληροφορίας Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #14 Αναζήτηση στο Web Φοίβος Μυλωνάς fmylonas@ionio.gr Ανάκτηση Πληροφορίας 1 Άδεια χρήσης

Διαβάστε περισσότερα

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

Πώς λειτουργεί το Google? Πώς λειτουργεί το Google? Στα άδυτα του Γίγαντα της Αναζήτησης! Το να ψάξουμε κάτι στο Google είναι κάτι τόσο καθημερινό για τους περισσότερους από εμάς, που το θεωρούμε δεδομένο. Αυτό που ίσως ξεχνάμε

Διαβάστε περισσότερα

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

Περιεχόμενα. Δημιουργία σύνδεσης... 27 5. ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ... 37. Γνωριμία με μια ιστοσελίδα:... 38 Περιεχόμενα ΠΡΟΛΟΓΟΣ... 11 ΔΙΑΔΙΚΤΥΟ... 13 1. ΙΣΤΟΡΙΑ ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ... 15 2. ΤΙ ΕΙΝΑΙ ΤΟ ΔΙΑΔΙΚΤΥΟ INTERNET;... 16 3. ΤΙ ΠΡΟΣΦΕΡΕΙ ΤΟ ΔΙΑΔΙΚΤΥΟ, ΤΙ ΜΠΟΡΕΙ ΝΑ ΒΡΕΙ ΚΑΝΕΙΣ... 19 4. ΤΙ ΑΠΑΙΤΕΙΤΑΙ ΓΙΑ ΝΑ

Διαβάστε περισσότερα

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

Ανάκτηση πληροφορίας ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ανάκτηση πληροφορίας Ενότητα 6: Ο Αντεστραμμένος Κατάλογος Απόστολος Παπαδόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι. 5 η Διάλεξη. Μάθημα: Τεχνολογίες Διαδικτύου

Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι. 5 η Διάλεξη. Μάθημα: Τεχνολογίες Διαδικτύου Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι 5 η Διάλεξη Μάθημα: Τεχνολογίες Διαδικτύου Περιεχόμενα 5 η διάλεξη Μηχανές αναζήτησης Αναζήτηση στο Web Ωραίο το Web και το Internet Μάθαμε

Διαβάστε περισσότερα

Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι. 5 η Διάλεξη. Μάθημα: Τεχνολογίες Διαδικτύου

Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι. 5 η Διάλεξη. Μάθημα: Τεχνολογίες Διαδικτύου Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι 5 η Διάλεξη Μάθημα: Τεχνολογίες Διαδικτύου Περιεχόμενα 5 η διάλεξη Μηχανές αναζήτησης Αναζήτηση στο Web Ωραίο το Web και το Internet Μάθαμε

Διαβάστε περισσότερα

«Μηχανή Αναζήτησης Αρχείων» Ημερομηνία Παράδοσης: 30/04/2015, 09:00 π.μ.

«Μηχανή Αναζήτησης Αρχείων» Ημερομηνία Παράδοσης: 30/04/2015, 09:00 π.μ. ΕΡΓΑΣΙΑ 4 «Μηχανή Αναζήτησης Αρχείων» Ημερομηνία Παράδοσης: 30/04/2015, 09:00 π.μ. Στόχος Στόχος της Εργασίας 4 είναι να η εξοικείωση με την αντικειμενοστρέφεια (object oriented programming). Πιο συγκεκριμένα,

Διαβάστε περισσότερα

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

1 Συστήματα Αυτοματισμού Βιβλιοθηκών 1 Συστήματα Αυτοματισμού Βιβλιοθηκών Τα Συστήματα Αυτοματισμού Βιβλιοθηκών χρησιμοποιούνται για τη διαχείριση καταχωρήσεων βιβλιοθηκών. Τα περιεχόμενα των βιβλιοθηκών αυτών είναι έντυπα έγγραφα, όπως βιβλία

Διαβάστε περισσότερα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ. Συγκομιδή και δεικτοδότηση ιστοσελίδων Γλωσσική Τεχνολογία Ακαδημαϊκό Έτος 2010-2011 ΑΣΚΗΣΗ Συγκομιδή και δεικτοδότηση ιστοσελίδων Σκοπός της άσκησης είναι η υλοποίηση ενός ολοκληρωμένου συστήματος συγκομιδής και δεικτοδότησης ιστοσελίδων.

Διαβάστε περισσότερα

Κατακερματισμός (Hashing)

Κατακερματισμός (Hashing) Κατακερματισμός (Hashing) O κατακερματισμός είναι μια τεχνική οργάνωσης ενός αρχείου. Είναι αρκετά δημοφιλής μέθοδος για την οργάνωση αρχείων Βάσεων Δεδομένων, καθώς βοηθάει σημαντικά στην γρήγορη αναζήτηση

Διαβάστε περισσότερα

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών Περιεχόµενα World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών Εισαγωγή Ιστορική Αναδροµή Το ιαδίκτυο και το WWW Υπερκείµενο Εντοπισµός πληροφοριών στο WWW Search Engines Portals Unicode Java Plug-Ins 1 2

Διαβάστε περισσότερα

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Όνοµα: Νικολαΐδης Αντώνιος Επιβλέπων: Τ. Σελλής Περίληψη ιπλωµατικής Εργασίας Συνεπιβλέποντες: Θ. αλαµάγκας, Γ. Γιαννόπουλος

Διαβάστε περισσότερα

Πληροφορική 2. Δομές δεδομένων και αρχείων

Πληροφορική 2. Δομές δεδομένων και αρχείων Πληροφορική 2 Δομές δεδομένων και αρχείων 1 2 Δομή Δεδομένων (data structure) Δομή δεδομένων είναι μια συλλογή δεδομένων που έχουν μεταξύ τους μια συγκεκριμένη σχέση Παραδείγματα δομών δεδομένων Πίνακες

Διαβάστε περισσότερα

E-commerce Networks & Applications. Η διαφήμιση στο Internet. Νίκος Κωνσταντίνου

E-commerce Networks & Applications. Η διαφήμιση στο Internet. Νίκος Κωνσταντίνου E-commerce Networks & Applications Η διαφήμιση στο Internet Νίκος Κωνσταντίνου Εισαγωγή Ηαπλήδημιουργίαενόςsite δεν είναι πλέον αρκετή Μια επένδυση σε ανάπτυξη και συντήρηση δεν αποδίδει χωρίς διαφήμιση

Διαβάστε περισσότερα

Λύση (από: Τσιαλιαμάνης Αναγνωστόπουλος Πέτρος) (α) Το trie του λεξιλογίου είναι

Λύση (από: Τσιαλιαμάνης Αναγνωστόπουλος Πέτρος) (α) Το trie του λεξιλογίου είναι Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών HY463 - Συστήματα Ανάκτησης Πληροφοριών 2006-2007 Εαρινό Εξάμηνο 3 η Σειρά ασκήσεων (Ευρετηρίαση, Αναζήτηση σε Κείμενα και Άλλα Θέματα) (βαθμοί 12: όποιος

Διαβάστε περισσότερα

Βασικές Υπηρεσίες Διαδικτύου. Επικοινωνίες Δεδομένων Μάθημα 2 ο

Βασικές Υπηρεσίες Διαδικτύου. Επικοινωνίες Δεδομένων Μάθημα 2 ο Βασικές Υπηρεσίες Διαδικτύου Επικοινωνίες Δεδομένων Μάθημα 2 ο Μεταφορά αρχείων (File Transfer Protocol, FTP) user at host FTP user interface FTP client local file system file transfer FTP server remote

Διαβάστε περισσότερα

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

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής 4 φάσεις διαδικτυακών εφαρμογών 1.Εφαρμογές στατικής πληροφόρησης

Διαβάστε περισσότερα

Ανάκληση Πληποφοπίαρ. Διδάζκων Δημήηριος Καηζαρός

Ανάκληση Πληποφοπίαρ. Διδάζκων Δημήηριος Καηζαρός Ανάκληση Πληποφοπίαρ Διδάζκων Δημήηριος Καηζαρός Διάλεξη 18η: 17/05/2017 1 Η μέθοδος BrowseRank 2 Εισαγωγή Η page importance, που αναπαριστά την αξία μιας σελίδας του Web, είναι παράγων-κλειδί για την

Διαβάστε περισσότερα

Vodafone Business Connect

Vodafone Business Connect Vodafone Business Connect Vodafone Business WebHosting Αναλυτικός Οδηγός Χρήσης EasySite Optimizer Αναλυτικός οδηγός χρήσης: EasySite Optimizer Vodafone Business Connect - Υπηρεσίες φιλοξενίας εταιρικού

Διαβάστε περισσότερα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 2: Σύστημα Αρχείων Τα προγράμματα που εκτελούνται

Διαβάστε περισσότερα

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη Εσωτερική Μνήμη Κρυφή Μνήμη (Cache) μεγαλύτερη χωρητικότητα Καταχωρητές (Registers) Κεντρική Μονάδα (CPU) μεγαλύτερη ταχύτητα Πολλές σημαντικές εφαρμογές διαχειρίζονται

Διαβάστε περισσότερα

./mydiz {-c -a -x -m -d -p -j} <archive-file> <list-of-files/dirs>

./mydiz {-c -a -x -m -d -p -j} <archive-file> <list-of-files/dirs> ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Τμήμα Πληροφορικής και Τηλεπικοινωνιών η Εργασία - Τμήμα: Περιττών Αριθμών Μητρώου Κ: Λειτουργικά Συστήματα Χειμερινό Εξάμηνο 6 Ημερομηνία Ανακοίνωσης: 8 Ιανουαρίου Ημερομηνία Υποβολής:

Διαβάστε περισσότερα

Ανάκτηση Πληροφορίας. Διδάσκων: Φοίβος Μυλωνάς. Διάλεξη #03

Ανάκτηση Πληροφορίας. Διδάσκων: Φοίβος Μυλωνάς. Διάλεξη #03 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ανάκτηση Πληροφορίας Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #03 Βασικές έννοιες Ανάκτησης Πληροφορίας Δομή ενός συστήματος IR Αναζήτηση με keywords ευφυής

Διαβάστε περισσότερα

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I Διαδικτυακή Εφαρμογή (1/2) Ως διαδικτυακή εφαρμογή μπορούμε

Διαβάστε περισσότερα

Φροντιστήριο 4. Άσκηση 1. Λύση. Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών HY463 - Συστήµατα Ανάκτησης Πληροφοριών Εαρινό Εξάµηνο

Φροντιστήριο 4. Άσκηση 1. Λύση. Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών HY463 - Συστήµατα Ανάκτησης Πληροφοριών Εαρινό Εξάµηνο Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών HY463 - Συστήµατα Ανάκτησης Πληροφοριών 2007-2008 Εαρινό Εξάµηνο Άσκηση 1 Φροντιστήριο 4 Θεωρείστε ένα έγγραφο με περιεχόμενο «αυτό είναι ένα κείμενο και

Διαβάστε περισσότερα

Αυτόματο Σύστημα Εύρεσης και Κατηγοριοποίησης Ευκαιριών Εργασίας Μηχανικών (ΕΥΡΗΚΑ)

Αυτόματο Σύστημα Εύρεσης και Κατηγοριοποίησης Ευκαιριών Εργασίας Μηχανικών (ΕΥΡΗΚΑ) Αυτόματο Σύστημα Εύρεσης και Κατηγοριοποίησης Ευκαιριών Εργασίας Μηχανικών (ΕΥΡΗΚΑ) Λάζαρος Πολυμενάκος, καθηγητής ΑΙΤ Ηρακλής Καπρίτσας, telia.co.gr Βασίλης Κατσάρης, telia.co.gr Σύνοψη Το σύστημα ΕΥΡΗΚΑ

Διαβάστε περισσότερα

Εργασία «Διαχείριση Δικτύων» Ιούνιος 2014, Θεσ/νίκη

Εργασία «Διαχείριση Δικτύων» Ιούνιος 2014, Θεσ/νίκη Εργασία «Διαχείριση Δικτύων» Ιούνιος 2014, Θεσ/νίκη 01 Εισαγωγή Μια απλή και γρήγορη εισαγωγή Το Splunk > είναι ένα πρόγραμμα το οποίο πρωτοεμφανίστηκε στην αγορά το 2003 και αποτελεί ένα πρόγραμμα εξόρυξης

Διαβάστε περισσότερα

Δικτυακοί τόποι. Η σχεδίαση ενός δικτυακού τόπου. Δρ. Ματθαίος Α. Πατρινόπουλος

Δικτυακοί τόποι. Η σχεδίαση ενός δικτυακού τόπου. Δρ. Ματθαίος Α. Πατρινόπουλος Δικτυακοί τόποι Η σχεδίαση ενός δικτυακού τόπου Δρ. Ματθαίος Α. Πατρινόπουλος Πώς χρησιμοποιούμε το διαδίκτυο; ΔΙΑΦΑΝΕΙΕΣ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΔΙΑΔΙΚΤΥΟΥ. 2 Από το www.smartinsights.

Διαβάστε περισσότερα

Unity Editor #04 Κεντρικό Μενού: Edit, Unity Preferences

Unity Editor #04 Κεντρικό Μενού: Edit, Unity Preferences Unity Editor #04 Κεντρικό Μενού: Edit, Unity Preferences Γεια σου. Σε αυτό το μάθημα θα μιλήσουμε για τις δυνατότητες που μας δίνει η Unity να την κάνουμε να λειτουργεί όπως θέλουμε. Η αλήθεια είναι ότι

Διαβάστε περισσότερα

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων ..?????? Εργαστήριο ΒΑΣΕΙΣ????????? ΔΕΔΟΜΕΝΩΝ Βάσεων Δεδομένων?? ΙΙ Εισαγωγικό Μάθημα Βασικές Έννοιες - . Γενικά Τρόπος Διεξαγωγής Ορισμός: Βάση Δεδομένων (ΒΔ) είναι μια συλλογή από σχετιζόμενα αντικείμενα

Διαβάστε περισσότερα

Posting File. D i. tf key1 [position1 position2 ] D j tf key2... D l.. tf keyl

Posting File. D i. tf key1 [position1 position2 ] D j tf key2... D l.. tf keyl ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΗΥ463 Συστήµατα Ανάκτησης Πληροφοριών Εργασία: Ανεστραµµένο Ευρετήριο Εισαγωγή Σκοπός της εργασίας είναι η δηµιουργία ενός ανεστραµµένου ευρετηρίου για τη µηχανή αναζήτησης Μίτος, το

Διαβάστε περισσότερα

Κεφ.11: Ευρετήρια και Κατακερματισμός

Κεφ.11: Ευρετήρια και Κατακερματισμός Κεφ.11: Ευρετήρια και Κατακερματισμός Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Κεφ. 11: Ευρετήρια-Βασική θεωρία Μηχανισμοί ευρετηρίου χρησιμοποιούνται για την επιτάχυνση

Διαβάστε περισσότερα

ΑΣΚΗΣΗ. Δημιουργία Ευρετηρίων Συλλογής Κειμένων

ΑΣΚΗΣΗ. Δημιουργία Ευρετηρίων Συλλογής Κειμένων Γλωσσική Τεχνολογία Ακαδημαϊκό Έτος 2011-2012 Ημερομηνία Παράδοσης: Στην εξέταση του μαθήματος ΑΣΚΗΣΗ Δημιουργία Ευρετηρίων Συλλογής Κειμένων Σκοπός της άσκησης είναι η υλοποίηση ενός συστήματος επεξεργασίας

Διαβάστε περισσότερα

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων Ενότητα 4 Επεξεργασία πινάκων 36 37 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε

Διαβάστε περισσότερα

Εισαγωγή στην Access 2007

Εισαγωγή στην Access 2007 Βάσεις Δεδομένων Ι 3 Εισαγωγή στην Access 2007 Τμήμα Διοίκησης Επιχειρήσεων (Μεσολόγγι) ΤΕΙ Δυτικής Ελλάδας ΝΙΚΟΣ ΚΑΡΟΥΣΟΣ - ΔΙΟΝΥΣΗΣ ΚΑΡΟΥΣΟΣ XE 2015-2016 Βάση Δεδομένων και Access Ένα οργανωμένο σύνολο

Διαβάστε περισσότερα

Βασικά ζητήματα μιας βάσης δεδομένων

Βασικά ζητήματα μιας βάσης δεδομένων Τριαντάφυλλος Πριμηκύρης* Βασικά ζητήματα μιας βάσης δεδομένων Τι είναι μια βάση δεδομένων; Ας ξεκινήσουμε με κάτι πολύ απλό! Όλοι έχετε έναν τηλεφωνικό κατάλογο. Ο κατάλογος αυτός είναι μια χειροκίνητη

Διαβάστε περισσότερα

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Εξαγωγή γεωγραφικής πληροφορίας από δεδομένα παρεχόμενα από χρήστες του

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System) 2.1.1 Εισαγωγή στη διαχείριση αρχείων Οι Η/Υ αποθηκεύουν τα δεδομένα και τα επεξεργάζονται. Εφαρμογή Προγράμματος C:\Documents and Settings\user\Τα έγγραφά μου\leitourgika.doc Λ.Σ. File System Γι αυτό

Διαβάστε περισσότερα

Δομές Δεδομένων και Αλγόριθμοι

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 19 Hashing - Κατακερματισμός 1 / 23 Πίνακες απευθείας πρόσβασης (Direct Access Tables) Οι πίνακες απευθείας

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Βάσεις Δεδομένων - Γενικά Ορισμός: Βάση Δεδομένων (ΒΔ) είναι μια συλλογή από σχετιζόμενα αντικείμενα. Τα περιεχόμενα

Διαβάστε περισσότερα

Εισαγωγή στον Παγκόσμιο ιστό και στη γλώσσα Html. Χρ. Ηλιούδης

Εισαγωγή στον Παγκόσμιο ιστό και στη γλώσσα Html. Χρ. Ηλιούδης Εισαγωγή στον Παγκόσμιο ιστό και στη γλώσσα Html Χρ. Ηλιούδης Παγκόσμιος Ιστός (WWW) Ο Παγκόσμιος Ιστός (World Wide Web WWW), ή απλώς Ιστός, βασίζεται στην ιδέα των κατανεμημένων πληροφοριών. Αντί όλες

Διαβάστε περισσότερα

Social Web: lesson #4

Social Web: lesson #4 Social Web: lesson #4 looking for relevant information browsing searching monitoring recommendations Information Retrieval the inverted index Google.com the pagerank algorithm the value of words the price

Διαβάστε περισσότερα

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

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 2. Πίνακες 45 23 28 95 71 19 30 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 12/10/2017

Διαβάστε περισσότερα

Microsoft Excel Κεφάλαιο 1. Εισαγωγή. Βιβλίο εργασίας

Microsoft Excel Κεφάλαιο 1. Εισαγωγή. Βιβλίο εργασίας Περιεχόμενα Κεφάλαιο 1 Microsoft Excel 2010... 7 Κεφάλαιο 2 Η δομή ενός φύλλου εργασίας... 19 Κεφάλαιο 3 ημιουργία νέου βιβλίου εργασίας και καταχώριση δεδομένων... 24 Κεφάλαιο 4 Συμβουλές για την καταχώριση

Διαβάστε περισσότερα

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

Διαβάστε περισσότερα

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head>

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head> Εισαγωγη στην html Ο παγκόσμιος ιστός (αγγ.: World Wide Web ή www) είναι η πιο δημοφιλής υπηρεσία που μας παρέχει το Διαδίκτυο (Internet) και είναι ένα σύστημα διασυνδεδεμένων πληροφοριών (κειμένου, εικόνας,

Διαβάστε περισσότερα

Άνοιγμα (και κλείσιμο) της εφαρμογής Εγγράφου Κειμένου

Άνοιγμα (και κλείσιμο) της εφαρμογής Εγγράφου Κειμένου 3.1.1.1 Άνοιγμα (και κλείσιμο) της εφαρμογής Εγγράφου Κειμένου Ως επί το πλείστον δεν υπάρχουν διαφορές στη χρήση του Εγγράφου Κειμένου στα λειτουργικά Windows ή Linux. Η σημαντικότερη διαφορά παρουσιάζεται

Διαβάστε περισσότερα

Αναζήτηση στον Ιστό. Πληκτρολόγηση του URL: στο πλαίσιο αναζήτησης του Mozilla Firefox. Enter ή κλικ στο Αναζήτηση

Αναζήτηση στον Ιστό. Πληκτρολόγηση του URL:  στο πλαίσιο αναζήτησης του Mozilla Firefox. Enter ή κλικ στο Αναζήτηση Αναζήτηση στον Ιστό Χρήση μιας μηχανής αναζήτησης Επιλογή συγκεκριμένης μηχανής αναζήτησης Είναι συχνό το φαινόμενο να θέλει ο χρήστης να εντοπίσει πληροφορίες στο διαδίκτυο και να μην ξέρει που να κοιτάξει.

Διαβάστε περισσότερα

ΑΡΧΙΜΗ ΗΣ - ΕΝΙΣΧΥΣΗ ΕΡΕΥΝΗΤΙΚΩΝ ΟΜΑ ΩΝ ΣΤΑ ΤΕΙ. Υποέργο: «Ανάκτηση και προστασία πνευµατικών δικαιωµάτων σε δεδοµένα

ΑΡΧΙΜΗ ΗΣ - ΕΝΙΣΧΥΣΗ ΕΡΕΥΝΗΤΙΚΩΝ ΟΜΑ ΩΝ ΣΤΑ ΤΕΙ. Υποέργο: «Ανάκτηση και προστασία πνευµατικών δικαιωµάτων σε δεδοµένα ΑΡΧΙΜΗ ΗΣ - ΕΝΙΣΧΥΣΗ ΕΡΕΥΝΗΤΙΚΩΝ ΟΜΑ ΩΝ ΣΤΑ ΤΕΙ Υποέργο: «Ανάκτηση και προστασία πνευµατικών δικαιωµάτων σε δεδοµένα πολυδιάστατου ψηφιακού σήµατος (Εικόνες Εικονοσειρές)» Πακέτο Εργασίας 1: Ανάπτυξη βάσης

Διαβάστε περισσότερα

Ο αλγόριθμος PageRank της Google

Ο αλγόριθμος PageRank της Google Ο αλγόριθμος PageRank της Google 1 Η μηχανή αναζήτησης Google Το Google ξεκίνησε σαν μια κολεγιακή εργασία από τον Larry Page και τον Sergey Brin το 1996 με σκοπό την κατασκευή μιας μηχανής αναζήτησης

Διαβάστε περισσότερα

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27 Περιεχόμενα Κεφάλαιο 1 Εισαγωγή στην Access... 9 Γνωριμία με την Access... 12 Δημιουργία βάσης δεδομένων... 22 Άνοιγμα και κλείσιμο βάσης δεδομένων... 24 Ερωτήσεις ανακεφαλαίωσης... 25 Πρακτική εξάσκηση...

Διαβάστε περισσότερα

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

Ανάκτηση Πληροφορίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ανάκτηση Πληροφορίας Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #06 Πιθανοτικό Μοντέλο 1 Άδεια χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

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

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 2. Πίνακες 45 23 28 95 71 19 30 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 21/10/2016

Διαβάστε περισσότερα

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7 Οι σημειώσεις που ακολουθούν περιγράφουν τις ασκήσεις που θα συναντήσετε στο κεφάλαιο 7. Η πιο συνηθισμένη και βασική άσκηση αναφέρεται στο IP Fragmentation,

Διαβάστε περισσότερα

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων -Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a) Create

Διαβάστε περισσότερα

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

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Κεφάλαιο 4 SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ 1 4.1 ΕΙΣΑΓΩΓΗ...3 4.2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ...3 4.2.1 Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...3 4.2.1.1 ΣΤΑΘΜΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...4 4.2.1.2 ΔΙΑΧΕΙΡΙΖΟΜΕΝΟΙ

Διαβάστε περισσότερα

Ανάκτηση Πληροφορίας (Information Retrieval IR) ιδακτικό βοήθηµα 2. Πανεπιστήµιο Θεσσαλίας Πολυτεχνική Σχολή Τµήµα Μηχ. Η/Υ, Τηλ/νιών & ικτύων

Ανάκτηση Πληροφορίας (Information Retrieval IR) ιδακτικό βοήθηµα 2. Πανεπιστήµιο Θεσσαλίας Πολυτεχνική Σχολή Τµήµα Μηχ. Η/Υ, Τηλ/νιών & ικτύων Ανάκτηση Πληροφορίας (Information Retrieval IR) Πανεπιστήµιο Θεσσαλίας Πολυτεχνική Σχολή Τµήµα Μηχ. Η/Υ, Τηλ/νιών & ικτύων Ακαδηµαϊκό Έτος 2005-2006 ιδακτικό βοήθηµα 1 Καλύπτει το 60% του 510 σελίδες 1η

Διαβάστε περισσότερα

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ ΕΝΟΤΗΤΑ 1.1 ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ ΔΙΔΑΚΤΙΚΟI ΣΤOΧΟΙ Στο τέλος της ενότητας αυτής πρέπει να μπορείτε: να επεξηγείτε τις έννοιες «βάση δεδομένων» και «σύστημα διαχείρισης βάσεων δεδομένων» να αναλύετε

Διαβάστε περισσότερα

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών

ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών ΕΠΛ 012 Εισαγωγή στο Παγκόσμιο Πλέγμα Πληροφοριών World Wide Web (WWW) Θέματα Επεξεργασία δεδομένων στο Web Δημιουργία απλών σελίδων HTML Περιγραφή κάποιων XHTML στοιχείων (tags) Εξέλιξης του WWW Το WWW

Διαβάστε περισσότερα

Ποια cookies χρησιμοποιούμε στον ιστότοπό μας;

Ποια cookies χρησιμοποιούμε στον ιστότοπό μας; Πολιτική Cookies Χρησιμοποιούμε cookies στον ιστότοπο μας για τη διαχείριση των περιόδων σύνδεσης, για την παροχή εξατομικευμένων ιστοσελίδων και για την προσαρμογή διαφημιστικού και άλλου περιεχομένου

Διαβάστε περισσότερα

Ανάκτηση Πληροφορίας (Information Retrieval IR)

Ανάκτηση Πληροφορίας (Information Retrieval IR) Ανάκτηση Πληροφορίας (Information Retrieval IR) Πανεπιστήµιο Θεσσαλίας Πολυτεχνική Σχολή Τµήµα Μηχ. Η/Υ, Τηλ/νιών & ικτύων Ακαδηµαϊκό Έτος 2005-2006 ιδακτικό βοήθηµα 1 Καλύπτει το 60% του αντικειµένου

Διαβάστε περισσότερα

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Κατακερματισμός 1 Αποθήκευση εδομένων (σύνοψη) Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Παραδοσιακά, μία σχέση (πίνακας/στιγμιότυπο) αποθηκεύεται σε ένα αρχείο Αρχείο δεδομένων

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης

Πληροφοριακά Συστήματα Διοίκησης Πληροφοριακά Συστήματα Διοίκησης Τρεις αλγόριθμοι μηχανικής μάθησης ΠΜΣ Λογιστική Χρηματοοικονομική και Διοικητική Επιστήμη ΤΕΙ Ηπείρου @ 2018 Μηχανική μάθηση αναγνώριση προτύπων Η αναγνώριση προτύπων

Διαβάστε περισσότερα

Βάσεις δεδομένων και Microsoft Access

Βάσεις δεδομένων και Microsoft Access Περιεχόμενα Κεφάλαιο 1 Βάσεις δεδομένων και Microsoft Access... 7 Κεφάλαιο 2 Microsoft Access 2010... 16 Κεφάλαιο 3 Σχεδιασμός βάσης δεδομένων και δημιουργία πίνακα... 27 Κεφάλαιο 4 Προβολές πινάκων και

Διαβάστε περισσότερα

Β Γραφικές παραστάσεις - Πρώτο γράφημα Σχεδιάζοντας το μήκος της σανίδας συναρτήσει των φάσεων της σελήνης μπορείτε να δείτε αν υπάρχει κάποιος συσχετισμός μεταξύ των μεγεθών. Ο συνήθης τρόπος γραφικής

Διαβάστε περισσότερα

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η Αρχές Δικτύων Επικοινωνιών Σελ. 9-50 Γεώργιος Γιαννόπουλος ΠΕ19, ggiannop (at) sch.gr http://diktya-epal-b.ggia.info/ Creative Commons License 3.0 Share-Alike Σύνδεση από σημείο

Διαβάστε περισσότερα

To λεξικό του Internet

To λεξικό του Internet To λεξικό του Internet A Address: Ο τόπος που βρίσκεται μια πηγή του Internet. Μια e-mail address μπορεί να έχει την εξής μορφή : georgepapado@hotmail.com. Μια web address είναι κάπως έτσι: http://www.in.gr.

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ: ΕΙΔΟΣ ΜΑΘΗΜΑΤΟΣ: Μικτό Γενικός σκοπός είναι να αποκτήσει ο καταρτιζόμενος τις αναγκαίες γνώσεις σχετικά με εργαλεία και τις τεχνικές για

Διαβάστε περισσότερα

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

Το διαδίκτυο είναι ένα δίκτυο που αποτελείτε από πολλά μικρότερα δίκτυα υπολογιστών. Κεφάλαιο 2 Με το διαδίκτυο μπορεί κάποιος: να κάνει έρευνα, να ψωνίσει για διάφορες υπηρεσίες και προϊόντα, να δει καιρικούς χάρτες, να πάρει φωτογραφίες, ταινίες, και διάφορες άλλες πληροφορίες που βρίσκονται

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων 1.1. Εισαγωγή Γενικότερα δεν υπάρχει κάποια ταξινόμηση των πιθανών δικτύων κάτω από την οποία να ταιριάζουν όλα τα δίκτυα. Παρόλα αυτά η ταξινόμηση τους είθισται να γίνεται

Διαβάστε περισσότερα

Δομή Ηλεκτρονικού υπολογιστή

Δομή Ηλεκτρονικού υπολογιστή Δομή Ηλεκτρονικού υπολογιστή Η κλασσική δομή του μοντέλου που πρότεινε το 1948 ο Von Neumann Κεντρική Μονάδα Επεξεργασίας Είσοδος Αποθήκη Αποθήκη - Έξοδος Εντολών Δεδομένων Κλασσικό μοντέλο Von Neumann

Διαβάστε περισσότερα

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25 Περιεχόμενα Κεφάλαιο 1 Εισαγωγή στην Access...9 Γνωριμία με την Access... 12 Δημιουργία βάσης δεδομένων... 18 Άνοιγμα και κλείσιμο βάσης δεδομένων... 21 Ερωτήσεις ανακεφαλαίωσης... 22 Πρακτική εξάσκηση...

Διαβάστε περισσότερα

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

Διαδίκτυο: Ιστορία, Δομή, Υπηρεσίες Διαδίκτυο: Ιστορία, Δομή, Υπηρεσίες 1 η Ερώτηση (Ορισμός): Τι είναι το Διαδίκτυο; Διαδίκτυο είναι το παγκόσμιο δίκτυο όλων των επιμέρους δικτύων που έχουν συμφωνήσει σε κοινούς κανόνες επικοινωνίας και

Διαβάστε περισσότερα

1. ΕΙΣΑΓΩΓΗ 2. ΠΕΡΙΓΡΑΦΗ

1. ΕΙΣΑΓΩΓΗ 2. ΠΕΡΙΓΡΑΦΗ 1. ΕΙΣΑΓΩΓΗ Το πακέτο λογισµικού AuctionDesigner είναι ένα από τα πολλά πακέτα που έχουν σχεδιαστεί και µπορεί να παραγγείλει κανείς µέσω του Internet µε σκοπό να αναπτύξει εφαρµογές ηλεκτρονικού εµπορίου.

Διαβάστε περισσότερα

Οικονομική Προσφορά Προώθηση ιστοσελίδας

Οικονομική Προσφορά Προώθηση ιστοσελίδας Οικονομική Προσφορά Προώθηση ιστοσελίδας 2015 Η εταιρία μας Η Moving up είναι μια εταιρία που δραστηριοποιείται στον τομέα των ολοκληρωμένων μορφών επικοινωνίας και διαφήμισης.όποιο και αν είναι το διαφημιστικό

Διαβάστε περισσότερα

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων - Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a)

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Εαρινό Εξάμηνο

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Εαρινό Εξάμηνο ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Εαρινό Εξάμηνο 2016-2017 Υποχρεωτική εργασία Τα τελευταία χρόνια, λόγω της τεράστιας αύξησης της ποσότητας της πληροφορίας που έχουμε

Διαβάστε περισσότερα

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων .. Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Μάθημα Βασικές Έννοιες - . Ύλη Εργαστηρίου ΒΔ Ύλη - 4 Ενότητες.1 - Σχεδιασμός Βάσης Δεδομένων.2 Δημιουργία Βάσης Δεδομένων Δημιουργία Πινάκων Εισαγωγή/Ανανέωση/Διαγραφή

Διαβάστε περισσότερα

710 -Μάθηση - Απόδοση

710 -Μάθηση - Απόδοση 710 -Μάθηση - Απόδοση Διάλεξη 6η Ποιοτική αξιολόγηση της Κινητικής Συμπεριφοράς Παρατήρηση III Η διάλεξη αυτή περιλαμβάνει: Διαδικασία της παρατήρησης & της αξιολόγησης Στόχοι και περιεχόμενο παρατήρησης

Διαβάστε περισσότερα

Αύξηση πελατών. Λίγα λόγια για Επιτυχημένες προωθήσεις

Αύξηση πελατών. Λίγα λόγια για Επιτυχημένες προωθήσεις Αύξηση πελατών Λίγα λόγια για Επιτυχημένες προωθήσεις Βελτίωση των προωθήσεων σας Εισαγωγή Συγκρίνετε τι σας συμφέρει Αποτέλεσμα και επανάληψη Υπάρχουν δυνατότητες για όλες τις επιχειρήσεις Εισαγωγή πληροφορίες

Διαβάστε περισσότερα

710 -Μάθηση - Απόδοση

710 -Μάθηση - Απόδοση 710 -Μάθηση - Απόδοση Διάλεξη 6η Ποιοτική αξιολόγηση της Κινητικής Παρατήρηση Αξιολόγηση & Διάγνωση Η διάλεξη αυτή περιλαμβάνει: Διαδικασία της παρατήρησης & της αξιολόγησης Στόχοι και περιεχόμενο παρατήρησης

Διαβάστε περισσότερα

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

6 Εικόνα εξώφυλλου: Λωρίδα του Mobius (Σύνθεση). Νικόλαος Μπαλκίζας 10 6 ΕΡΓΑΣΙΑ 1 «Η Μηχανή Αναζήτησης Google» 6 Εικόνα εξώφυλλου: Λωρίδα του Mobius. 2005. (Σύνθεση). Νικόλαος Μπαλκίζας 10 Η Μηχανή Αναζήτησης Google 7 Εισαγωγή Η εύρεση χρήσιμων πληροφορίων στον Παγκόσμιο

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών 1 ίκτυα μικρά και μεγάλα Ένα δίκτυο υπολογιστών (computer network) είναι ένας συνδυασμός συστημάτων (δηλαδή, υπολογιστών),

Διαβάστε περισσότερα

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Μάθημα 4.5 Η Μνήμη - Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις τα κυριότερα είδη μνήμης

Διαβάστε περισσότερα

Εγχειρίδιο χρήσης για τον φοιτητή

Εγχειρίδιο χρήσης για τον φοιτητή Εγχειρίδιο χρήσης για τον φοιτητή 1 Αρχική οθόνη Όταν κάποιος χρήστης εισέρχεται για πρώτη φορά στο σύστημα εμφανίζεται η παρακάτω οθόνη/σελίδα: Στα αριστερά της οθόνης εμφανίζεται η φόρμα σύνδεσης στην

Διαβάστε περισσότερα

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης Σελίδα 1από ΤΕΙ ΚΑΒΑΛΑΣ Πτυχιακή εργασία Δικτυακή Εφαρμογή διαχείρισης ηλεκτρονικών εγγράφων υπηρεσίας. ΕΙΣΑΓΩΓΗ Μιλτιάδης Κακλαμάνης Σελίδα 2από Κατάλογος περιεχομένων ΕΙΣΑΓΩΓΗ...1 Σχετιζόμενα πρόσωπα...3

Διαβάστε περισσότερα

EBSCOhost Research Databases

EBSCOhost Research Databases Η EBSCOhost είναι ένα online σύστημα αναζήτησης σε έναν αριθμό βάσεων δεδομένων, στις οποίες είναι συμβεβλημένο κάθε φορά το ίδρυμα. Διαθέτει πολύγλωσσο περιβάλλον αλληλεπίδρασης (interface) με προεπιλεγμένη

Διαβάστε περισσότερα

Λειτουργικά Συστήματα (Λ/Σ)

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Διαχείριση Αρχείων Βασίλης Σακκάς 11/12/2013 1 Διαχείριση Αρχείων 1 Μακρόχρονη αποθήκευση πληροφοριών 1. Αποθήκευση μεγάλου όγκου δεδομένων 2. Οι αποθηκευμένες πληροφορίες πρέπει

Διαβάστε περισσότερα

Ηλεκτρονικός Κατάλογος της Βιβλιοθήκης (OPAC)

Ηλεκτρονικός Κατάλογος της Βιβλιοθήκης (OPAC) Ο ηλεκτρονικός κατάλογος (OPAC) είναι το online σύστημα αναζήτησης στο αυτοματοποιημένο σύστημα της Βιβλιοθήκης (GEAC-ADVANCE), για την τοπική συλλογή της. Το περιβάλλον αλληλεπίδρασης (interface) είναι

Διαβάστε περισσότερα

Γ Γυμνασίου: Οδηγίες Γραπτής Εργασίας και Σεμιναρίων. Επιμέλεια Καραβλίδης Αλέξανδρος. Πίνακας περιεχομένων

Γ Γυμνασίου: Οδηγίες Γραπτής Εργασίας και Σεμιναρίων. Επιμέλεια Καραβλίδης Αλέξανδρος. Πίνακας περιεχομένων Γ Γυμνασίου: Οδηγίες Γραπτής Εργασίας και Σεμιναρίων. Πίνακας περιεχομένων Τίτλος της έρευνας (title)... 2 Περιγραφή του προβλήματος (Statement of the problem)... 2 Περιγραφή του σκοπού της έρευνας (statement

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Στρατηγικό Σχέδιο Για τη Βιώσιµη Ανάπτυξη της Θεσσαλονίκης (ΣΣΒΑΘ) 1 η Ενδιάµεση Έκθεση 3. ηµιουργία και Λειτουργία Web site

Στρατηγικό Σχέδιο Για τη Βιώσιµη Ανάπτυξη της Θεσσαλονίκης (ΣΣΒΑΘ) 1 η Ενδιάµεση Έκθεση 3. ηµιουργία και Λειτουργία Web site Στρατηγικό Σχέδιο Για τη Βιώσιµη Ανάπτυξη της Θεσσαλονίκης (ΣΣΒΑΘ) 1 η Ενδιάµεση Έκθεση 3. ηµιουργία και Λειτουργία Web site Θεσσαλονίκη 6/12/2001 Βασίλης Φούρκας, ΕΜΧΑ Η δηµιουργία και λειτουργία ενός

Διαβάστε περισσότερα

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

Συστήματα Ανάκτησης Πληροφοριών ΗΥ-463 ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ COMPUTER SCIENCE DEPARTMENT UNIVERSITY OF CRETE Συστήματα Ανάκτησης Πληροφοριών ΗΥ-463 4 η Σειρά Ασκήσεων Ψαράκη Μαρία-Γεωργία ΜΕΤ 556 psaraki@csd.uoc.gr Εαρινό Εξάμηνο 2008-2009

Διαβάστε περισσότερα