Information Retrieval
|
|
- Καλυψώ Κολιάτσος
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Introduction to Information Retrieval ΜΥΕ003-ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 4-5: Κατασκευή Ευρετηρίου. Στατιστικά Συλλογής. Συμπίεση 1
2 Κεφ. 4-5 Τι θα δούμε σήμερα Κατασκευή ευρετηρίου Στατιστικά για τη συλλογή Συμπίεση 2
3 ΚΑΤΑΣΚΕΥΗ ΕΥΡΕΤΗΡΙΟΥ 3
4 Η βασική δομή: Το αντεστραμμένο ευρετήριο (inverted index) Λεξικό: οι όροι (term) και η συχνότητα εγγράφων (#εγγράφων της συλλογής που εμφανίζονται) Λίστες καταχωρήσεων (posting lists) Κάθε καταχώρηση (posting) για ένα όρο περιέχει μια διατεταγμένη λίστα με τα έγγραφα (DocID) στα οποία εμφανίζεται ο όρος συχνά επιπρόσθετα στοιχεία, όπως position, term frequency, κλπ 4
5 Κεφ. 4 Κατασκευή ευρετηρίου Πως κατασκευάζουμε το ευρετήριο; (indexing, indexers) Ποιες στρατηγικές χρησιμοποιούμε όταν έχουμε περιορισμένη μνήμη; 5
6 Κεφ. 4.1 Βασικά στοιχεία του υλικού Πολλές αποφάσεις στην ανάκτηση πληροφορίας βασίζονται στα χαρακτηριστικά του υλικού (διαφορετικοί αλγόριθμοι/τεχνικές) Ας δούμε μερικά βασικά χαρακτηριστικά 6
7 Κεφ. 4.1 Βασικά χαρακτηριστικά του υλικού Η προσπέλαση δεδομένων στην κύρια μνήμη είναι πολύ πιο γρήγορη από την προσπέλαση δεδομένων στο δίσκο (περίπου ένας παράγοντας του 10) ιεραρχία μνήμης (register-cache L1, L2, L3, RAM (main memory), hard disk) Σημαντική τεχνική: caching Disk seeks (χρόνος αναζήτησης): Ενώ τοποθετείται η κεφαλή δε γίνεται μεταφορά δεδομένων Άρα: Η μεταφορά μεγάλων κομματιών (chunk) δεδομένων από το δίσκο στη μνήμη είναι γρηγορότερη από τη μεταφορά πολλών μικρών Η επικοινωνία με το δίσκο (Disk I/O) γίνεται σε σελίδες (block-based): Διαβάζονται και γράφονται ολόκληρα blocks (όχι τμήματά τους). Σχετικός χώρος στη μνήμη memory buffer, Μέγεθος Block: 8KB KB. (locality) Παράλληλα με την επεξεργασία δεδομένων Συμπίεση συχνά πιο γρήγορη αποσυμπίεση + επεξεργασία 7
8 Κεφ. 4.1 Βασικά χαρακτηριστικά του υλικού Οι επεξεργαστές που χρησιμοποιούνται στην ΑΠ διαθέτουν πολλά GB κύριας μνήμης, συχνά δεκάδες από GBs. Ο διαθέσιμος χώρος δίσκου είναι πολλές (2 3) τάξεις μεγαλύτερος. Η ανοχή στα σφάλματα (fault tolerance) είναι πολύ ακριβή: φθηνότερο να χρησιμοποιεί κανείς πολλές κανονικές μηχανές παρά μια «μεγάλη» 8
9 Κεφ. 4.1 Υποθέσεις για το υλικό (~2008) symbol statistic value s b P average seek time transfer time per byte processor s clock rate Low level operation (e.g., compare & swap a word) size of main memory size of disk space 5 ms = s 0.02 μs = s 10 9 s μs = 10 8 s several GB 1 TB or more 9
10 Κεφ. 4.2 Η συλλογή RCV1 Η συλλογή με τα άπαντα του Shakespeare δεν είναι αρκετά μεγάλη για το σκοπό της σημερινής διάλεξης. Η συλλογή που θα χρησιμοποιήσουμε δεν είναι στην πραγματικότητα πολύ μεγάλη, αλλά είναι διαθέσιμη στο κοινό. Θα χρησιμοποιήσουμε τη συλλογή RCV1. Είναι ένας χρόνος του κυκλώματος ειδήσεων του Reuters (Reuters newswire) (μέρος του 1995 και 1996) 1GB κειμένου 10
11 Κεφ. 4.2 Ένα έγγραφο της συλλογής Reuters RCV1 11
12 Κεφ. 4.2 Ένα έγγραφο της συλλογής Reuters RCV1 Γιατί κατά μέσο ένα term είναι μεγαλύτερο από ένα token; 12
13 Κεφ. 4.2 Κατασκευή ευρετηρίου 1 ο πέρασμα: Επεξεργαζόμαστε τα έγγραφα για να βρούμε τις λέξεις - αυτές αποθηκεύονται μαζί με το Document ID, ζεύγη (term, doc-id) Doc 1 I did enact Julius Caesar I was killed i' the Capitol; Brutus killed me. Doc 2 So let it be with Caesar. The noble Brutus hath told you Caesar was ambitious Term Doc # I 1 did 1 enact 1 julius 1 caesar 1 I 1 was 1 killed 1 i' 1 the 1 capitol 1 brutus 1 killed 1 me 1 so 2 let 2 it 2 be 2 with 2 caesar 2 the 2 noble 2 brutus 2 hath 2 told 2 you 2 caesar 2 was 2 ambitious 2 13
14 Κεφ. 4.2 Βασικό βήμα: sort 2 ο πέρασμα: αφού έχουμε επεξεργαστεί όλα τα έγγραφα, το αντεστραμμένο ευρετήριο διατάσσεται (sort) με βάση τους όρους Θα επικεντρωθούμε στο βήμα διάταξης Πρέπει να διατάξουμε 100M όρους. Στη συνέχεια, για κάθε όρο, διάταξη εγγράφων Term Doc # I 1 did 1 enact 1 julius 1 caesar 1 I 1 was 1 killed 1 i' 1 the 1 capitol 1 brutus 1 killed 1 me 1 so 2 let 2 it 2 be 2 with 2 caesar 2 the 2 noble 2 brutus 2 hath 2 told 2 you 2 caesar 2 was 2 ambitious 2 Term Doc # ambitious 2 be 2 brutus 1 brutus 2 capitol 1 caesar 1 caesar 2 caesar 2 did 1 enact 1 hath 1 I 1 I 1 i' 1 it 2 julius 1 killed 1 killed 1 let 2 me 1 noble 2 so 2 the 1 the 2 told 2 you 2 was 1 was 2 with 2 14
15 Κεφ. 4.2 Κλιμάκωση της κατασκευής του ευρετηρίου Δεν είναι δυνατή η πλήρης κατασκευή του ευρετηρίου στη μνήμη (in-memory) Δεν μπορούμε να φορτώσουμε όλη τη συλλογή στη μνήμη, να την ταξινομήσουμε και να γράψουμε το ευρετήριο πίσω στο δίσκο Πως μπορούμε να κατασκευάσουμε ένα ευρετήριο για μια πολύ μεγάλη συλλογή; Μας ενδιαφέρει το I/O κόστος 15
16 κεφ. 4.2 Κατασκευή με βάση τη διάταξη Μπορούμε να κρατάμε όλο το ευρετήριο στη μνήμη; Κάθε εγγραφή καταχώρησης (ακόμα και χωρίς πληροφορία θέσης - nonpositional) δηλαδή (termid, docid, freq) καταλαμβάνει = 12 bytes και απαιτεί πολύ χώρο για μεγάλες συλλογές Χρήση termid αντί term για καλύτερη απόδοση ( όροι => 4 bytes για ids vs 7,5 για το term) Χρήση docid ( έγραφα) T = όροι για το RCV1 (1.2 GB) Αυτή η συλλογή χωράει στη μνήμη, αλλά στην πραγματικότητα πολύ μεγαλύτερες, Π.χ., οι New York Times παρέχουν ένα ευρετήριο για κύκλωμα ειδήσεων >150 χρόνια Πρέπει να αποθηκεύουμε ενδιάμεσα αποτελέσματα στο δίσκο Καθώς κατασκευάζουμε το ευρετήριο, επεξεργαζόμαστε τα έγγραφα έναένα Οι τελικές καταχωρήσεις για κάθε όρο είναι ημιτελής μέχρι το τέλος 16
17 Kεφ. 4.2 Διάταξη χρησιμοποιώντας το δίσκο σαν «μνήμη»; Μπορούμε να χρησιμοποιήσουμε τον ίδιο αλγόριθμο κατασκευής για το ευρετήριο αλλά χρησιμοποιώντας δίσκο αντί για μνήμη; Όχι: Διάταξη T = 100,000,000 εγγραφών στο δίσκο είναι πολύ αργή πολλές τυχαίες ανακτήσεις (disk seeks) 17
18 κεφ. 4.2 Γιατί όχι; Διάσχιση του εγγράφου και κατασκευή εγγραφών καταχωρήσεων για ένα έγγραφο τη φορά Μετά διάταξη των εγγραφών με βάση τους όρους (και μετά, για κάθε όρο, διάταξη καταχωρήσεων με βάση το έγγραφο) Αυτή η διαδικασία με τυχαία ανάκτηση στο δίσκο θα ήταν πολύ αργή διάταξη T=100M εγγραφών Αν κάθε σύγκριση χρειάζεται 2 προσπελάσεις στο δίσκο, και για τη διάταξη Ν στοιχείων χρειαζόμαστε N log 2 N συγκρίσεις, πόσο χρόνο θα χρειαζόμασταν; 18
19 Κεφ. 4.2 BSBI: Αλγόριθμος κατασκευής κατά block (Blocked sort-based Indexing) 1. Χώρισε τη συλλογή σε κομμάτια ίσου μεγέθους 2. Ταξινόμησε τα ζεύγη termid docid για κάθε κομμάτι στη μνήμη 3. Αποθήκευσε τα ενδιάμεσα αποτελέσματα (runs) στο δίσκο 4. Συγχώνευσε τα ενδιάμεσα αποτελέσματα 19
20 BSBI: Αλγόριθμος κατασκευής κατά block (Blocked sort-based Indexing) Εγγραφές 12-byte (4+4+4) (termid, docid, freq). Παράγονται κατά τη διάσχιση των εγγράφων Διάταξη 100M τέτοιων 12-byte εγγραφών με βάση τον όρο. Ορίζουμε ένα Block ~ 10M τέτοιες εγγραφές Μπορούμε εύκολα να έχουμε κάποια από αυτά στη μνήμη. Αρχικά, 10 τέτοια blocks. Βασική ιδέα: Κεφ. 4.2 Συγκέντρωσε καταχωρήσεις για να γεμίσει ένα block, διάταξε τις καταχωρήσεις σε κάθε block, γράψε το στο δίσκο (run) Μετά συγχώνευσε τα blocks σε ένα μεγάλο διατεταγμένο block. 20
21 κεφ. 4.2 Διάταξη 10 blocks των 10M εγγραφών Διάβασε ένα-ένα τα έγγραφα γεμίζοντας ένα block με <termid, docid>, Invert: (1) διάταξη ζευγών με βάση το termid, (2) συγκέντρωση όλων με το ίδιο termid σε postings, γράψε το γεμάτο block στο δίσκο 21
22 κεφ. 4.2 Παράδειγμα merge sort 22
23 κεφ. 4.2 Διάταξη 10 blocks των 10M εγγραφών Πρώτα, διάβασε κάθε block και διάταξε τις εγγραφές του: Quicksort 2N ln N αναμενόμενα βήματα Στην περίπτωσή μας, 2 x (10M ln 10M) steps Άσκηση: εκτιμήστε το συνολικό κόστος για να διαβάσουμε κάθε block από το δίσκο και να εφαρμόσουμε quicksort σε αυτό. 10 φορές αυτή η εκτίμηση του χρόνου μας δίνει 10 διατεταγμένα runs των 10M εγγραφών το καθένα. Ο απλός τρόπος χρειάζεται 2 αντίγραφα των δεδομένων στο δίσκο Αλλά μπορεί να βελτιωθεί 23
24 κεφ. 4.2 Πως θα γίνει η συγχώνευση των runs? Δυαδική συγχώνευση, μια δεντρική δομή με log 2 10 = 4 επίπεδα. Σε κάθε επίπεδο, διάβασε στη μνήμη runs σε blocks των 10M, συγχώνευσε, γράψε πίσω Merged run Runs being merged. Disk 4 24
25 κεφ. 4.2 Πως θα γίνει η συγχώνευση των runs? Πιο αποδοτικά με μια multi-way συγχώνευση, όπου διαβάζουμε από όλα τα blocks ταυτόχρονα Υπό την προϋπόθεση ότι διαβάζουμε στη μνήμη αρκετά μεγάλα κομμάτια κάθε block και μετά γράφουμε πίσω αρκετά μεγάλα κομμάτια, αλλιώς πάλι πρόβλημα με τις αναζητήσεις στο δίσκο 25
26 Κεφ. 4.2 BSBI: περίληψη Βασική ιδέα: Διάβαζε τα έγγραφα, συγκέντρωσε <termid, docid> καταχωρήσεις έως να γεμίσει ένα block, διάταξε τις καταχωρήσεις σε κάθε block, γράψε το στο δίσκο. Μετά συγχώνευσε τα blocks σε ένα μεγάλο διατεταγμένο block. Δυαδική συγχώνευση, μια δεντρική δομή με log 2 Β επίπεδα, όπου Β ο αριθμός των blocks. 26
27 κεφ. 4.3 Xρήση αναγνωριστικού όρου (termid) Υπόθεση: κρατάμε το λεξικό στη μνήμη Χρειαζόμαστε το λεξικό (το οποίο μεγαλώνει δυναμικά) για να υλοποιήσουμε την απεικόνιση μεταξύ όρου (term) σε termid (όταν ένας όρος, κοιτάμε αν ήδη map σε ID, κλπ) Θα μπορούσαμε να εργαστούμε και με term, docid καταχωρήσεις αντί των termid, docid καταχωρήσεων, αλλά τα ενδιάμεσα αρχεία γίνονται πολύ μεγάλα. 27
28 Κεφ. 4.3 SPIMI: Single-pass in-memory indexing (ευρετηρίαση ενός περάσματος) Δε διατηρούμε term-termid απεικονίσεις μεταξύ blocks. Εναλλακτικός αλγόριθμος: Αποφυγή της διάταξης των όρων. Συγκεντρώσετε τις καταχωρήσεις σε λίστες καταχωρήσεων όπως αυτές εμφανίζονται. Κατασκευή ενός πλήρους αντεστραμμένου ευρετηρίου και λεξικού για κάθε block. Χρησιμοποίησε κατακερματισμό (hash) ώστε οι καταχωρήσεις του ίδιου όρου στον ίδιο κάδο Μετά συγχωνεύουμε τα ξεχωριστά ευρετήρια σε ένα μεγάλο. 28
29 κεφ. 4.3 SPIMI-Invert Χρησιμοποιούμε hash ώστε οι καταχωρήσεις για τον ίδιο όρο στον ίδιο «κάδο» Η συγχώνευση όπως και στο BSBI. 29
30 κεφ. 4.5 Δυναμικά ευρετήρια Μέχρι στιγμής, θεωρήσαμε ότι τα ευρετήρια είναι στατικά. Αυτό συμβαίνει σπάνια, στην πραγματικότητα: Νέα έγγραφα εμφανίζονται και πρέπει να ευρετηριοποιηθούν Έγγραφα τροποποιούνται ή διαγράφονται Αυτό σημαίνει ότι πρέπει να ενημερώσουμε τις λίστες καταχωρήσεων: Αλλαγές στις καταχωρήσεις όρων που είναι ήδη στο λεξικό Προσθήκη νέων όρων στο λεξικό 30
31 κεφ. 4.5 Μια απλή προσέγγιση Διατήρησε ένα «μεγάλο» κεντρικό ευρετήριο Τα νέα έγγραφα σε μικρό «βοηθητικό» ευρετήριο (auxiliary index) (στη μνήμη) Ψάξε και στα δύο, συγχώνευσε το αποτέλεσμα Διαγραφές Invalidation bit-vector για τα διαγραμμένα έγγραφα Φιλτράρισμα αποτελεσμάτων ώστε όχι διαγραμμένα Περιοδικά, re-index το βοηθητικό στο κυρίως ευρετήριο 31
32 Κεφ. 4.5 Πολυπλοκότητα Αποθηκεύουμε κάθε λίστα καταχωρήσεων σε διαφορετικό αρχείο ή όλο το ευρετήριο σε ένα αρχείο; Έστω σε ένα αρχείο Έστω T o συνολικός αριθμός των καταχωρήσεων και n οι καταχωρήσεις που χωρούν στη μνήμη Κατασκευή Κυρίως και βοηθητικό ευρετήριο: Τ/n συγχωνεύσεις, σε κάθε μία κοιτάμε όλους τους όρους, άρα πολυπλοκότητα O(T 2 ) Ερώτημα Κυρίως και βοηθητικό ευρετήριο: O(1)
33 κεφ. 4.5 Θέματα Συχνές συγχωνεύσεις Κακή απόδοση κατά τη διάρκεια της συγχώνευσης Πιο αποδοτικό αν κάθε λίστα καταχωρήσεων ήταν αποθηκευμένη σε διαφορετικό αρχείο (τότε, απλώς append), αλλά θα χρειαζόμαστε πολλά αρχεία (μη αποδοτικό για το ΛΣ) Θα υποθέσουμε ότι όλο το ευρετήριο σε ένα αρχείο. Στην πραγματικότητα: Κάτι ανάμεσα (π.χ., πολλές μικρές λίστες καταχώρησης σε ένα αρχείο, διάσπαση πολύ μεγάλων λιστών, κλπ) 33
34 κεφ. 4.5 Λογαριθμική συγχώνευση Διατήρηση μια σειράς από ευρετήρια, το καθένα διπλάσιου μεγέθους από τα προηγούμενο Κάθε στιγμή, χρησιμοποιούνται κάποια από αυτά Έστω n o αριθμός των postings στη μνήμη Διατηρούμε στο δίσκο ευρετήρια Ι 0, Ι 1, Ι 0 μεγέθους 2 0 * n, Ι 1 μεγέθους 2 1 * n, Ι 2 μεγέθους 2 2 * n Ένα βοηθητικό ευρετήριο μεγέθους n στη μνήμη, Z 0 34
35 κεφ. 4.5 Λογαριθμική συγχώνευση Όταν φτάσει το όριο n, τα 2 0 * n postings του Z 0 μεταφέρονται στο δίσκο Ως ένα νέο index Ι 0 Την επόμενη φορά που το Ζ 0 γεμίζει, συγχώνευση με Ι 0 Αποθηκεύεται ως Ι 1 (αν δεν υπάρχει ήδη Ι 1 ) ή συγχώνευση με Ι 1 ως Ζ 2 κλπ Τα ερωτήματα απαντώνται με χρήση του Z 0 στη μνήμη και όσων I i υπάρχουν στο δίσκο κάθε φορά 35
36 κεφ
37 Κεφ. 4.5 Πολυπλοκότητες Κατασκευή Κυρίως και βοηθητικό ευρετήριο: Τ/n συγχωνεύσεις, σε κάθε μία κοιτάμε όλους τους όρους, άρα πολυπλοκότητα O(T 2 ) Το πολύ log T indexes, μέγεθος του μεγαλύτερου Λογαριθμική συγχώνευση: κάθε καταχώρηση συγχωνεύεται O(log T) φορές, άρα πολυπλοκότητα O(T log T) Ερώτημα Κυρίως και βοηθητικό ευρετήριο: O(1) Λογαριθμική συγχώνευση: κοιτάμε O(log T) ευρετήρια Γενικά, περιπλέκεται η ανάκτηση, οπότε συχνά πλήρης ανακατασκευή του ευρετηρίου
38 Δυναμικά ευρετήρια στις μηχανές αναζήτησης Kεφ. 4.5 Πολύ συχνές αλλαγές Συχνά περιοδική ανακατασκευή του ευρετηρίου από την αρχή Ενώ κατασκευάζεται το νέο, χρησιμοποιείται το παλιό και όταν η κατασκευή τελειώσει χρήση του νέου 38
39 Kεφ. 4.5 Άλλα θέματα Η διάταξη των εγγράφων στις λίστες δε γίνεται πάντα με βάση το DocID αλλά μπορεί και με βάση τη συχνότητα εμφάνισης του όρου στο έγγραφο (πιο περίπλοκο γιατί δεν αρκεί append) Λίστες δικαιωμάτων προσπέλασης (Access Control Lists ACLs) Για κάθε χρήστη, μια λίστα καταχωρήσεων με τα έγγραφα που μπορεί να προσπελάσει 39
40 κεφ. 4.4 Κατανεμημένη κατασκευή Για ευρετήριο κλίμακας web Χρήση κατανεμημένου cluster Επειδή μια μηχανή είναι επιρρεπής σε αποτυχία Μπορεί απροσδόκητα να γίνει αργή ή να αποτύχει Χρησιμοποίηση πολλών μηχανών 40
41 Κεφ. 4.4 Μερικοί αριθμοί The Indexed Web contains at least 1.71 billion pages (Sunday, 16 March, 2014). Each year, Google changes its search algorithm around times 41
42 Κεφ. 4.4 Web search engine data centers Οι μηχανές αναζήτησης χρησιμοποιούν data centers (Google, Bing, Baidu) κυρίως από commodity μηχανές. Γιατί; (fault tolerance) Τα κέντρα είναι διάσπαρτα σε όλο τον κόσμο. Εκτίμηση: Google ~1 million servers, 3 million processors/cores (Gartner 2007) Θα το δούμε αναλυτικά σε επόμενα μαθήματα Λίγα «εγκυκλοπαιδικά» για το MapReduce και τη χρήση του στην κατασκευή του ευρετηρίου 42
43 Κεφ. 4.4 Google index index partitioned by document IDs into pieces called shards each shard is replicated onto multiple servers initially, from hard disk drives, now enough servers to keep a copy of the whole index in main memory In June 2010, Caffeine continuously crawl and incrementally update the search index Index separated into several layers, some updated faster than others Google trends
44 Κεφ. 4.4 Μια ματιά στα πολύ μεγάλης κλίμακας ευρετήρια 44
45 Κεφ 4.4 Παράλληλη κατασκευή Maintain a master machine directing the indexing job considered safe. Break up indexing into sets of (parallel) tasks. Master machine assigns each task to an idle machine from a pool. 45
46 Sec. 4.4 Parallel tasks We will use two sets of parallel tasks Parsers Inverters Break the input document collection into splits Each split is a subset of documents (corresponding to blocks in BSBI/SPIMI) 46
47 Sec. 4.4 Parsers Master assigns a split to an idle parser machine Parser reads a document at a time and emits (term, doc) pairs Parser writes pairs into j partitions Each partition is for a range of terms first letters (e.g., a-f, g-p, q-z) here j = 3. 47
48 Sec. 4.4 Inverters An inverter collects all (term, doc) pairs (= postings) for one term-partition. Sorts and writes to postings lists 48
49 Sec. 4.4 Παράλληλη κατασκευή assign Master assign Postings Parser a-f g-p q-z Inverter a-f Parser a-f g-p q-z Inverter g-p splits Parser a-f g-p q-z Inverter q-z Map phase Segment files Reduce phase 49
50 Sec. 4.4 MapReduce The index construction algorithm we just described is an instance of MapReduce. MapReduce (Dean and Ghemawat 2004) is a robust and conceptually simple framework for distributed computing without having to write code for the distribution part. They describe the Google indexing system (ca. 2002) as consisting of a number of phases, each implemented in MapReduce. open source implementation as part of Hadoop* * 50
51 Example for index construction Map: d1 : C came, C c ed. d2 : C died. <C,d1>, <came,d1>, <C,d1>, <c ed, d1>, <C, d2>, <died,d2> Reduce: (<C,(d1,d2,d1)>, <died,(d2)>, <came,(d1)>, <c ed,(d1)>) (<C,(d1:2,d2:1)>, <died,(d2:1)>, <came,(d1:1)>, <c ed,(d1:1)>) 51
52 Sec. 4.4 Παράδειγμα κατασκευής ευρετηρίου σε MapReduce Το γενικό σχήμα των συναρτήσεων map και reduce map: input list(key, value) reduce: (key, list(value)) output Εφαρμογή στην περίπτωση της κατασκευής ευρετηρίου map: collection list(termid, docid) reduce: (<termid1, list(docid)>, <termid2, list(docid)>, ) (postings list1, postings list2, ) 52
53 Sec. 4.4 MapReduce Index construction was just one phase. Another phase: transforming a term-partitioned index into a document-partitioned index. Term-partitioned: one machine handles a subrange of terms Document-partitioned: one machine handles a subrange of documents most search engines use a document-partitioned index better load balancing, etc. 53
54 ΣΤΑΤΙΣΤΙΚΑ ΣΥΛΛΟΓΗΣ 54
55 Κεφ. 5 Στατιστικά στοιχεία Πόσο μεγάλο είναι το λεξικό και οι καταχωρήσεις; 55
56 Κεφ. 4.2 Στατιστικά για τη συλλογή Reuters RCV1 N L M T documents tokens per document terms (= word types) bytes per token (incl. spaces/punct.) bytes per token (without spaces/punct.) bytes per term (= word type) non-positional postings 800, , ,000,000 56
57 Κεφ. 5.1 Μέγεθος ευρετηρίου size of word types (terms) non-positional postings positional postings dictionary non-positional index positional index Size (K) % cumul % Size (K) % cumul % Size (K) Unfiltered , ,879 % cumul % No numbers , , Case folding , , stopwords , , stopwords , , stemming , ,
58 Κεφ. 5.1 Λεξιλόγιο και μέγεθος συλλογής Πόσο μεγάλο είναι το λεξιλόγιο όρων; Δηλαδή, πόσοι είναι οι διαφορετικοί όροι; Υπάρχει κάποιο άνω όριο (ή μεγαλώνει συνεχώς με τη προσθήκη νέων εγγράφων); Π.χ., το Oxford English Dictionary 600,000 λέξεις, αλλά στις πραγματικά μεγάλες συλλογές ονόματα προσώπων, προϊόντων, κλπ Στην πραγματικότητα, το λεξιλόγιο συνεχίζει να μεγαλώνει με το μέγεθος της συλλογής 58
59 Κεφ. 5.1 Λεξιλόγιο και μέγεθος συλλογής Ο νόμος του Heaps: M = kt b M είναι το μέγεθος του λεξιλογίου (αριθμός όρων), T ο αριθμός των tokens στη συλλογή περιγράφει πως μεγαλώνει το λεξιλόγιο όσο μεγαλώνει η συλλογή Συνήθης τιμές: 30 k 100 (εξαρτάται από το είδος της συλλογής) και b 0.5 Σε log-log plot του μεγέθους Μ του λεξιλογίου με το Τ, ο νόμος προβλέπει γραμμή με κλίση περίπου ½ 59
60 Κεφ. 5.1 Για το RCV1, η διακεκομμένη γραμμή log 10 M = 0.49 log 10 T (best least squares fit) Οπότε, M = T 0.49, άρα k = and b = Heaps Law Καλή προσέγγιση για το Reuters RCV1! Για το πρώτα 1,000,020 tokens, ο νόμος προβλέπει 38,323 όρους, στην πραγματικότητα 38,365 60
61 Κεφ. 5.1 Ο νόμος του Heaps Τα παρακάτω επηρεάζουν το μέγεθος του λεξικού (και την παράμετρο k): Stemming Including numbers Spelling errors Case folding 61
62 Κεφ. 5.1 Ο νόμος του Zipf Ο νόμος του Heaps μας δίνει το μέγεθος του λεξιλογίου μιας συλλογής (σε συνάρτηση του μεγέθους της συλλογής) Θα εξετάσουμε τη σχετική συχνότητα των όρων Στις φυσικές γλώσσες, υπάρχουν λίγοι πολύ συχνοί όροι και πάρα πολύ σπάνιοι 62
63 Κεφ. 5.1 Ο νόμος του Zipf Ο νόμος του Zipf: Ο i-οστός πιο συχνός όρος έχει συχνότητα ανάλογη του 1/i. cf i 1/i = K/i όπου K μια normalizing constant Όπου cf i collection frequency: ο αριθμός εμφανίσεων του όρου t i στη συλλογή. o Αν ο πιο συχνός όρος (ο όρος the) εμφανίζεται cf 1 φορές o Τότε ο δεύτερος πιο συχνός (of) εμφανίζεται cf 1 /2 φορές o Ο τρίτος (and) cf 1 /3 φορές o 63
64 Κεφ. 5.1 Ο νόμος του Zipf cf i = ci k log cf i = log c - log i Γραμμική σχέση μεταξύ log cf i και log i cfi = c i K, k = -1 power law σχέση (εκθετικός νόμος) 64
65 κεφ. 5.1 Zipf s law for Reuters RCV1 65
66 Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 4-5: Συμπίεση Ευρετηρίου 66
67 Κεφ. 5.2 ΣΥΜΠΙΕΣΗ 67
68 Κεφ. 5 Συμπίεση Θα δούμε μερικά θέματα για τη συμπίεση το λεξικού και των λιστών καταχωρήσεων Βασικό Boolean ευρετήριο, χωρίς πληροφορία θέσης κλπ 68
69 Κεφ. 5 Γιατί συμπίεση; Λιγότερος χώρος στη μνήμη Λίγο πιο οικονομικό Κρατάμε περισσότερα πράγματα στη μνήμη Αύξηση της ταχύτητας Αύξηση της ταχύτητας μεταφοράς δεδομένων από το δίσκο στη μνήμη [διάβασε τα συμπιεσμένα δεδομένα αποσυμπίεσε] γρηγορότερο από [διάβασε μη συμπιεσμένα δεδομένα] Προϋπόθεση: Γρήγοροι αλγόριθμοι αποσυμπίεσης 69
70 Κεφ. 5.1 Απωλεστική και μη συμπίεση Lossless compression: (μη απωλεστική συμπίεση) Διατηρείτε όλη η πληροφορία Αυτή που κυρίως χρησιμοποιείται σε ΑΠ Lossy compression: (απωλεστική συμπίεση) Κάποια πληροφορία χάνεται Πολλά από τα βήματα προ-επεξεργασίας (μετατροπή σε μικρά, stop words, stemming, number elimination) μπορεί να θεωρηθούν ως lossy compression Μπορεί να είναι αποδεκτή στην περίπτωση π.χ., που μας ενδιαφέρουν μόνο τα κορυφαία από τα σχετικά έγγραφα 70
71 Κεφ. 5.2 ΣΥΜΠΙΕΣΗ ΛΕΞΙΚΟΥ 71
72 Κεφ. 5.2 Συμπίεση λεξικού Η αναζήτηση αρχίζει από το λεξικό -> Θα θέλαμε να το κρατάμε στη μνήμη Συνυπάρχει με άλλες εφαρμογές (memory footprint competition) Κινητές/ενσωματωμένες συσκευές μικρή μνήμη Ακόμα και αν όχι στη μνήμη, θα θέλαμε να είναι μικρό για γρήγορη αρχή της αναζήτησης 72
73 Κεφ. 5.2 Αποθήκευση λεξικού Κάθε εγγραφή: τον όρο, συχνότητα εμφάνισης, δείκτη Θα θεωρήσουμε την πιο απλή αποθήκευση, ως ταξινομημένο πίνακα εγγραφών σταθερού μεγέθους (array of fixed-width entries) ~400,000 όροι; 28 bytes/term = 11.2 MB. Terms Freq. Postings ptr. a 656,265 aachen 65.. zulu 221 Δομή Αναζήτησης Λεξικού 20 bytes 4 bytes each 73
74 Κεφ. 5.2 Αποθήκευση λεξικού Σπατάλη χώρου Πολλά από τα bytes στη στήλη Term δε χρησιμοποιούνται δίνουμε 20 bytes για όρους με 1 γράμμα Και δε μπορούμε να χειριστούμε το supercalifragilisticexpialidocious ή hydrochlorofluorocarbons. Μέσος όρος στο γραπτό λόγο για τα Αγγλικά είναι ~4.5 χαρακτήρες/λέξη. Μέσος όρος των λέξεων στο λεξικό για τα Αγγλικά: ~8 χαρακτήρες Οι μικρές λέξεις κυριαρχούν στα tokens αλλά όχι στους όρους. 74
75 Συμπίεση της λίστας όρων: Λεξικό-ως-Σειρά-Χαρακτήρων Κεφ. 5.2 Αποθήκευσε το λεξικό ως ένα (μεγάλο) string χαρακτήρων: Ένας δείκτης δείχνει στο τέλος της τρέχουσας λέξης (αρχή επόμενης) Εξοικονόμηση 60% του χώρου.systilesyzygeticsyzygialsyzygyszaibelyiteszczecinszomo. Freq Postings ptr. Term ptr. Συνολικό μήκος της σειράς (string) = 400K x 8B = 3.2MB Δείκτες για 3.2M θέσεις: log 2 3.2M = 22bits = 3bytes 75
76 Κεφ. 5.2 Χώρος για το λεξικό ως string 4 bytes ανά όρο για το Freq. 4 bytes ανά όρο για δείκτες σε Postings. 3 bytes ανά term pointer Κατά μέσο όρο 8 bytes ανά όρο στο string (3.2ΜΒ) 400K όροι x MB (έναντι 11.2MB για σταθερό μήκος λέξης) Κατά μέσο όρο:11bytes /term 76
77 Κεφ. 5.2 Blocking (Δείκτες σε ομάδες) Διαίρεσε το string σε ομάδες (blocks) των k όρων Διατήρησε ένα δείκτη σε κάθε ομάδα Παράδειγμα: k = 4. Χρειαζόμαστε και το μήκος του όρου (1 extra byte).7systile9syzygetic8syzygial6syzygy11szaibelyite8szczecin9szomo. Freq. Postings ptr. Term ptr Κερδίζουμε 3 bytes για k - 1 δείκτες. Χάνουμε 4 (k) bytes για το μήκος του όρου 77
78 Κεφ. 5.2 Blocking Συνολικό όφελος για block size k = 4 Χωρίς blocking 3 bytes/pointer 3 x 4 = 12 bytes, (ανά block) Τώρα = 7 bytes. Εξοικονόμηση ακόμα ~0.5MB. Ελάττωση του μεγέθους του ευρετηρίου από 7.6 MB σε 7.1 MB. Γιατί όχι ακόμα μεγαλύτερο k; Σε τι χάνουμε; 78
79 Κεφ. 5.2 Αναζήτηση στο λεξικό χωρίς Βlocking Ας υποθέσουμε δυαδική αναζήτηση και ότι κάθε όρος ισοπίθανο να εμφανιστεί στην ερώτηση (όχι και τόσο ρεαλιστικό στη πράξη) μέσος αριθμός συγκρίσεων = ( )/8 ~2.6 Άσκηση: σκεφτείτε ένα καλύτερο τρόπο αναζήτησης αν δεν έχουμε ομοιόμορφη κατανομή των όρων 79
80 Κεφ. 5.2 Αναζήτηση στο λεξικό με Βlocking Δυαδική αναζήτηση μας οδηγεί σε ομάδες (block) από k = 4 όρους Μετά γραμμική αναζήτηση στους k = 4 αυτούς όρους. Μέσος όρος (δυαδικό δέντρο)= ( )/8 = 3 80
81 Κεφ. 5.2 Εμπρόσθια κωδικοποίηση (Front coding) Οι λέξεις συχνά έχουν μεγάλα κοινά προθέματα αποθήκευση μόνο των διαφορών 8automata8automate9automatic10automation 8automat*a1 e2 ic3 ion Encodes automat Extra length beyond automat. 81
82 Κεφ. 5.2 Περίληψη συμπίεσης για το λεξικό του RCV1 Τεχνική Μέγεθος σε MB Fixed width 11.2 Dictionary-as-String with pointers to every term Also, blocking k = Also, Blocking + front coding
83 Κεφ. 5.2 Εμπρόσθια κωδικοποίηση (Front coding) Αν στο δίσκο, μπορούμε να έχουμε ένα Β- δέντρο με τον πρώτο όρο σε κάθε σελίδα Κατακερματισμός ελαττώνει το μέγεθος αλλά πρόβλημα με ενημερώσεις 83
84 Κεφ. 5.3 ΣΥΜΠΙΕΣΗ ΤΩΝ ΚΑΤΑΧΩΡΗΣΕΩΝ 84
85 Κεφ. 5.3 Συμπίεση των καταχωρήσεων Το αρχείο των καταχωρήσεων είναι πολύ μεγαλύτερο αυτού του λεξικού - τουλάχιστον 10 φορές. Βασική επιδίωξη: αποθήκευση κάθε καταχώρησης συνοπτικά Στην περίπτωση μας, μια καταχώρηση είναι το αναγνωριστικό ενός εγγράφου (docid). Για τη συλλογή του Reuters (800,000 έγγραφα), μπορούμε να χρησιμοποιήσουμε 32 bits ανά docid αν έχουμε ακεραίους 4-bytes. Εναλλακτικά, log 2 800, bits ανά docid. Μπορούμε λιγότερο από 20 bits ανά docid; 85
86 Κεφ. 5.3 Συμπίεση των καταχωρήσεων Μέγεθος της συλλογής 800,000 (έγγραφα) 200 (token) 6 bytes = 960 MB Μέγεθος του αρχείου καταχωρήσεων 100,000,000 (καταχωρήσεις) 20/8 bytes = 250MB 86
87 Κεφ. 5.3 Συμπίεση των καταχωρήσεων Αποθηκεύουμε τη λίστα των εγγράφων σε αύξουσα διάταξη των docid. computer: 33, 47,1 54, 159, 202 Συνέπεια: αρκεί να αποθηκεύουμε τα κενά (gaps). 33, 14, 107, 5, 43 Γιατί; Τα περισσότερα κενά μπορεί να κωδικοποιηθούν/αποθηκευτούν με πολύ λιγότερα από 20 bits. 87
88 Κεφ. 5.3 Παράδειγμα 88
89 Κεφ. 5.3 Συμπίεση των καταχωρήσεων Ένας όρος όπως arachnocentric εμφανίζεται ίσως σε ένα έγγραφο στο εκατομμύριο. Ένας όρος όπως the εμφανίζεται σχεδόν σε κάθε έγγραφο, άρα 20 bits/εγγραφή πολύ ακριβό 89
90 Κωδικοποίηση μεταβλητού μεγέθους (Variable length encoding) Στόχος: Για το arachnocentric, θα χρησιμοποιήσουμε εγγραφές ~20 bits/gap. Για το the, θα χρησιμοποιήσουμε εγγραφές ~1 bit/gap entry. Αν το μέσο κενό για έναν όρο είναι G, θέλουμε να χρησιμοποιήσουμε εγγραφές ~log 2 G bits/gap. Κεφ. 5.3 Βασική πρόκληση: κωδικοποίηση κάθε ακεραίου (gap) με όσα λιγότερα bits είναι απαραίτητα για αυτόν τον ακέραιο. Αυτό απαιτεί κωδικοποίηση μεταβλητού μεγέθους -- variable length encoding Αυτό το πετυχαίνουμε χρησιμοποιώντας σύντομους κώδικες για μικρούς αριθμούς 90
91 Κεφ. 5.3 Κωδικοί μεταβλητών Byte (Variable Byte (VB) codes) Κωδικοποιούμε κάθε διάκενο με ακέραιο αριθμό από bytes Το πρώτο bit κάθε byte χρησιμοποιείται ως bit συνέχισης (continuation bit) Είναι 0 σε όλα τα bytes εκτός από το τελευταίο, όπου είναι 1 0, αν ακολουθεί και δεύτερο byte 1, αλλιώς Χρησιμοποιείται για να σηματοδοτήσει το τελευταίο byte της κωδικοποίησης 91
92 Κεφ. 5.3 Κωδικοί μεταβλητών Byte (Variable Byte (VB) codes) Ξεκίνα με ένα byte για την αποθήκευση του G Αν G 127, υπολόγισε τη δυαδική αναπαράσταση με τα 7 διαθέσιμα bits and θέσε c =1 Αλλιώς, κωδικοποίησε τα 7 lower-order bits του G και χρησιμοποίησε επιπρόσθετα bytes για να κωδικοποιήσεις τα higher order bits με τον ίδιο αλγόριθμο Στο τέλος, θέσε το bit συνέχισης του τελευταίου byte σε 1, c = 1 και στα άλλα σε 0, c = 0. 92
93 Κεφ. 5.3 Παράδειγμα docids gaps VB code Postings stored as the byte concatenation Key property: VB-encoded postings are uniquely prefix-decodable For a small gap (5), VB uses a whole byte. 93
94 Κεφ. 5.3 Άλλες κωδικοποιήσεις Αντί για bytes, δηλαδή 8 bits, άλλες μονάδες πχ 32 bits (words), 16 bits, 4 bits (nibbles). Compression ratio vs speed of decompression Με byte χάνουμε κάποιο χώρο αν πολύ μικρά διάκενα nibbles καλύτερα σε αυτές τις περιπτώσεις. Μικρές λέξεις, πιο περίπλοκος χειρισμός Οι κωδικοί VΒ χρησιμοποιούνται σε πολλά εμπορικά/ερευνητικά συστήματα 94
95 Κεφ. 5.3 Συμπίεση του RCV1 Data structure Size in MB dictionary, fixed-width 11.2 dictionary, term pointers into string 7.6 with blocking, k = with blocking & front coding 5.9 collection (text, xml markup etc) 3,600.0 collection (text) Term-doc incidence matrix 40,000.0 postings, uncompressed (32-bit words) postings, uncompressed (20 bits) postings, variable byte encoded postings, g-encoded
96 Sec. 5.3 Περίληψη Μπορούμε να κατασκευάσουμε ένα ευρετήριο για Boolean ανάκτηση πολύ αποδοτικό από άποψη χώρου Μόνο 4% του συνολικού μεγέθους της συλλογής Μόνο το 10-15% του συνολικού κειμένου της συλλογής Βέβαια, έχουμε αγνοήσει την πληροφορία θέσης Η εξοικονόμηση χώρου είναι μικρότερη στην πράξη Αλλά, οι τεχνικές είναι παρόμοιες 96
97 ΤΕΛΟΣ 4 ου -5 ου Μαθήματος Ερωτήσεις? Χρησιμοποιήθηκε κάποιο υλικό των: Pandu Nayak and Prabhakar Raghavan, CS276: Information Retrieval and Web Search (Stanford) 97
Information Retrieval
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 6: Συμπίεση Ευρετηρίου 1 Κεφ. 3 Τι είδαμε στο προηγούμενο μάθημα Κατασκευή ευρετηρίου Στατιστικά
Διαβάστε περισσότεραΜΥΕ003: Ανάκτηση Πληροφορίας. Διδάσκουσα: Ευαγγελία Πιτουρά Κεφάλαιο 5: Στατιστικά Συλλογής. Συμπίεση.
ΜΥΕ003: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Κεφάλαιο 5: Στατιστικά Συλλογής. Συμπίεση. 1 Κεφ. 4-5 Τι θα δούμε σήμερα Κατασκευή ευρετηρίου Στατιστικά για τη συλλογή Συμπίεση 2 ΣΤΑΤΙΣΤΙΚΑ
Διαβάστε περισσότεραΜΥΕ003: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά. Κεφάλαια 4, 5: Κατασκευή Ευρετηρίου. Στατιστικά Συλλογής. Συμπίεση
ΜΥΕ003: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Κεφάλαια 4, 5: Κατασκευή Ευρετηρίου. Στατιστικά Συλλογής. Συμπίεση 1 Κεφ. 4-5 Τι θα δούμε σήμερα Κατασκευή ευρετηρίου Στατιστικά για τη συλλογή
Διαβάστε περισσότεραΜΥΕ003: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά. Κεφάλαια 4, 5: Κατασκευή Ευρετηρίου. Στατιστικά Συλλογής. Συμπίεση
ΜΥΕ003: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Κεφάλαια 4, 5: Κατασκευή Ευρετηρίου. Στατιστικά Συλλογής. Συμπίεση 1 Κεφ. 4-5 Τι θα δούμε σήμερα Κατασκευή ευρετηρίου Στατιστικά για τη συλλογή
Διαβάστε περισσότεραIntroduction to Information Retrieval
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 5: Κατασκευή και Συμπίεση Ευρετηρίου 1 Η βασική δομή: Το αντεστραμμένο ευρετήριο (inverted index)
Διαβάστε περισσότεραInformation Retrieval
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 5: Κατασκευή Ευρετηρίου. Στατιστικά Συλλογής. 1 Κεφ. 3 Τι είδαμε στο προηγούμενο μάθημα Ανάκτηση
Διαβάστε περισσότεραΑνάκληση Πληποφοπίαρ. Information Retrieval. Διδάζκων Δημήηριος Καηζαρός
Ανάκληση Πληποφοπίαρ Information Retrieval Διδάζκων Δημήηριος Καηζαρός Διάλεξη 7η: 21/03/2016 1 Ch. 4 Κατασκευή του ευρετηρίου Πώς κατασκευάζουμε το ευρετήριο; Ποιες στρατηγικές μπορούμε ν ακολουθήσουμε
Διαβάστε περισσότεραInformation Retrieval
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 4: Κατασκευή Ευρετηρίου. Στατιστικά Συλλογής. 1 Κεφ. 3 Τι είδαμε στο προηγούμενο μάθημα Ανάκτηση
Διαβάστε περισσότερα4. Κατασκευή Ευρετηρίου
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 4. Κατασκευή Ευρετηρίου Ανάκτηση Πληροφοριών Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων Πλάνο Προηγούμενο
Διαβάστε περισσότεραΑνάκληση Πληποφοπίαρ. Information Retrieval. Διδάζκων Δημήηριος Καηζαρός
Ανάκληση Πληποφοπίαρ Information Retrieval Διδάζκων Δημήηριος Καηζαρός Διάλεξη 8η: 22/03/2016 1 Ch. 5 Το οφέλη της συμπίεσης (γενικώς) Χρησιμοποιεί λιγότερο χώρο στον δίσκο Σώζει και κάποια χρήματα Διατηρούμε
Διαβάστε περισσότεραInformation Retrieval
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 5(α): Συμπίεση Ευρετηρίου 1 ΣΤΑΤΙΣΤΙΚΑ ΣΥΛΛΟΓΗΣ 2 Κεφ. 5 Στατιστικά στοιχεία Πόσο μεγάλο είναι το
Διαβάστε περισσότεραΑνάκληση Πληποφοπίαρ. Information Retrieval. Διδάζκων Δημήηριος Καηζαρός
Ανάκληση Πληποφοπίαρ Information Retrieval Διδάζκων Δημήηριος Καηζαρός Διάλεξη 4η: 04/03/2017 1 Phrase queries 2 Ερωτήματα φράσεως Έστω ότι επιθυμούμε ν απαντήσουμε ερωτήματα της μορφής stanford university
Διαβάστε περισσότεραΑνάκτηση Πληροφορίας. Φροντιστήριο 3
Ανάκτηση Πληροφορίας Φροντιστήριο 3 Τσιράκης Νίκος Νοέμβριος 2007 2 Περιεχόμενα Ανεστραμμένα Αρχεία Εισαγωγή Δημιουργία Συμπίεση Πιθανοτικά Μοντέλα 3 Ανεστραμμένα Αρχεία 4 Εισαγωγή Με ποιους τρόπους μπορούμε
Διαβάστε περισσότεραΕυρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Ευρετήρια Ευαγγελία Πιτουρά 1 τιμή γνωρίσματος Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται
Διαβάστε περισσότεραΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Άσκηση 1 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών HY460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Διδάσκοντες: Δημήτρης
Διαβάστε περισσότεραΦροντιστήριο 4. Άσκηση 1. Λύση. Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών HY463 - Συστήµατα Ανάκτησης Πληροφοριών Εαρινό Εξάµηνο
Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών HY463 - Συστήµατα Ανάκτησης Πληροφοριών 2007-2008 Εαρινό Εξάµηνο Άσκηση 1 Φροντιστήριο 4 Θεωρείστε ένα έγγραφο με περιεχόμενο «αυτό είναι ένα κείμενο και
Διαβάστε περισσότεραΚεφ.11: Ευρετήρια και Κατακερματισμός
Κεφ.11: Ευρετήρια και Κατακερματισμός Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Κεφ. 11: Ευρετήρια-Βασική θεωρία Μηχανισμοί ευρετηρίου χρησιμοποιούνται για την επιτάχυνση
Διαβάστε περισσότεραΔυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή
Διαβάστε περισσότεραΕπεξεργασία Πολυµέσων. Δρ. Μαρία Κοζύρη Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας
Π.Μ.Σ. «Εφαρµοσµένη Πληροφορική» Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο Θεσσαλίας Ενότητα 3: Επισκόπηση Συµπίεσης 2 Θεωρία Πληροφορίας Κωδικοποίηση Θεµελιώθηκε απο τον Claude
Διαβάστε περισσότεραElements of Information Theory
Elements of Information Theory Model of Digital Communications System A Logarithmic Measure for Information Mutual Information Units of Information Self-Information News... Example Information Measure
Διαβάστε περισσότεραΔυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2017-2018 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)
Διαβάστε περισσότεραΕισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα 2 Βήματα Επεξεργασίας Τα βασικά βήματα στην επεξεργασία
Διαβάστε περισσότεραΚατακερματισμός. 4/3/2009 Μ.Χατζόπουλος 1
Κατακερματισμός 4/3/2009 Μ.Χατζόπουλος 1 H ιδέα που βρίσκεται πίσω από την τεχνική του κατακερματισμού είναι να δίνεται μια συνάρτησης h, που λέγεται συνάρτηση κατακερματισμού ή παραγωγής τυχαίων τιμών
Διαβάστε περισσότεραΠανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών Άνοιξη 2009. HΥ463 - Συστήματα Ανάκτησης Πληροφοριών Information Retrieval (IR) Systems
Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών Άνοιξη 2009 HΥ463 - Συστήματα Ανάκτησης Πληροφοριών Information Retrieval (IR) Systems Στατιστικά Κειμένου Text Statistics Γιάννης Τζίτζικας άλ ιάλεξη :
Διαβάστε περισσότεραΕπεξεργασία Ερωτήσεων
Εισαγωγή Επεξεργασία Ερωτήσεων ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήματος 1. Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασμός) 2. Προγραμματισμός (Σχεσιακή Άλγεβρα, SQL) ημιουργία/κατασκευή Εισαγωγή εδομένων
Διαβάστε περισσότεραΔυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή (ως τρόπος οργάνωσης αρχείου) μέγεθος
Διαβάστε περισσότεραΕπεξεργασία Ερωτήσεων
Εισαγωγή Επεξεργασία Ερωτήσεων Σ Β Βάση εδομένων Η ομή ενός ΣΒ Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 1 Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 2 Εισαγωγή Εισαγωγή ΜΕΡΟΣ 1 (Χρήση Σ Β ) Γενική
Διαβάστε περισσότεραΤα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο
Κατακερματισμός 1 Αποθήκευση εδομένων (σύνοψη) Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Παραδοσιακά, μία σχέση (πίνακας/στιγμιότυπο) αποθηκεύεται σε ένα αρχείο Αρχείο δεδομένων
Διαβάστε περισσότεραΔυναμικός Κατακερματισμός
Δυναμικός Κατακερματισμός Καλό για βάση δεδομένων που μεγαλώνει και συρρικνώνεται σε μέγεθος Επιτρέπει τη δυναμική τροποποίηση της συνάρτησης κατακερματισμού Επεκτάσιμος κατακερματισμός μια μορφή δυναμικού
Διαβάστε περισσότεραΕπεξεργασία Ερωτήσεων
Εισαγωγή Σ Β Σύνολο από προγράμματα για τη διαχείριση της Β Επεξεργασία Ερωτήσεων Αρχεία ευρετηρίου Κατάλογος συστήματος Αρχεία δεδομένων ΒΑΣΗ Ε ΟΜΕΝΩΝ Σύστημα Βάσεων εδομένων (ΣΒ ) Βάσεις Δεδομένων 2007-2008
Διαβάστε περισσότεραΑνάκληση Πληπουοπίαρ. Information Retrieval. Διδάζκων Δημήηριος Καηζαρός
Ανάκληση Πληπουοπίαρ Information Retrieval Διδάζκων Δημήηριος Καηζαρός Γιάλεξη 2η: 23/02/2016 1 Μεγάλες συλλογές (corpora) Έστωσαν N = 1M έγγραφα, το κάθε ένα με περίπου 1K όρους Avg 6 bytes/term, συμπεριλαμβανόμενων
Διαβάστε περισσότεραΔυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2018-2019 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)
Διαβάστε περισσότεραΕυρετήρια. Ευρετήρια. Βάσεις Δεδομένων 2009-2010: Ευρετήρια 1
Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου
Διαβάστε περισσότεραInformation Retrieval
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 3: Δομές για Λεξικά. Ανάκτηση Ανεκτική στα Σφάλματα (υποστήριξη *) 1 Ch. 2 Επανάληψη προηγούμενης
Διαβάστε περισσότεραΕισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Εισαγωγή στην Επεξεργασία Ερωτήσεων Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα Βάσεις
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΑΚΑ. ΕΤΟΣ 2012-13 Ι ΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής, Τοµέας Τεχνολογίας
Διαβάστε περισσότεραΔεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2017-2018 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ
Διαβάστε περισσότεραΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011
Διάρκεια Διαγωνισμού: 3 ώρες Απαντήστε όλες τις ερωτήσεις Μέγιστο Βάρος (20 Μονάδες) Δίνεται ένα σύνολο από N σφαιρίδια τα οποία δεν έχουν όλα το ίδιο βάρος μεταξύ τους και ένα κουτί που αντέχει μέχρι
Διαβάστε περισσότεραΤα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη
Ευρετήρια 1 Αρχεία Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη µνήµη. Η µεταφορά δεδοµένων από το δίσκο στη µνήµη και από τη
Διαβάστε περισσότεραΔεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες
Διαβάστε περισσότεραΜεταπτυχιακή Διπλωματική Εργασία. «Τεχνικές Δεικτοδότησης Συστημάτων Ανάκτησης Πληροφορίας με τη χρήση Wavelet Trees» Κατσίπη Δήμητρα ΑΜ: 741
Μεταπτυχιακό Πρόγραμμα: «Επιστήμη και Τεχνολογία Υπολογιστών» Μεταπτυχιακή Διπλωματική Εργασία «Τεχνικές Δεικτοδότησης Συστημάτων Ανάκτησης Πληροφορίας με τη χρήση Wavelet Trees» Κατσίπη Δήμητρα ΑΜ: 741
Διαβάστε περισσότεραΤεχνικές Συµπίεσης Βίντεο. Δρ. Μαρία Κοζύρη Τµήµα Πληροφορικής Πανεπιστήµιο Θεσσαλίας
Τεχνικές Συµπίεσης Βίντεο Δρ. Μαρία Κοζύρη Τµήµα Πληροφορικής Πανεπιστήµιο Θεσσαλίας Ενότητα 3: Entropy Coding Δρ. Μαρία Κοζύρη Τεχνικές Συµπίεσης Βίντεο Ενότητα 3 2 Θεωρία Πληροφορίας Κωδικοποίηση Θεµελιώθηκε
Διαβάστε περισσότεραΕυρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1
Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου
Διαβάστε περισσότεραΠρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής
Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Να γραφεί πρόγραμμα το οποίο δέχεται ως είσοδο μια ακολουθία S από n (n 40) ακέραιους αριθμούς και επιστρέφει ως έξοδο δύο ακολουθίες από θετικούς ακέραιους
Διαβάστε περισσότεραΕυρετηρίαση ΜΕΡΟΣ ΙIΙ. Επεξεργασία Κειμένου
Ευρετηρίαση ΜΕΡΟΣ ΙIΙ Επεξεργασία Κειμένου Ανάκτηση Πληροφορίας 2009-2010 1 Content Recap: Faster posting lists with skip pointers, Phrase and Proximity Queries, Dictionary Wild-Card Queries Permutex k-gram
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Μemory)
ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1
Διαβάστε περισσότεραΛειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Λειτουργικό Σύστημα:
Διαβάστε περισσότεραEPL 660: Lab 4 Introduction to Hadoop
EPL 660: Lab 4 Introduction to Hadoop Andreas Kamilaris Department of Computer Science MapReduce Πρόβλημα: Ανάγκη για επεξεργασία μεγάλου όγκου δεδομένων στα συστήματα ανάκτησης πληροφορίας. Λύση: κατανομή
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX Μάθημα: Λειτουργικά Συστήματα Συστήματα Αρχείων Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) Λειτουργικά Συστήματα 1 Αρχεία με Χαρτογράφηση
Διαβάστε περισσότεραΑνάκτηση Πληροφορίας
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ανάκτηση Πληροφορίας Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #10 εικτοδότηση και Αναζήτηση Φοίβος Μυλωνάς fmylonas@ionio.gr Ανάκτηση Πληροφορίας 1 Άδεια
Διαβάστε περισσότεραΔεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές
Διαβάστε περισσότεραΑνάκτηση Πληροφορίας
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ανάκτηση Πληροφορίας Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #08 Συµπίεση Κειµένων Φοίβος Μυλωνάς fmylonas@ionio.gr Ανάκτηση Πληροφορίας 1 Άδεια χρήσης
Διαβάστε περισσότεραΑνάκτηση πληροφορίας
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ανάκτηση πληροφορίας Ενότητα 6: Ο Αντεστραμμένος Κατάλογος Απόστολος Παπαδόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΑΣΚΗΣΗ ΔΕΥΤΕΡΗ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΑΣΚΗΣΗ ΔΕΥΤΕΡΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΚΑΔ. ΕΤΟΣ 2007-2008 14.02.2008 EΠΙΣΤΡΕΦΕΤΑΙ ΔΙΔΑΣΚΩΝ Ιωάννης Βασιλείου, Καθηγητής,
Διαβάστε περισσότεραΟργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο
Κατακερµατισµός 1 Οργάνωση Αρχείων (σύνοψη) Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο 1. Αρχεία Σωρού 2. Ταξινοµηµένα Αρχεία Φυσική διάταξη των εγγραφών
Διαβάστε περισσότεραΔεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες ως εξής P 1 K 1 P
Διαβάστε περισσότεραΚεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)
Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) 1 Συστήματα Μνήμης Η οργάνωση του συστήματος μνήμης επηρεάζει τη λειτουργία και απόδοση ενός μικροεπεξεργαστή: Διαχείριση μνήμης και περιφερειακών (Ι/Ο) απότολειτουργικόσύστημα
Διαβάστε περισσότεραΔομές Δεδομένων και Αλγόριθμοι
Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 19 Hashing - Κατακερματισμός 1 / 23 Πίνακες απευθείας πρόσβασης (Direct Access Tables) Οι πίνακες απευθείας
Διαβάστε περισσότεραΕισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων
Βάσεις εδοµένων 2003-2004 Ευαγγελία Πιτουρά 1 ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήµατος Επεξεργασία Ερωτήσεων Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασµός) Προγραµµατισµός (Σχεσιακή Άλγεβρα, SQL)
Διαβάστε περισσότεραInstruction Execution Times
1 C Execution Times InThisAppendix... Introduction DL330 Execution Times DL330P Execution Times DL340 Execution Times C-2 Execution Times Introduction Data Registers This appendix contains several tables
Διαβάστε περισσότεραΣυστήματα Ανάκτησης Πληροφοριών ΗΥ-463
ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ COMPUTER SCIENCE DEPARTMENT UNIVERSITY OF CRETE Συστήματα Ανάκτησης Πληροφοριών ΗΥ-463 4 η Σειρά Ασκήσεων Ψαράκη Μαρία-Γεωργία ΜΕΤ 556 psaraki@csd.uoc.gr Εαρινό Εξάμηνο 2008-2009
Διαβάστε περισσότεραΔομές Δεδομένων. Δημήτρης Μιχαήλ. Κατακερματισμός. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Δομές Δεδομένων Κατακερματισμός Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Λεξικό Dictionary Ένα λεξικό (dictionary) είναι ένας αφηρημένος τύπος δεδομένων (ΑΤΔ) που διατηρεί
Διαβάστε περισσότεραΕπανάληψη προηγούμενης διάλεξης
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 4: Κατασκευή Ευρετηρίου 1 Επανάληψη προηγούμενης διάλεξης 1. Δομές Δεδομένων για το Λεξικό 2. Ανάκτηση
Διαβάστε περισσότεραΕπεξεργασία & Οργάνωση Δεδομένων Κειμένου
Επεξεργασία & Οργάνωση Δεδομένων Εφαρμογές Γλωσσικής Τεχνολογίας Σοφία Στάμου Γλώσσα και Επικοινωνία Κάθε γλωσσικό σύστημα διέπεται από κανόνες για τη χρήση, τη σύνταξη και την ερμηνεία των λέξεων Γιατί
Διαβάστε περισσότεραΜαζικός Παραλληλισμός λ με Map - Reduce. Μοντέλο Θέματα υλοποίησης Παραδείγματα διαχείρισης δεδομένων
Μαζικός Παραλληλισμός λ με Map - Reduce Μοντέλο Θέματα υλοποίησης Παραδείγματα διαχείρισης δεδομένων Ευχαριστίες Οι διαφάνειες στηρίζονται σε μεγάλο βαθμό στο υλικό που είναι διαθέσιμο από το εργαστήριο
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Επίπεδα Αφαίρεσης Σ Β. Αποθήκευση Εγγραφών - Ευρετήρια. ρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, Επίπεδο Όψεων.
ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ Χειµερινό Εξάµηνο 2002 Αποθήκευση Εγγραφών - Ευρετήρια ρ Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Επίπεδα Αφαίρεσης Σ Β Επίπεδο Όψεων Όψη Όψη
Διαβάστε περισσότεραΣυστήματα Διαχείρισης Βάσεων Δεδομένων
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Φροντιστήριο 5: Tutorial on External Sorting Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών TUTORIAL ON EXTERNAL SORTING
Διαβάστε περισσότεραPosting File. D i. tf key1 [position1 position2 ] D j tf key2... D l.. tf keyl
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΗΥ463 Συστήµατα Ανάκτησης Πληροφοριών Εργασία: Ανεστραµµένο Ευρετήριο Εισαγωγή Σκοπός της εργασίας είναι η δηµιουργία ενός ανεστραµµένου ευρετηρίου για τη µηχανή αναζήτησης Μίτος, το
Διαβάστε περισσότεραΕύρεση & ιαχείριση Πληροφορίας στον Παγκόσµιο Ιστό
Εύρεση & ιαχείριση Πληροφορίας στον Παγκόσµιο Ιστό ιδάσκων ηµήτριος Κατσαρός, Ph.D. @ Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας ιάλεξη 3η: 28/02/2007 1 Συµπίεση Ευρετηρίου & Term
Διαβάστε περισσότεραΛειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα
Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 2: Σύστημα Αρχείων Τα προγράμματα που εκτελούνται
Διαβάστε περισσότεραΛειτουργικό Σύστημα: διαχείριση πόρων. Διαχείριση αρχείων. Τι είναι ένα αρχείο ; Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Λειτουργικό Σύστημα: διαχείριση πόρων Εισαγωγή Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων) Επικοινωνία με χρήστη
Διαβάστε περισσότεραΠρογραμματισμός Ι (HY120)
Προγραμματισμός Ι (HY20) # μνήμη & μεταβλητές πρόγραμμα & εκτέλεση Ψηφιακά δεδομένα, μνήμη, μεταβλητές 2 Δυαδικός κόσμος Οι υπολογιστές είναι δυαδικές μηχανές Όλη η πληροφορία (δεδομένα και κώδικας) κωδικοποιείται
Διαβάστε περισσότεραΤΕΧΝΟΛΟΓΙΕΣ ΠΟΛΥΜΕΣΩΝ
ΤΕΧΝΟΛΟΓΙΕΣ ΠΟΛΥΜΕΣΩΝ Κείμενα Ν. Μ. Σγούρος (sgouros@unipi.gr) Επεξεργασία Κειμένων Αναζήτηση Ακολουθιακή Αναζήτηση, Δομές Trie Συμπίεση Huffmann Coding, Run-Length Encoding, Burrows- Wheeler Κρυπτογράφηση
Διαβάστε περισσότεραΛΥΣΗ ΤΗΣ ΔΕΥΤΕΡΗΣ ΑΣΚΗΣΗΣ Όλγα Γκουντούνα
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΜΑΘΗΜΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΚΑΔ. ΕΤΟΣ 2011-12 ΔΙΔΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής Τιμολέων Σελλής Καθηγητής Άσκηση 1
Διαβάστε περισσότεραΛειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία
Λειτουργικά Συστήματα Ι Καθηγήτρια Παπαδάκη Αναστασία 2013 1 - 2 - Κεφάλαιο 2 ο Δευτερεύουσα μνήμη Οι εύκαμπτοι μαγνητικοί δίσκοι (floppy disks) ή δισκέτες Οι σκληροί μαγνητικοί δίσκοι (hard disks) Οι
Διαβάστε περισσότεραΥπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).
Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται
Διαβάστε περισσότεραΤο εσωτερικό ενός Σ Β
Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήµατος Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασµός) Προγραµµατισµός (Σχεσιακή Άλγεβρα, SQL) ηµιουργία/κατασκευή Εισαγωγή εδοµένων
Διαβάστε περισσότεραHY150a Φροντιστήριο 3 24/11/2017
HY150a Φροντιστήριο 3 24/11/2017 1 Assignment 3 Overview Το πρόγραμμα ζητείται να διαβάζει μια λίστα δεδομένων που περιγράφει τα διαθέσιμα τμήματα μνήμης (blocks) ενός ΗΥ. Το πρόγραμμα ζητείται να μεταφορτώνει
Διαβάστε περισσότεραΔιάλεξη 23: Τεχνικές Κατακερματισμού II (Hashing)
ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 23: Τεχνικές Κατακερματισμού II (Hashing) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Διαχείριση Συγκρούσεων με Ανοικτή Διεύθυνση a) Linear
Διαβάστε περισσότεραΤελική Εξέταση, Απαντήσεις/Λύσεις
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) HMΜY 212 Οργάνωση Η/Υ και Μικροεπεξεργαστές Εαρινό Εξάμηνο, 2007 Τελική Εξέταση, Απαντήσεις/Λύσεις Άσκηση 1: Assembly για
Διαβάστε περισσότεραΑνάκτηση Πληροφορίας
Το Πιθανοκρατικό Μοντέλο Κλασικά Μοντέλα Ανάκτησης Τρία είναι τα, λεγόμενα, κλασικά μοντέλα ανάκτησης: Λογικό (Boolean) που βασίζεται στη Θεωρία Συνόλων Διανυσματικό (Vector) που βασίζεται στη Γραμμική
Διαβάστε περισσότεραΛειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)
..8 Κατανομή των αρχείων σε συσκευές Ακολουθείται κάποια λογική στην αποθήκευση των αρχείων:.αρχεία που χρησιμοποιούνται συχνά τοποθετούνται στους σκληρούς δίσκους που έχουν μεγάλη ταχύτητα πρόσβασης..αν
Διαβάστε περισσότεραΕυρετήρια. Βάσεις Δεδομένων. Διδάσκων: Μαρία Χαλκίδη
Ευρετήρια Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη Βασικές έννοιες Οι μηχανισμοί δεικτοδότησης χρησιμοποιούνται για να επιταχύνουν την προσπέλαση σε επιθυμητά δεδομένα. π.χ., author catalog in library
Διαβάστε περισσότεραΑρχιτεκτονική υπολογιστών
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς
Διαβάστε περισσότεραΛειτουργικό Σύστημα: διαχείριση πόρων. Τι είναι ένα αρχείο ; Διαχείριση αρχείων. Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2018-19 Λειτουργικό Σύστημα: διαχείριση πόρων Εισαγωγή Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων) Επικοινωνία με χρήστη
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διαχείριση μνήμης Εργαστηριακές Ασκήσεις
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Διαχείριση μνήμης Εργαστηριακές Ασκήσεις Υλικό από: Modern Operating Systems Laboratory Exercises, Shrivakan Mishra Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο
Διαβάστε περισσότεραΗΥ460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Χειμερινό Εξάμηνο 2016 Διδάσκοντες: Βασίλης Χριστοφίδης, Δημήτρης Πλεξουσάκης, Χαρίδημος Κονδυλάκης
ΗΥ460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Χειμερινό Εξάμηνο 2016 Διδάσκοντες: Βασίλης Χριστοφίδης, Δημήτρης Πλεξουσάκης, Χαρίδημος Κονδυλάκης Λύσεις 1 ης σειράς Ασκήσεων Ημερομηνία Παράδοσης: 14/10/2016
Διαβάστε περισσότεραInformation Retrieval
Introduction to Information Retrieval ΠΛΕ70: Ανάκτηση Πληροφορίας Διδάσκουσα: Ευαγγελία Πιτουρά Διάλεξη 1: Εισαγωγή. Ανάκτηση Boole Κεφ. 1.1 Τι είναι η «Ανάκτηση Πληροφορίας»; Ανάγκη πληροφόρησης Βάση
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα είναι μικρότεροι το 1000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Διάρκεια: 3,5 ώρες Καλή
Διαβάστε περισσότεραΕργασία Μαθήματος Αξία: 40% του τελικού σας βαθμού Ανάθεση: Παράδοση:
Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών ΗΥ463 Συστήματα Ανάκτησης Πληροφοριών 2009-2010 Φθινοπωρινό Εξάμηνο Εργασία Μαθήματος Αξία: 40% του τελικού σας βαθμού Ανάθεση: Παράδοση: Σκοπός αυτής της
Διαβάστε περισσότεραQuery-Driven Indexing for Scalable Peer-to-Peer Text Retrieval. Gleb Skobeltsyn, Toan Luu, Ivana Podnar Zarko, Martin Rajman, Karl Aberer
Query-Driven Indexing for Scalable Peer-to-Peer Text Retrieval Gleb Skobeltsyn, Toan Luu, Ivana Podnar Zarko, Martin Rajman, Karl Aberer Περιγραφή του προβλήματος Ευρετηριοποίηση μεγάλων συλλογών εγγράφων
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 24/3/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Όλοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα μικρότεροι του 10000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Αν κάπου κάνετε κάποιες υποθέσεις
Διαβάστε περισσότεραEPL660: Information Retrieval and Search Engines Lab 5
EPL660: Information Retrieval and Search Engines Lab 5 Παύλος Αντωνίου Γραφείο: B109, ΘΕΕ01 University of Cyprus Department of Computer Science Classes in Hadoop: InputFormat Fundamental class in Hadoop
Διαβάστε περισσότεραΕιδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων
Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις
Διαβάστε περισσότεραΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)
ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) Συσκευές αποθήκευσης Ένας υπολογιστής προκειµένου να αποθηκεύσει δεδοµένα χρησιµοποιεί δύο τρόπους αποθήκευσης: Την Κύρια Μνήµη Τις συσκευές µόνιµης αποθήκευσης (δευτερεύουσα
Διαβάστε περισσότεραΑποθήκευση Δεδομένων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Αποθήκευση Δεδομένων Βάσεις Δεδομένων 2017-2018 1 ΣΔΒΔ SQL ΣΔΒΔ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Τυπικά, Κάθε σχέση (το στιγμιότυπο της) αποθηκεύεται σε ένα αρχείο Βάσεις Δεδομένων 2017-2018 2 Δομή ενός ΣΔΒΔ (πιο αναλυτικά)
Διαβάστε περισσότεραΕξωτερική Ταξινόμηση. Μ.Χατζόπουλος 1
Εξωτερική Ταξινόμηση Μ.Χατζόπουλος 1 Γιατί είναι απαραίτητη; Κλασσικό Πρόβλημα της Πληροφορικής Πολλές φορές θέλουμε να παρουσιάσουμε δεδομένα σε ταξινομημένη μορφή Είναι σημαντική για την απαλοιφή διπλοτύπων
Διαβάστε περισσότεραΥλοποίηση κατασκευής δέντρου επιθεμάτων σε Hadoop MapReduce
κατασκευής δέντρου επιθεμάτων σε Hadoop MapReduce Αλέξανδρος Κωνσταντινάκης - Κάρμης Εργαστήριο Βάσεων Δεδομένων - Εθνικό Μετσόβιο Πολυτεχνείο 12 Ιουλίου 2010 Βιολογικό Υλικό Εισαγωγή Βιολογικό Υλικό Δέντρα
Διαβάστε περισσότερα