Προσεγγιστική Απάντηση Ερωτήσεων σε Σχεσιακές Βάσεις εδοµένων



Σχετικά έγγραφα
Περίληψη ιπλωµατικής Εργασίας

iii ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος

Είδη Μεταβλητών. κλίµακα µέτρησης

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

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

ΠΕΡΙΕΧΟΜΕΝΑ. ΠΡΟΛΟΓΟΣ... vii ΠΕΡΙΕΧΟΜΕΝΑ... ix ΓΕΝΙΚΗ ΒΙΒΛΙΟΓΡΑΦΙΑ... xv. Κεφάλαιο 1 ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ ΑΠΟ ΤΗ ΣΤΑΤΙΣΤΙΚΗ

Μεγίστου Σφάλµατος. Παναγιώτης Καρράς. Αθήνα, 26 Αυγούστου 2005

Πληροφοριακά Συστήµατα

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

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

Μέθοδοι Μηχανών Μάθησης για Ευφυή Αναγνώριση και ιάγνωση Ιατρικών εδοµένων

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 3 ΔΕΣΜΕΥΜΕΝΗ ΠΙΘΑΝΟΤΗΤΑ, ΟΛΙΚΗ ΠΙΘΑΝΟΤΗΤΑ ΘΕΩΡΗΜΑ BAYES, ΑΝΕΞΑΡΤΗΣΙΑ ΚΑΙ ΣΥΝΑΦΕΙΣ ΕΝΝΟΙΕΣ 71


ΣΕΙΡΕΣ TAYLOR. Στην Ενότητα αυτή θα ασχοληθούµε µε την προσέγγιση συναρτήσεων µέσω πολυωνύµων. Πολυώνυµο είναι κάθε συνάρτηση της µορφής:

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ ΠΡΩΤΟ: ΠΙΘΑΝΟΤΗΤΕΣ 11 ΚΕΦΑΛΑΙΟ 1 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΙΘΑΝΟΤΗΤΑΣ 13

Αριθμητική Ανάλυση και Εφαρμογές

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

Κατανοµές. Η κατανοµή (distribution) µιας µεταβλητής (variable) φαίνεται από το σχήµα του ιστογράµµατος (histogram).

Λίγα λόγια για τους συγγραφείς 16 Πρόλογος 17

ΕΡΩΤΗΣΕΙΣ ΣΩΣΤΟΥ ΛΑΘΟΥΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΤΗΣ Γ ΓΕΝΙΚΗΣ ΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ

Πρόλογος... xv. Κεφάλαιο 1. Εισαγωγικές Έννοιες... 1

ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ

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

Το εσωτερικό ενός Σ Β

( ) = inf { (, Ρ) : Ρ διαµέριση του [, ]}

ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΣΤΑΤΙΣΤΙΚΗ ΓΙΑ ΠΟΛΙΤΙΚΟΥΣ ΜΗΧΑΝΙΚΟΥΣ ΜΕΡΟΣ Β

ΚΕΦΑΛΑΙΟ Μηχανική Μάθηση

Δυναμικός Προγραμματισμός

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

Εισόδημα Κατανάλωση

Ανάλυση Δεδοµένων µε χρήση του Στατιστικού Πακέτου R

14/10/2005. <id, ts, x, y> (online). (single-pass). Potamias-abstract.pdf

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv

ΣΤΑΤΙΣΤΙΚΗ ΣΥΜΠΕΡΑΣΜΑΤΟΛΟΓΙΑ

Μάθηµα 1. Κεφάλαιο 1o: Συστήµατα. γ R παριστάνει ευθεία και καλείται γραµµική εξίσωση µε δύο αγνώστους.

Παρουσίαση 2 η : Αρχές εκτίμησης παραμέτρων Μέρος 1 ο

ΕΛΕΓΧΟΙ ΠΡΟΣΑΡΜΟΓΗΣ & ΥΠΟΘΕΣΕΩΝ

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ ΠΡΩΤΟ ΠΙΘΑΝΟΤΗΤΕΣ 13 ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ 15 ΚΕΦΑΛΑΙΟ 2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΙΘΑΝΟΤΗΤΑΣ 19

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

Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ)

MBR Ελάχιστο Περιβάλλον Ορθογώνιο (Minimum Bounding Rectangle) Το µικρότερο ορθογώνιο που περιβάλλει πλήρως το αντικείµενο 7 Παραδείγµατα MBR 8 6.

ΚΑΤΑΝΟΜΈΣ. 8.1 Εισαγωγή. 8.2 Κατανομές Συχνοτήτων (Frequency Distributions) ΚΕΦΑΛΑΙΟ

Αλγόριθµοι και Πολυπλοκότητα

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων

στατιστική θεωρεία της δειγµατοληψίας

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ

Δειγματοληψία στην Ερευνα. Ετος

ΑΝΑΛΥΣΗ Ε ΟΜΕΝΩΝ 1. ΕΙ Η Ε ΟΜΕΝΩΝ, ΣΥΛΛΟΓΗ, ΚΩ ΙΚΟΠΟΙΗΣΗ ΚΑΙ ΕΙΣΑΓΩΓΗ

4.ΣΤΡΩΜΑΤΟΠΟΙΗΜΕΝΗ ΤΥΧΑΙΑ

ΣΤΑΤΙΣΤΙΚΗ ΕΠΕΞΕΡΓΑΣΙΑ ΓΙΑ ΤΗΝ ΑΠΟΤΙΜΗΣΗ ΤΩΝ ΑΠΟΤΕΛΕΣΜΑΤΩΝ

4.3. Γραµµικοί ταξινοµητές

ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ Σφάλµατα και στατιστική επεξεργασία πειραµατικών µετρήσεων

Αναγνώριση Προτύπων Ι

ΚΕΦΑΛΑΙΟ 3. Περιγραφή της Μεθόδου ΠΕΡΙΓΡΑΦΗ ΤΗΣ ΜΕΘΟΔΟΥ

Certified Data Base Designer (CDBD)

Παρεµβολή και Προσέγγιση Συναρτήσεων

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Είδη Μεταβλητών Κλίμακα Μέτρησης Οι τεχνικές της Περιγραφικής στατιστικής ανάλογα με την κλίμακα μέτρησης Οι τελεστές Π και Σ

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΤΕΧΝΙΚΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ

Συστήµατα και Αλγόριθµοι Πολυµέσων

Μεθοδολογίες παρεµβολής σε DTM.

ΠΑΝΕΠΙΣΤΗΜΙΑΚΑ ΦΡΟΝΤΙΣΤΗΡΙΑ ΚΟΛΛΙΝΤΖΑ. Ερωτήσεις πολλαπλής επιλογής. Συντάκτης: Δημήτριος Κρέτσης

Εξόρυξη Γνώσης από εδοµένα (Data Mining)

Στατιστική Εισαγωγικές Έννοιες

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΕΙΔΙΚΑ ΘΕΜΑΤΑ. Κεφάλαιο 10. Εισαγωγή στην εκτιμητική

ΣΥΛΛΟΓΗ ΚΑΙ ΠΑΡΟΥΣΙΑΣΗ ΤΩΝ ΣΤΑΤΙΣΤΙΚΩΝ Ε ΟΜΕΝΩΝ

Αρχές κωδικοποίησης. Τεχνολογία Πολυµέσων 08-1

Το Κεντρικό Οριακό Θεώρημα

Clustering. Αλγόριθµοι Οµαδοποίησης Αντικειµένων

Απλή Γραμμική Παλινδρόμηση και Συσχέτιση 19/5/2017

Δυναμικός Προγραμματισμός

ΤΕΣΤ ΣΤΑΤΙΣΤΙΚΗΣ ΕΦΑΡΜΟΣΜΕΝΗΣ ΣΤΑΤΙΣΤΙΚΗΣ ΓΕΩΡΓΙΚΟΥ ΠΕΙΡΑΜΑΤΙΣΜΟΥ. Τεστ 1 ο Κατανοµή Συχνοτήτων (50 βαθµοί)

Εισαγωγή Αλγόριθµοι Αποτελέσµατα Επίλογος Ορισµός του Προβλήµατος Ευθυγράµµιση : Εύρεση ενός γεωµετρικού µετασχηµατισµού που ϕέρνει κοντά δύο τρισδιάσ

Ανάλυση Δεδομένων με χρήση του Στατιστικού Πακέτου R

Δρ. Χάϊδω Δριτσάκη. MSc Τραπεζική & Χρηματοοικονομική

3. Οριακά θεωρήµατα. Κεντρικό Οριακό Θεώρηµα (Κ.Ο.Θ.)

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER

ιµελής Σχέση ιατεταγµένο ζεύγος (α, β): ύο αντικείµενα (όχι κατ ανάγκη διαφορετικά) σε καθορισµένη σειρά. Γενίκευση: διατεταγµένη τριάδα (α, β, γ), δι

Πανεπιστήµιο Κύπρου Πολυτεχνική Σχολή

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Western Macedonia University of Applied Sciences Κοίλα Κοζάνης Kozani GR 50100

Σηµειώσεις στις σειρές

ΠΕΡΙΓΡΑΦΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

Εξαγωγή κανόνων από αριθµητικά δεδοµένα

Στο στάδιο ανάλυσης των αποτελεσµάτων: ανάλυση ευαισθησίας της λύσης, προσδιορισµός της σύγκρουσης των κριτηρίων.

ΑΡΙΘΜΗΤΙΚΕΣ ΜΕΘΟΔΟΙ ΓΙΑ ΠΡΟΒΛΗΜΑΤΑ ΜΗΧΑΝΙΚΗΣ ΕΦΑΡΜΟΓΕΣ ΜΕ ΧΡΗΣΗ MATLAB ΔΕΥΤΕΡΗ ΕΚΔΟΣΗ [ΒΕΛΤΙΩΜΕΝΗ ΚΑΙ ΕΠΑΥΞΗΜΕΝΗ]

Στατιστική. Εκτιμητική

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΛΗΡΟΦΟΡΙΑΣ ΠΑΡΟΥΣΙΑΣΗ ΤΕΛΙΚΗΣ ΕΡΓΑΣΙΑΣ ΛΙΝΑ ΜΑΣΣΟΥ

ΑΠΟΔΟΤΙΚΗ ΑΠΟΤΙΜΗΣΗ ΕΡΩΤΗΣΕΩΝ OLAP Η ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΕΞΕΙΔΙΚΕΥΣΗΣ. Υποβάλλεται στην

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

Περιεχόμενα. σελ. Πρόλογος 1 ης Έκδοσης... ix Πρόλογος 2 ης Έκδοσης... xi Εισαγωγή... xiii

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Το Κεντρικό Οριακό Θεώρημα

Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης

Το Κεντρικό Οριακό Θεώρημα

υναμικός Προγραμματισμός

Εισαγωγή στη Στατιστική

ΠΙΘΑΝΟΤΗΤΑ ΚΑΙ ΒΑΣΙΚΕΣ Ι ΙΟΤΗΤΕΣ ΤΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ

Transcript:

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΖΩΓΡΑΦΟΥ 57 73, ΑΘΗΝΑ ΕΒΓ - ΙΠΛ-200-06 0 Οκτωβρίου 200 Προσεγγιστική Απάντηση Ερωτήσεων σε Σχεσιακές Βάσεις εδοµένων Αθανασίου Σπύρος Κουβάρας Ιωάννης ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: Τίµος Σελλής ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΡΓΑΣΤΗΡΙΟ ΣΥΣΤΗΜΑΤΩΝ ΒΑΣΕΩΝ ΓΝΩΣΕΩΝ ΚΑΙ Ε ΟΜΕΝΩΝ

ii

Πρόλογος Θα ήθελα να ευχαριστήσω όλους τους καθηγητές µου για τις γνώσεις που µου πρόσφεραν κατά τη διάρκεια της φοίτησης µου στο ΕΜΠ και όλους τους συνεργάτες που µε βοήθησαν. Ιδιαίτερα θέλω να ευχαριστήσω τον υπεύθυνο για αυτή τη διπλωµατική καθηγητή Τίµο Σελλή, τον υποψήφιο διδάκτορα Παντελή Σείσογλου και το συνεργάτη και φίλο µου Σπύρο Αθανασίου. Επίσης θα ήθελα να ευχαριστήσω του γονείς µου που µε την αγάπη τους και τη συνεχή ενθάρρυνσή τους µε στήριξαν όλα αυτά τα χρόνια Αθήνα, 8/0/200 Ιωάννης Π. Κουβάρας iii

iv

Πρόλογος Get Drunk! Always be drunk. That's it! The great imperative! In order not to feel Time's horrid fardel bruise your shoulders, grinding you into the earth, Get drunk and stay that way. On what? On wine, poetry, virtue, whatever. But get drunk. And if you sometimes happen to wake up on the porches of a palace, in the green grass of a ditch, in the dismal loneliness of your own room, your drunkenness gone or disappearing, ask the wind, the wave, the star, the bird, the clock, ask everything that flees, everything that groans or rolls or sings, everything that speaks, ask what time it is; and the wind, the wave, the star, the bird, the clock will answer you: "Time to get drunk! Don't be martyred slaves of Time, Get drunk! Stay drunk! On wine, virtue, poetry, whatever!" Charles Baudelaire Τι µεθύσι ήταν και αυτή η διπλωµατική εργασία! Αν ήταν ταξίδι θα ήταν η Οδύσσεια, και αν ήταν τέρας θα ήταν η Λερναία Ύδρα. Όποτε κόβαµε το ένα κεφάλι ξεπηδούσαν άλλα δέκα, όποτε πιστεύαµε πως φτάναµε στην Ιθάκη, ένας αέρας µας έστελνε πίσω στην Τροία. Χωρίς να το καταλάβουµε πέρασαν έξι µήνες πάνω από βιβλία και διατριβές, και ήταν τα όσα διαβάζαµε τόσο µεθυστικά που ασυναίσθητα σκύβαµε όλο και πιο κοντά στο χαρτί, ίσως για να βρεθούµε πιο κοντά στη γνώση Μάταιη προσπάθεια! Το ένα ξενύχτι ακολουθούσε το άλλο, και οι απορίες αντί να λιγοστεύουν γίνονταν όλο και περισσότερες. Νοµοτελειακά θα πουν κάποιοι. Ίσως έτσι είναι. Μπορεί λοιπόν να µην νιώθουµε σοφότεροι, αλλά είµαστε σίγουρα πια πολυταξιδεµένοι Συνοδοιπόρο, συνεργάτη, συµπαραστάτη και φίλο στην κοινή µας προσπάθεια ήµουν αρκετά τυχερός να έχω Ιωάννη Κουβάρα. Πέρα από ένα µεγάλο ευχαριστώ, µεγαλύτερο από όσο χωρούν αυτές οι γραµµές, θα ήθελα να του ζητήσω και συγνώµη, για όλες τις φορές που ο v

εγωισµός και η ισχυρογνωµοσύνη µου γέµιζε το δωµάτιο - και µερικά διαµερίσµατα ακόµη Η επιµονή στη λεπτοµέρεια και οι απεριόριστες τεχνικές γνώσεις τον χαρακτηρίζουν ως επιστήµονα. Η αγνότητα και η µεγαλοκαρδία τον ξεχωρίζουν ως άνθρωπο. Γιαννάκη σε ευχαριστώ. Η αναφορά µου θα ήταν λειψή αν παρέλειπα να µνηµονεύσω τους ανθρώπους που έστρωσαν το δρόµο που βρίσκοµαι σήµερα. Καθένας είχε τη δική του προσωπική συµβολή και τους ευγνωµονώ για την αγάπη που µου έδειξαν. Ο κ. Κατρατζής µου δίδαξε επιµονή, ο κ. Κυριακόπουλος ακρίβεια, ο κ. Μανωλκίδης συνέπεια, ο κ. Φραντζής ευρηµατικότητα, και η Ζωή Καβαδέλλα (η µόνη που δεν µπορεί να µπει σε αλφαβητική σειρά και καµία σειρά γενικότερα) µου δίδαξε Ε λοιπόν, ακόµη µαθαίνω από τη Ζωή! Η οικογένειά µου: οι γονείς µου, ο αδερφός µου, η Φωτεινή, η ώρα, ο Κώστας, η Γεωργία, ο Κοσµάς, ο Χαράλαµπος και ο Μίµης, είναι ο βράχος που µε στηρίζει, η σκεπή που µε προστατεύει, ο ήλιος που φωτίζει το δρόµο µου. εν µπορώ να τους ευχαριστήσω, γιατί γνωρίζω πως µε αγαπούν από την καρδιά τους. εν µπορώ να τους αφιερώσω αυτό το κείµενο, γιατί έτσι κι αλλιώς τους ανήκει. Τους δίνω µόνο την αγάπη µου, γιατί ό,τι άλλο έχω είναι δικό τους. Ακόµη, θα ήθελα να ευχαριστήσω τον κ. Παναγιώτη Τσανάκα, τον καθηγητή που µε καλωσόρισε στο Πολυτεχνείο πριν από πέντε χρόνια, το φίλο που µε αποχαιρετά τώρα. Θεωρώ επίσης τον εαυτό µου τυχερό και για τη συνεργασία µε τον καθηγητή Τίµο Σελλή, έναν άνθρωπο αφάνταστα πράο, ευγενή και υποµονετικό, του οποίου το στίγµα στα επόµενα στάδια της ακαδηµαϊκής µου διαδροµής είµαι βέβαιος, θα είναι καθοριστικό. Τελευταίος, αλλά πρώτος στη σκέψη µου, ο επιβλέποντας της διπλωµατικής εργασίας, υποψήφιος διδάκτορας Παντελής Σεϊσογλου, στο πρόσωπο του οποίου βρήκα ένα νέο φίλο. Του εύχοµαι καλή συνέχεια και τον ευχαριστώ για την καλοσύνη του. Αθήνα, 7/0/200 Σπύρος Αθανασίου vi

Περίληψη Σε πολλές περιπτώσεις εφαρµογών των Βάσεων εδοµένων είναι κυρίαρχη η απαίτηση για την ανάλυση µεγάλου όγκου δεδοµένων, σε πολύ µικρό χρονικό διάστηµα. Η λύση που τα τελευταία χρόνια φαντάζει περισσότερο ελκυστική είναι η απάντηση των ερωτηµάτων των χρηστών µε ένα µικρό περιθώριο σφάλµατος, αρχικά αποθηκεύοντας µία περίληψη της πληροφορίας και στη συνέχεια εκτελώντας την ερώτηση πάνω στη σύνοψη αυτή. Έτσι κερδίζουµε σε χρόνο απόκρισης, χάνοντας όµως σε ακρίβεια. Στις ειδικές περιπτώσεις εφαρµογών όπου είναι θεµιτό ένα πιθανό σφάλµα στην απάντηση µε αντάλλαγµα την επιτάχυνση της λειτουργίας του συστήµατος, οι τεχνικές που παρουσιάζουµε είναι απόλυτα επιτυχηµένες. Μια µορφή περίληψης, που χρησιµοποιείται για πολλά χρόνια στα Σ Β, είναι τα ιστογράµµατα. Προέρχονται από την στατιστική, και πρόκειται για την διαµέριση µιας κατανοµής συχνοτήτων σε µη επικαλυπτόµενες οµάδες (buckets). Κάθε τιµή της κατανοµής αντιπροσωπεύεται από το bucket στο οποίο ανήκει, ενώ στη θέση της κατανοµής χρησιµοποιούµε το ιστόγραµµά της. Ανάλογα λειτουργούν οι τεχνικές που στηρίζονται στον Wavelet µετασχηµατισµό των δεδοµένων. Οι σχεσιακοί πίνακες αποσυντίθενται σε ένα σύνολο συνιστωσών ισοδύναµο µε την αρχική κατανοµή. Από τις συνιστώσες αυτές κρατάµε εκείνες που προσεγγίζουν καλύτερα τα υπό συµπίεση δεδοµένα. Το bucket ενός ιστογράµµατος είναι λειτουργικά ισοδύναµο µε µία συνιστώσα, µε µόνη διαφορά πως στις τελευταίες επιτρέπεται η επικάλυψη. Με βάση τη σύνοψη που έχει παραχθεί απαντούµε ταχύτατα στις ερωτήσεις του χρήστη, µε σφάλµατα που κυµαίνονται στη µέση περίπτωση από % µέχρι και 20%. Λέξεις Κλειδιά: Περίληψη εδοµένων, Σύνοψη εδοµένων, Συµπίεση εδοµένων, Ιστογράµµατα, ειγµατοληψία, Οµαδοποίηση, Μετασχηµατισµός Wavelet, Προσεγγιστική Απάντηση Ερωτήσεων, Εκτίµηση Επιλεκτικότητας, OLAP, Κύβοι, Συστήµατα Στήριξης Αποφάσεων. vii

viii

Summary In many modern database applications, there is a dominating need for the analysis of large amounts of data, within strict time constraints. The solution that seems most attractive, is the approximate answer of the users queries, initially storing a summary of the original data and then executing the query on that small synopsis. This way we may gain in response time, but losing in accuracy. In certain applications where an error in the answer is legit, if it is traded with the faster operation of the system, the techniques presented are absolutely successful. A type of a summary, which has been used for a long time in modern DBMSs, are histograms. Originating from statistics, they involve the partition of a given data distribution in nonoverlapping groups (buckets). Each value in the distribution is represented by the bucket in which it belongs, and instead of the actual distribution we make use of its histogram. Methods based on the wavelet transformation of the data, operate under the same concept. The relational tables are decomposed to a set of coefficients. We then form a small sub-set of them that best describes the original data. A histogram bucket is functionally equivalent to a wavelet coefficient, with the distinction that a set of wavelets may overlap. Based on the created synopsis we are able to provide rapid approximate answers, with errors ranging from % to 20% in average. Keywords: Data Summaries, Data Reduction, Data Synopses, Histograms, Sampling, Clustering, Wavelet Decomposition, Approximate Query Processing, Selectivity Estimation, OLAP, Cubes, Decision Support Systems. ix

x

Πίνακας περιεχοµένων Εισαγωγή.... Αντικείµενο της ιπλωµατικής..... Προσεγγιστική Απάντηση Ερωτήσεων Ορισµός... 2.2 Οργάνωση του τόµου... 4.2. Περιγραφή των κεφαλαίων... 5 2 Μέθοδοι Συµπίεσης... 7 2. Τεχνικές Συµπίεσης... 8 2.. Προϋπολογισµός Queries... 8 2..2 ειγµατοληψία Sampling... 9 2..3 Ιστογράµµατα - Grids... 9 2..4 Παλινδρόµηση Regression (Parametric Modeling)... 2..5 SVD Singular Value Decomposition... 2 2..6 Οµαδοποίηση Clustering (Parametric Modeling)... 2 2..7 Wavelet Decomposition... 3 2..8 Approximate Data Structures... 3 2..9 Υβριδικές µέθοδοι... 4 2.2 Γενικές Παρατηρήσεις... 4 2.3 Συµπεράσµατα... 5 3 Ιστογράµµατα... 7 3. Γενικά... 7 3.2 Ορισµοί... 20 3.3 Ταξινόµηση Ιστογραµµάτων... 2 3.3. Sort & Source Parameters... 22 3.3.2 Partition Class... 23 3.3.3 Partition Constraint... 24 3.3.4 Προσέγγιση τιµών και συχνοτήτων... 26 3.4 Μονοδιάστατα Ιστογράµµατα... 27 xi

3.4. Equi Sum (V, S)... 28 3.4.2 Equi Depth (V, F)... 28 3.4.3 Spline based (V, C)... 28 3.4.4 V Optimal (F, F)... 29 3.4.5 V Optimal-End Biased (F, F)... 29 3.4.6 V Optimal (V, F), V Optimal (V, A), V Optimal (A, A), V... 29 3.4.7 Maxdiff (V, F), Maxdiff (V, A)... 30 3.4.8 Compressed (V, F), Compressed (V, A)... 30 3.5 Πολυδιάστατα Ιστογράµµατα... 30 3.5. Εισαγωγή... 30 3.5.2 Trivial Multidimensional Histograms Attribute Value Independence Assumption (AVI)... 32 3.5.3 PHASED... 33 3.5.4 MHIST-p, MHIST-2... 34 3.5.5 VMHIST... 35 3.5.6 GENHIST... 40 3.5.7 Πολυδιάστατα Ιστογράµµατα µε συµπίεση... 47 3.6 Κατασκευή Ιστογραµµάτων... 5 3.7 Συντήρηση Ιστογραµµάτων... 52 4 Χρήση Ιστογραµµάτων για Προσεγγιστική Απάντηση Ερωτήσεων... 58 4. Σχολιασµός της Υλοποίησης... 58 4.. Μορφή κατανοµών... 58 4..2 MHIST constructhistogram... 58 4..3 MHIST findpartitionpoint... 59 4..4 MHIST partition... 59 4..5 MHIST transform... 59 4..6 GENHIST constructhistogram... 59 4..7 GENHIST refinelevel... 60 4..8 GENHIST checkhistory... 60 4..9 MHIST & GENHIST - Εκτέλεση πειραµάτων... 6 4..0 Κατασκευή συνθετικών κατανοµών... 6 xii

4.2 Εισαγωγή... 6 4.3 η Μέθοδος... 62 4.3. Ορισµοί... 63 4.3.2 Προσέγγιση υπό-κύβων... 65 4.3.3 Προσέγγιση κύβων... 65 4.3.4 Παρατηρήσεις... 69 4.4 2 η Μέθοδος... 69 4.4. Προσέγγιση Ερωτήσεων που επιστρέφουν Σχέσεις... 70 4.4.2 Μέτρο Σφάλµατος... 72 4.4.3 Ιστογράµµατα ως Σχέσεις... 75 4.4.4 Προσεγγιστική Απάντηση Ερωτήσεων µε Χρήση Ιστογραµµάτων... 76 4.4.5 Μετατροπή Ερωτήσεων... 78 4.4.6 Παράδειγµα... 82 5 Πειραµατική µελέτη ιστογραµµάτων... 84 5. Κατανοµές δεδοµένων... 84 5.. Συνθετικές κατανοµές δεδοµένων... 85 5..2 Πραγµατικές κατανοµές δεδοµένων... 88 5.2 Εργαλεία ανάπτυξης και υλικός εξοπλισµός... 88 5.3 Επίδραση κατανοµής συχνοτήτων (Frequency skew)... 89 5.4 Επίδραση κατανοµής τιµών (Value domain skew)... 9 5.5 Επίδραση εύρους ερωτήσεων... 92 5.6 Επίδραση διαστάσεων... 94 5.7 Εκτέλεση πειραµάτων σε πραγµατικά δεδοµένα... 97 5.8 Συµπεράσµατα... 99 6 Θεωρία του Wavelet Μετασχηµατισµού... 00 6. Εισαγωγή... 00 6.2 Μαθηµατικοί Ορισµοί... 03 6.2. ιανύσµατα Βάσης... 03 6.2.2 Μετασχηµατισµός Fourier... 05 6.2.3 Short Term Fourier Transformation - STFT... 6.2.4 Wavelet Transformation... 2 xiii

6.2.5 WT εναντίον STFT και FT... 5 6.3 Continuous Wavelet Transformation CWT... 7 6.4 Wavelet Series... 9 6.5 Discrete Wavelet Tranformation... 2 7 Μέθοδοι Συµπίεσης µε τη χρήση του Wavelet µετασχηµατισµού... 26 7. Εισαγωγή... 26 7.2 Συµπίεση εδοµένων µε Wavelet Συναρτήσεις... 26 7.2. Περίληψη των µεθόδων... 28 7.2.2 Haar Wavelets... 28 7.3 Μονοδιάστατος Wavelet Μετασχηµατισµός... 28 7.3. Συµπίεση µε τον Haar Wavelet Transformation... 35 7.4 Πολυδιάστατος Wavelet Μετασχηµατισµός... 39 7.4. Standard Decomposition... 39 7.4.2 Nonstandard decomposition... 40 7.4.3 Πολυδιάστατες Haar συνιστώσες: Φυσική Σηµασία και αναπαράσταση... 44 7.5 Κατασκευή των Wavelet Περιλήψεων (Συµπίεση Αποσυµπίεση)... 47 7.5. Συµβολισµοί... 48 7.5.2 Συµβάσεις... 49 7.5.3 Αλγόριθµος κατασκευής του Wavelet Μετασχηµατισµού - ComputeWavelet... 50 7.5.4 Αποκοπή Συνιστωσών Σχηµατισµός της Περίληψης... 56 7.5.5 Naïve Αποσυµπίεση της Περίληψης (Rendering)... 57 7.6 Επεξεργασία σχεσιακών ερωτήσεων στο πεδίο του Wavelet Μετασχηµατισµού.. 58 7.6. Select τελεστής... 60 7.6.2 Projection Τελεστής... 62 7.6.3 Join τελεστής... 63 7.6.4 Aggregate τελεστές... 67 7.7 Αποσυµπίεση (Rendering) ενός συνόλου από wavelet συνιστώσες... 70 8 Υλοποίηση των µεθόδων που στηρίζονται στον Wavelet Μετασχηµατισµό και Πειραµατική Αξιολόγησή τους... 74 8. Σχολιασµός της Υλοποίησης... 74 8.. buildhaar()... 76 xiv

8..2 renderhaar()... 77 8..3 buildsynopsis()... 77 8..4 rendersynopsis()... 78 8..5 selectpred()... 78 8..6 projectpred()... 78 8..7 sum()... 79 8..8 count()... 79 8..9 average()... 79 8.2 Πειραµατικά Αποτελέσµατα... 79 8.2. Συνθετικά εδοµένα... 80 8.2.2 Πειράµατα καλής προσέγγισης της κατανοµής... 83 8.2.3 Selectivity Estimation... 89 8.2.4 Προσεγγιστική Απάντηση Ερωτήσεων... 96 8.2.5 Επίδραση του πλήθους των διαστάσεων... 202 9 Επίλογος... 206 9. Σύγκριση πειραµατικών αποτελεσµάτων... 206 9.. Κατασκευή της Σύνοψης... 207 9..2 Εκτίµηση Επιλεκτικότητας... 208 9.2 ιαπιστώσεις... 22 0 Βιβλιογραφία... 26 xv

xvi

Εισαγωγή. Αντικείµενο της ιπλωµατικής Τα Συστήµατα ιαχείρισης Βάσεων εδοµένων (Σ Β ) περιέχουν ορισµένα τµήµατα, όπως οι query optimizers και query profilers, για τη λειτουργία των οποίων πρέπει να είναι γνωστές οι κατανοµές των δεδοµένων (data distributions) των σχέσεων (relations) του συστήµατος. Για το λόγο αυτό τα περισσότερα εµπορικά Σ Β συντηρούν σε κάποια µορφή περιλήψεις των πραγµατικών δεδοµένων, π.χ. σε µορφή στατιστικών κατανοµών. Αυτή η πλεονάζουσα πληροφορία χρησιµοποιείται από το βελτιστοποιητή του συστήµατος προκειµένου να υπολογίσει εκτιµήσεις για το κόστος των διαφόρων πλάνων εκτέλεσης της υλοποίησης ενός query. Για παράδειγµα, οι πρώτοι optimizers (rule-based) χρησιµοποιούσαν ευριστικές τεχνικές προκειµένου να µετασχηµατίσουν το parse tree του εκάστοτε query σε ένα ισοδύναµο, αλλά πιο αποδοτικό από πλευράς κόστους εκτέλεσης. Ωστόσο, η επιλογή της σειράς εκτέλεσης των joins καθώς και των αλγορίθµων υλοποίησης τους (nested loops, merge joins, hash joins) δεν ήταν πάντα ξεκάθαρη. Αντίθετα, οι λεγόµενοι cost based optimizers, κάνοντας χρήση των παραπάνω πληροφοριών είναι σε θέση να απαντήσουν στα προηγούµενα ερωτήµατα µε πιο ορθολογιστικό τρόπο. Η ποιότητα και η ακρίβεια αυτής της πληροφορίας είναι καθοριστική για την όλη απόδοση του συστήµατος, αφού πιθανώς µεγάλα σφάλµατα στις εξαγόµενες εκτιµήσεις µπορεί να οδηγήσουν στην επιλογή µη αποδοτικών

πλάνων εκτέλεσης, µειώνοντας τη συνολική απόδοση του συστήµατος. Αυτό γίνεται περισσότερο εµφανές αν αναλογιστούµε ότι στην περίπτωση πολύπλοκων ερωτήσεων, το διαδιδόµενο σφάλµα µεταξύ διαδοχικών πράξεων συνένωσης (joins) αυξάνεται εκθετικά [IC9]. Το παραπάνω πρόβληµα αναφέρεται στη βιβλιογραφία ως εκτίµηση επιλεκτικότητας (selectivity estimation) και αποτελεί σηµείο προβληµατισµού των επιστηµόνων της περιοχής των Βάσεων εδοµένων για αρκετά χρόνια. Στην παρούσα διπλωµατική εργασία θα προσεγγίσουµε µια νέα ιδέα χρήσης των παραπάνω µεθόδων περιληπτικής περιγραφής των δεδοµένων, µε σκοπό την εξαγωγή προσεγγιστικών απαντήσεων στα ερωτήµατα του χρήστη, σε εξαιρετικά σύντοµο χρονικό διάστηµα. Αυτή η ανάγκη έχει προκύψει αφενός από τον ολοένα αυξανόµενο όγκο δεδοµένων στα σύγχρονα σχεσιακά συστήµατα, αφετέρου από την απαίτηση των χρηστών για την αποδοτική ανάλυση της περιεχόµενης σε αυτά πληροφορίας. Η απάντηση σε επίπεδο αρχιτεκτονικής συστήµατος είναι οι OLAP (On-Line Analytical Processing) εφαρµογές, στις οποίες η προσπάθεια για την διαχείριση και την αξιολόγηση της πληροφορίας γίνεται µε τη δηµιουργία νέων δοµών δεδοµένων και την προσαρµογή των OLTP υποσυστηµάτων στις νέες λειτουργικές απαιτήσεις. Η µεθοδολογία και οι τεχνικές που θα παρουσιάσουµε αποτελούν µια διαφορετική προσέγγιση στο πρόβληµα της ανάλυσης µεγάλου όγκου δεδοµένων, και µπορούν να περιγραφούν στο σύνολό τους ως προσπάθεια για την προσεγγιστική απάντηση ερωτήσεων (approximate query answering). Ας εξετάσουµε όµως το θέµα από την αρχή... Προσεγγιστική Απάντηση Ερωτήσεων Ορισµός Εκ των πραγµάτων, η χρήση των Η/Υ και της επιστήµης της Πληροφορικής σε πρακτικές εφαρµογές για την αποθήκευση κρίσιµων λειτουργικών πληροφοριών οφείλεται στην ιδιότητα της µηχανής Turing, και οποιουδήποτε υπολογιστικού µοντέλου που πηγάζει από την ίδια ιδέα, να αποθηκεύει την πληροφορία µε την οποία το έχουµε εµπιστευτεί για πάντα. Ακριβώς αυτή η υπόσχεση για την ασφάλεια στην αποθήκευση και τη διαχείριση της πληροφορίας οδήγησε και στην ανάπτυξη της περιοχής των Βάσεων εδοµένων, µε σκοπό την καλύτερη οργάνωση της πληροφορίας και κυρίως την αύξηση της διαθεσιµότητάς της. Το σύνολο των προσπαθειών των επιστηµόνων της περιοχής των Β συνοψίζεται στην απάντηση της ακόλουθης ερώτησης του ιδιοκτήτη της πληροφορίας: 2

Οποιαδήποτε στιγµή και αν αναζητήσω την πληροφορία µου, θα είµαι σε θέση να το κάνω, και αν ναι θα παίρνω πάντα την ίδια πληροφορία; Ο τυπικός χρήστης µιας Β είναι συνηθισµένος στο να έχει άµεση πρόσβαση στα δεδοµένα αλλά και να παίρνει µια ακριβή (exact) απάντηση στις ερωτήσεις του. Γνωρίζει πως δεν υπάρχει περίπτωση (ιδανικά τουλάχιστον) απώλειας πληροφορίας ή σφάλµατος της απάντησης. Εάν δηλαδή ο υπολογιστής αποφανθεί πως ο µέσος µισθός των υπαλλήλων σε µια επιχείρηση είναι 320.000 δρχ, ο ανθρώπινος χειριστής δεν µπορεί να αµφισβητήσει την απάντηση. Είναι πέρα πάσης αµφιβολίας ορθή, και νοµοτελειακά θα είναι για πάντα! Ο ίδιος χειριστής πώς θα αντιδρούσε αν η απάντηση στην ερώτησή του ήταν 38.000 ± 5000 δρχ; Το σύµπαν γκρεµίζεται, οι νόµοι της φύσης καταργούνται ή µήπως ο υπολογιστής απέκτησε χιούµορ; Σε κάθε περίπτωση µπορούµε να διατυπώσουµε την παρατήρηση πως η ίδια µας η απαίτηση για την άντληση προσεγγιστικών απαντήσεων από µια ένα σύγχρονο Σ Β είναι µια φανερά αντιφατική προσδοκία που ανατρέπει τα θεµέλια της ίδιας της επιστήµης των Β. Είναι προφανές λοιπόν πως αν και αυτή η διπλωµατική εργασία ανήκει και αναφέρεται στο γνωστικό πεδίο των Βάσεων εδοµένων, περιγράφει µια διαφορετική, ίσως και ριζοσπαστική ιδέα για τη χρήση τους. Το πρόβληµα της κατά προσέγγισης απάντησης ερωτήσεων σε σχεσιακές βάσεις δεδοµένων περικλείεται στην ακόλουθη ερώτηση: ίνεται µια ακριβής αναπαράσταση µιας σχεσιακής βάσης δεδοµένων, έστω. Είναι δυνατή η υλοποίηση τεχνικών αλγορίθµων µεθόδων που συνδυάζουν ταυτόχρονα τα ακόλουθα χαρακτηριστικά;. Μετασχηµατισµός των δεδοµένων σε µια νέα µορφή που καταλαµβάνει µερικές τάξεις µεγέθους µικρότερο χώρο σε σχέση µε την. Θεωρούµε για λόγους ευκολίας και χωρίς βλάβη της γενικότητας αποκλειστικά την περίπτωση σχεσιακών βάσεων δεδοµένων. Άλλωστε τα υπόλοιπα Σ Β δεν είναι τόσο διαδεδοµένα στην πράξη ώστε να είναι απαραίτητη η εξέταση του θέµατος κάτω από το πρίσµα των ειδικών χαρακτηριστικών τους. 3

2. Ταχύτατη απάντηση µιας ερώτησης που απευθύνεται στην αρχική βάση δεδοµένων, χρησιµοποιώντας την µετασχηµατισµένη συµπιεσµένη µορφή της. 3. Μικρό σφάλµα της προσεγγιστικής απάντησης σε σχέση µε την πραγµατική απάντηση της ερώτησης. Μια επιτυχηµένη µέθοδος συµπίεσης και απάντησης ερωτήσεων σε σχεσιακά συστήµατα Βάσεων εδοµένων (Compression and Answering algorithm for Relational Data CARD) πρέπει να συνδυάζει πολύ καλές επιδόσεις και στις τρεις απαιτήσεις µας, ενώ επιπλέον, όπως και κάθε εφαρµοζόµενος στην πράξη αλγόριθµος, πρέπει να έχει όσο το δυνατόν µικρότερη πολυπλοκότητα..2 Οργάνωση του τόµου Ο αναγνώστης που ασχολείται για πρώτη φορά µε το πρόβληµα της κατά προσέγγισης απάντησης ερωτήσεων σε Βάσεις εδοµένων θα συναντήσει λίγες γνώριµες έννοιες από το γνωστικό πεδίο των Β και πολλές νέες ιδέες, δανεισµένες από άλλα επιστηµονικά πεδία. Έχοντας αυτά στο νου, προσπαθήσαµε στη συγγραφή του κειµένου να λάβουµε υπόψη το νεοεισερχόµενο στο πεδίο αναγνώστη. Στην αρχή κάθε κεφαλαίου υπάρχει µια απλή περιγραφή των θεµάτων που θα αναλυθούν. Έπεται η ακριβής επιστηµονική διατύπωση των µαθηµατικών εργαλείων που θα χρησιµοποιηθούν και ακολουθεί η ανάλυση των µεθόδων που µας ενδιαφέρουν. Εξαίρεση σε αυτό τον κανόνα παρουσίασης αποτελεί το κεφάλαιο που αναφέρεται στις εφαρµογές του Wavelet Μετασχηµατισµού, όπου πλειοψηφεί η λιγότερη φορµαλιστική περιγραφή των µεθόδων. Αιτία είναι η έλλειψη εξοικείωσης των περισσότερων πιθανών αναγνωστών µε την έννοια του WT, οπότε και επιλέξαµε µια περισσότερο διαισθητική παρουσίαση της λειτουργίας και της χρησιµότητας του, µε την αυστηρή διατύπωση να ακολουθεί µόνο τις καθαυτές µεθόδους συµπίεσης και απάντησης ερωτήσεων. Ελπίζουµε το αποτέλεσµα να µας δικαιώσει, πάντως για µια περισσότερο µαθηµατική παρουσίαση του WT ο αναγνώστης µπορεί να ανατρέξει στη βιβλιογραφία του αντίστοιχου κεφαλαίου. 4

.2. Περιγραφή των κεφαλαίων Αναλυτικότερα, το 2 ο Κεφάλαιο αποτελεί µια σύντοµη και γενική περιγραφή των σηµαντικότερων µεθόδων συµπίεσης δεδοµένων που έχουν χρησιµοποιηθεί κατά καιρούς στο πεδίο των Βάσεων εδοµένων. Η παρουσίαση είναι αρκετά γενική, µε σκοπό την υπογράµµιση των κυρίαρχων σηµείων κάθε τεχνικής. Στο 3 ο κεφάλαιο ξεκινά η συζήτηση για τον σηµαντικότερο και περισσότερο διαδεδοµένο τρόπο περιληπτικής περιγραφής των δεδοµένων µιας σχεσιακής βάσης, τα ιστογράµµατα. ίνεται η πλήρης ταξινόµησή τους, αλγόριθµοι κατασκευής, και µέτρα επίδοσης. Ακολουθεί η γενίκευσή τους σε πολλές διαστάσεις και η παρουσίαση των σηµαντικότερων πολυδιάστατων ιστογραµµάτων. Στο 4 ο κεφάλαιο ασχολούµαστε µε τους τρόπους χρήσης των ιστογραµµάτων που ορίσαµε στην προηγούµενη ενότητα, για την κατά προσέγγιση απάντηση ερωτήσεων. Παρουσιάζονται δύο µέθοδοι που απευθύνονται, η πρώτη στην απάντηση γενικών SQL ερωτήσεων σε ένα OLTP σύστηµα, η δεύτερη στην απάντηση range-sum ερωτήσεων σε OLAP κύβους. Το 5 ο κεφάλαιο αναφέρεται στην πειραµατική εξακρίβωση των επιδόσεων των προτεινόµενων µεθόδων, για ένα µεγάλο εύρος ερωτήσεων και κατανοµών δεδοµένων. Αφού πραγµατοποιηθεί η σχετική σύγκριση των σφαλµάτων κάθε τεχνικής, αναδεικνύονται πιθανά µειονεκτήµατα, και γίνονται προτάσεις για τη διόρθωσή τους. Στο 6 ο κεφάλαιο ξεκινά η συζήτηση για τις µεθόδους περίληψης δεδοµένων που στηρίζονται στον wavelet µετασχηµατισµό. Όλη η ενότητα αναλώνεται στην παρουσίαση της θεωρίας του wavelet µετασχηµατισµού, που αποτελεί ένα νέο σχετικά µαθηµατικό εργαλείο. Το 7 ο κεφάλαιο περιέχει µια ολοκληρωµένη πρόταση στο θέµα της προσεγγιστικής απάντησης ερωτήσεων, µε αλγορίθµους που στηρίζονται στον wavelet µετασχηµατισµό των δεδοµένων. Παρουσιάζονται µέθοδοι για την εκτέλεση των περισσότερων SQL τελεστών στο πεδίο της περίληψης των δεδοµένων. Στο 8 ο κεφάλαιο πραγµατοποιείται η πειραµατική αξιολόγηση των αλγορίθµων της προηγούµενης ενότητας για την περίπτωση συνθετικών δεδοµένων και των κυριότερων SQL τελεστών. Αφού αναλυθούν τα αποτελέσµατα γίνεται προσπάθεια για την περαιτέρω βελτίωση των αλγορίθµων. Το 9 ο κεφάλαιο είναι και επίλογος της διπλωµατικής, όπου παρουσιάζουµε συγκριτικά τα πλεονεκτήµατα και µειονεκτήµατα των µεθόδων που στηρίζονται στα ιστογράµµατα και τον wavelet µετασχηµατισµό. 5

Ο κώδικας την υλοποίησης των µεθόδων συµπίεσης που παρουσιάζονται στο κείµενο, βρίσκεται στο CD που περιέχεται στον τόµο της διπλωµατικής εργασίας, µαζί µε τα σύνολα δεδοµένων που χρησιµοποιήσαµε για την πραγµατοποίηση των πειραµάτων. 6

2 Μέθοδοι Συµπίεσης H προσπάθεια για τη συµπίεση των δεδοµένων µε σκοπό την προσεγγιστική απάντηση ερωτήσεων που αναφέρονται σε αυτά, αναφέρεται στη βιβλιογραφία µε πολλά διαφορετικά ονόµατα, ανάλογα µε την οπτική γωνία της συγκεκριµένης θεώρησης. Αριθµητική Ανάλυση Θεωρία Πιθανοτήτων Στατιστική Επεξεργασία Σήµατος - Εικόνας Data Warehousing (Spatial) Data Mining Data Analysis Η περίληψη των δεδοµένων µπορεί να είναι µη απωλεστική, δηλαδή να περιλαµβάνει την ίδια ακριβώς πληροφορία απλά οργανωµένη µε διαφορετικό τρόπο, ώστε να υποστηρίζει µια ειδική λειτουργία πάνω στα δεδοµένα (OLAP Cubes). Συνήθως όµως είναι απωλεστική, οπότε αποθηκεύουµε κλάσµα µόνο της αρχικής πληροφορίας ή ακόµη και µια προσέγγιση της. Σε κάθε περίπτωση έχουµε οφέλη ως προς τον χώρο που διαθέτουµε για την αποθήκευση των δεδοµένων, αλλά και του χρόνου που απαιτείται για να τα προσπελάσουµε (λόγω του µικρότερου I/O). Η παραχώρηση που πρέπει να κάνουµε αφορά στην ακρίβεια της απάντησης, και υπάρχουν αρκετές περιπτώσεις εφαρµογών όπου δεν έχουµε πρόβληµα µε έναν τέτοιο συµβιβασµό. 7

Ο χρήστης επιθυµεί µια γρήγορη απάντηση, έστω και ανακριβή. Για παράδειγµα, σε µια ακολουθία από drill-down queries σε ad-hoc data mining, τα αρχικά queries σκοπό έχουν να καθορίσουν την περιοχή που ενδιαφέρει και κατά συνέπεια τα επόµενα queries. Είναι ο κανόνας στα σηµερινά Συστήµατα Στήριξης Αποφάσεων (Decision Support Systems) η εκτέλεση πολύπλοκων ερωτήσεων πάνω σε τεράστιες ποσότητες δεδοµένων (TB), µε ταυτόχρονους περιορισµούς στον διαθέσιµο χρόνο για τον υπολογισµό της απάντησης. Μια προσεγγιστική απάντηση µπορεί να πληροφορήσει για την ορθότητα ενός query. Είναι ευπρόσδεκτη στην περίπτωση όπου τα πραγµατικά δεδοµένα δεν είναι προσπελάσιµα (αποµακρυσµένα, µεγάλο τηλεπικοινωνιακό φορτίο, φορητές Β, κατανεµηµένες Β ). Όταν πραγµατοποιούνται aggregate queries και δεν απαιτείται ακρίβεια στην απάντηση. Σε Query Optimizers των DBMSs, οι οποίοι επιλέγουν το βέλτιστο πλάνο µε βάση το κόστος της εκτέλεσης ενός query. Από την στιγµή που διαθέτουµε µια περίληψη ή σύνοψη των δεδοµένων, µπορούµε να απαντήσουµε σε διάφορες ερωτήσεις του χρήστη. Στη βιβλιογραφία έχει αναλυθεί διεξοδικά η απάντηση aggregate queries, και κυρίως η εκτίµηση επιλεκτικότητας των SQL τελεστών. Στις περιπτώσεις αυτές το αποτέλεσµα της ερώτησης είναι απλά ένας αριθµός που συνοδεύεται από κάποιο σφάλµα ή διάστηµα εµπιστοσύνης. Μια περισσότερο δύσκολη εφαρµογή είναι η απάντηση γενικών SQL queries (approximate query answering) που αποτελεί και αντικείµενο της διπλωµατικής εργασίας. 2. Τεχνικές Συµπίεσης Συνολικά, έχουν προταθεί οι ακόλουθες τεχνικές για την συµπίεση των δεδοµένων και την γρήγορη απάντηση ενός query. 2.. Προϋπολογισµός Queries 8

Αν και ουσιαστικά δεν είναι µέθοδος συµπίεσης των δεδοµένων, τυπικά πρόκειται για τεχνική µη απωλεστικής συµπίεσης (loss-less compression). Χαρακτηριστικό παράδειγµα αποτελεί ο τελεστής του κύβου [GBL+96] σε OLAP εφαρµογές, όπου προϋπολογίζονται διάφορα aggregates για συγκεκριµένες τιµές των attributes, τα οποία στη συνέχεια καλούνται διαστάσεις. Συναντήσαµε επιπλέον στη βιβλιογραφία την αποθήκευση του αποτελέσµατος παλαιότερων queries που έχει εκτελέσει ο χρήστης, και την εξαγωγή απάντησης µε βάση αυτά [AC00]. 2..2 ειγµατοληψία Sampling Αντί να χρησιµοποιούµε ολόκληρη τη relation ή τον κύβο για την εξαγωγή του αποτελέσµατος ενός query, χρησιµοποιούµε ένα τυχαίο, οµοιόµορφο δείγµα του εν λόγω πληθυσµού, και µε βάση αυτό υπολογίζεται µια προσεγγιστική απάντηση που ενσωµατώνει µόνο το σφάλµα της δειγµατοληψίας (sampling error). Σε κάθε περίπτωση, όσο µειώνεται το µέγεθος του δείγµατος, τόσο µειώνεται το διάστηµα εµπιστοσύνης της εκτίµησής µας. Σε OLTP συστήµατα µπορούµε να έχουµε ένα δείγµα από κάθε σχέση, και µε βάση αυτά να απαντάµε όλα τα queries [Coc77], [EN82], [GM98], [OR86], [LNS+93], [LNS90]. Περισσότερο ενδιαφέρουσα είναι η εφαρµογή της µεθόδου σε OLAP συστήµατα, όπου µπορούµε να έχούµε µόνο ένα δείγµα ενός κύβου (incomplete data cube) [Dyr96], από το οποία να υπολογίζουµε τα άγνωστα aggregates. Μια άλλη εφαρµογή αποτελούν τα Join Synopses [AGP+99], όπου συντηρούµε δείγµατα από joined relations που σχηµατίζουν ένα chained query (star, snowflake schema). Για την εξαγωγή ενός οµοιόµορφου τυχαίου δείγµατος (uniform random sample) η αποδοτικότερη µέθοδος είναι η reservoir sampling [Vit85]. Η κεντρική της ιδέα συνοψίζεται στη λήψη δείγµατος µεγέθους n από τον πληθυσµό, έτσι ώστε κάθε τιµή να έχει την ίδια πιθανότητα να βρεθεί στο δείγµα. 2..3 Ιστογράµµατα - Grids Τα ιστογράµµατα είναι διαδεδοµένα σε όλα τα εµπορικά συστήµατα διαχείρισης βάσεων δεδοµένων, ως µέρος του query optimizer. Προέρχονται από την στατιστική, και έχουν υποστεί πολλές αλλαγές για την βελτιστοποίησή τους στις βάσεις δεδοµένων. 9

Η κύρια τα ταξινόµησή τους έχει γίνει από τον Viswanath Poosala στη διδακτορική του διατριβή [Poo97], όπου θεµελιώνει θεωρητικά κριτήρια βελτιστότητας και προσδιορίζει το ικανότερο ιστόγραµµα για κάθε τύπο query. Σε ότι αφορά στα µονοδιάστατα ιστογράµµατα, αποτελούν ίσως την πιο αποδοτική µορφή απεικόνισης της κατανοµής ενός πεδίου. Η συµπεριφορά τους σε περισσότερες διαστάσεις, οπότε και µιλάµε για από κοινού συνάρτηση πυκνότητας πιθανότητας ή από κοινού κατανοµή συχνοτήτων, δεν είναι ικανοποιητική. Το κύριο µειονέκτηµά τους είναι η αύξηση του σφάλµατος µε την αύξηση των διαστάσεων, και η στατικότητά τους ως προς τον προϋπολογισµό τους σε συγκεκριµένες διαστάσεις. Έτσι ένα ιστόγραµµα για 3 attributes, δεν µπορεί να περιλάβει µετά την κατασκευή του και ένα τέταρτο πεδίο, εκτός και αν χρησιµοποιηθεί η AVI (Attribute Value Independence Assumption). Σε ότι αφορά στα grids, πρόκειται για ιδέα ανάλογη των ιστογραµµάτων. Ο χώρος, θεωρείται ότι τεµαχίζεται από ένα ορθογωνικό πλέγµα. Για κάθε τετράγωνο του πλέγµατος αποθηκεύονται οι ίδιες στατιστικές πληροφορίες µε τα buckets των ιστογραµµάτων. Πρόκειται σαφώς για ιστογράµµατα µε διαφορετικό όνοµα... όµως η διαφορετική οπτική γωνία από την οποία αντιµετωπίζεται ο τεµαχισµός του χώρου, προσφέρει ένα σύνολο νέων, αποδοτικών τεχνικών [PM99]. 2..3. Ιστογράµµατα µιας διάστασης Έχουµε ένα σύνολο τιµών. Το χωρίζουµε (διαλογή - partitioning) σε µια οµάδα από ξένα µεταξύ τους υποσύνολα που η ένωσή τους καλύπτει όλο το αρχικό σύνολο. Κάθε τέτοιο υποσύνολο καλείται κλάση (bucket). Για κάθε κλάση, γνωρίζουµε τα όριά της, καθώς και τον αριθµό των τιµών που περιλαµβάνει. Ο παραπάνω ορισµός δίνεται στην Στατιστική για να περιγράψει µια συνηθισµένη και εξαιρετικά επιτυχηµένη µέθοδο περιληπτικής περιγραφής ενός πληθυσµού. Όµως µια τέτοια περίληψη σκοπό έχει κυρίως την εποπτική αναπαράσταση του αρχικού συνόλου τιµών, ώστε να είναι άµεσα ορατά τα στατιστικά χαρακτηριστικά της κατανοµής που ακολουθούν τα δεδοµένα. Στις Βάσεις εδοµένων, τα ιστογράµµατα χρησιµοποιήθηκαν ήδη από το 980 σε διάφορα Σ Β, ως µέρος του query optimizer. Με βάση µια αδρή προσέγγιση των δεδοµένων σε κάθε σχέση, καθίσταται δυνατή η κατά προσέγγιση πρόβλεψη της επιλεκτικότητας ενός query, και κατά συνέπεια το βέλτιστο πλάνο εκτέλεσης. 0

Όµως, µε βάση την ίδια πληροφορία µπορούµε να δώσουµε και προσεγγιστικές απαντήσεις σε aggregate queries (sum, max, min, count, average). Υπάρχουν άλλωστε αρκετές εφαρµογές όπου χρήστης είναι διατεθειµένος να λάβει µια προσεγγιστική απάντηση µε αντάλλαγµα την αύξηση της ταχύτητας εκτέλεσης του ερωτήµατός του. Μέσα στο πλαίσιο της προσπάθειας για συµπίεση στα δεδοµένα, ανάµεσα σε άλλες τεχνικές, αναζητήθηκε η βελτιστοποίηση των χαρακτηριστικών των ιστογραµµάτων, ώστε να αποκρίνονται καλύτερα στο έργο τους σε ένα Σ Β. Μια πρώτη άµεση βελτίωση του κλασσικού ορισµού είναι η χρήση ιστογραµµάτων όπου οι κλάσεις τους (buckets ή grids) έχουν το ίδιο εύρος (equiwidth) ή το ίδιο πλήθος τιµών (equidepth). Για τα περιεχόµενα ενός bucket, µπορούµε να υποθέσουµε ότι σε αυτό περιλαµβάνονται όλες οι τιµές µεταξύ των ορίων του, οπότε και η συχνότητα κάθε τιµής είναι ίση µε το µέσο όρο των συχνοτήτων (continuous value assumption), ή πως υπάρχουν m τιµές που απέχουν ίση απόσταση (uniform spread assumption) ή τέλος πως κάθε bucket περιλαµβάνει µία µόνο τιµή (point value assumption). 2..3.2 Ιστογράµµατα περισσότερων διαστάσεων Όταν σε κάποιο query µας ενδιαφέρει η συσχέτιση δύο ή περισσοτέρων attributes, τότε πρέπει να έχουµε την αναπαράσταση τής από κοινού κατανοµής συχνοτήτων των εν λόγω attributes. Το πρόβληµα σε σχέση µε την µία διάσταση, είναι ότι δεν υπάρχει προφανής γραµµική (εν σειρά) διάταξη των σχηµατιζόµενων κλάσεων. Για την κατασκευή ενός πολυδιάστατου ιστογράµµατος µπορούµε να ακολουθήσουµε µια από τις παρακάτω τεχνικές. - - - - - - - AVI Mhist Hilbert Numbering Rectangular Partitioning (Grid) Fgrid Vmhist Sgrid (Summary Grids) 2..4 Παλινδρόµηση Regression (Parametric Modeling)

Η ιδέα στην παλινδρόµηση είναι η αντικατάσταση των πραγµατικών δεδοµένων (για µία, ή περισσότερες διαστάσεις) µε ένα καλά επιλεγµένο στατιστικό µοντέλο που εκφράζει την συνάρτηση πυκνότητας πιθανότητας. Κύρια σηµεία σε αυτή την τεχνική, που χρησιµοποιείται ευρύτατα σε διάφορες µεθόδους προβλέψεων, είναι η επιλογή της κατάλληλης συνάρτησης (γραµµική, πολυωνυµική, εκθετική) και η προσαρµογή των παραµέτρων της στα πραγµατικά δεδοµένα. Εάν έχει πραγµατοποιηθεί µια επιτυχηµένη παρεµβολή, µπορούµε να χρησιµοποιούµε αποκλειστικά το στατιστικό µοντέλο. Όπως προκύπτει και από τα παραπάνω, η επιλογή της κατάλληλης συνάρτησης που περιγράφει καλύτερα τα δεδοµένα έχει εξαιρετική σηµασία. Συνήθως χρησιµοποιούνται πολυωνυµικές συναρτήσεις ης (για ευκολία) ή 5 ης και 6 ης τάξης (για ακρίβεια). Στην πρώτη περίπτωση έχουµε υψηλό σφάλµα, ενώ στη δεύτερη µεγάλο υπολογιστικό κόστος. Αυτό που παραµένει όµως είναι το εξαιρετικά µικρό κόστος σε χώρο για την αποθήκευση του µοντέλου. Μια σηµαντική θεώρηση που πραγµατοποιείται στις παρεµβολές, είναι η ιδέα των outliers, των σηµείων δηλαδή που απέχουν αρκετά από το στατιστικό µοντέλο, και κατά συνέπεια δεν µπορούν να περιγραφούν ικανοποιητικά από αυτό. Προτιµούµε είτε να τα αγνοούµε εντελώς (στην στατιστική ανάλυση) είτε να τα αποθηκεύουµε µαζί µε τις παραµέτρους του µοντέλου. 2..5 SVD Singular Value Decomposition Επιχειρείται η προσέγγιση µιας κατανοµής µε την βοήθεια ενός µικρού αριθµού γραµµικών συναρτήσεων. Προέρχεται από την Γραµµική Άλγεβρα και Αριθµητική Ανάλυση, και στηρίζεται στη κατάλληλη επιλογή ενός αριθµού σηµείων της κατανοµής που θα αποτελέσουν τα άκρα των γραµµικών συναρτήσεων (threading). 2..6 Οµαδοποίηση Clustering (Parametric Modeling) Αποτελεί γενίκευση της παλινδρόµησης (και της SVD), όπου τα δεδοµένα δεν προσεγγίζονται από µία µόνο συνάρτηση, αλλά από το άθροισµα ενός συνόλου συναρτήσεων που έχουν το χαρακτηριστικό να επικεντρώνονται στην απεικόνιση µιας µόνο περιοχής (πχ Gaussian). Η µέθοδος της οµαδοποίησης χρησιµοποιείται ευρύτατα στη θεωρία Νευρωνικών 2

ικτύων, θέτοντας έτσι τις βάσεις και για µια καθαρόαιµη υλοποίηση νευρωνικού δικτύου που πραγµατοποιεί προβλέψεις κατά προσέγγιση (Clustering + Radial Basis Functions). Παρουσιάζει εξαιρετικό ενδιαφέρον, όπως επίσης και οι περισσότερες τεχνικές που αντικαθιστούν ολοκληρωτικά τα δεδοµένα µε ένα πιθανοτικό µοντέλο (probabilistic techniques). Πέρα από τις διαδεδοµένες εφαρµογές data analysis, µπορούν να υποστηρίξουν µε επιτυχία φορητές βάσεις δεδοµένων (ακόµη και σε ένα Pocket PC) καθώς α) καταλαµβάνουν πολύ µικρό χώρο στη µνήµη (~ΚΒ) β) περιγράφουν ολόκληρη τη βάση ή αντίστοιχα τον κύβο γ) δεν είναι ιδιαίτερα απαιτητικά σε υπολογιστικό φορτίο. Ενδιαφέρουσα είναι η επίδρασή τους στις διαδεδοµένες what-if εφαρµογές. Επιτυχηµένες µέθοδοι είναι οι BIRCH [ZRL96], που εισάγει την ιδέα της δυναµικής δηµιουργίας ενός CF-tree (cluster feature), CLARANS, που προοδευτικά βελτιώνει τα χαρακτηριστικά των clusters χρησιµοποιώντας heuristic µεθόδους, και η πρόσφατη εργασία των Compressed Data Cubes [SFB99]. 2..7 Wavelet Decomposition Τα wavelets είναι ένα µαθηµατικό εργαλείο που αποσκοπεί στην ιεραρχική αποσύνθεση συναρτήσεων. Η αρχική συνάρτηση αποσυντίθεται σε ένα άθροισµα βασικών όρων των οποίων το βάρος στον ακριβή σχηµατισµό της συνάρτησης ελαττώνεται σταθερά. Έτσι, είναι δυνατό να κρατήσουµε µόνο τους πρώτους 2 ή 3 όρους και να θεωρήσουµε πως η συνάρτησή µας προσεγγίζεται ικανοποιητικά. Η τεχνική αυτή είχε προκύψει από την Κυµατική Φυσική (wavelets=µικρά κύµατα) και την ανάλυση ενός κύµατος σε συνιστώσες σταθερά µειουµένου πλάτους, των οποίων η συχνότητα είναι πολλαπλάσιο (αρµονική) της κύριας συχνότητας. Τα πλεονεκτήµατά της είναι όµοια µε την τεχνική Clustering, ενώ έχει χρησιµοποιηθεί µε επιτυχία στην επεξεργασία εικόνας. Είναι σχετικά νέα µέθοδος, µε µεγάλο ενδιαφέρον. 2..8 Approximate Data Structures Για τον ταχύ υπολογισµό ενός aggregate, σχηµατίζεται µια δοµή δεδοµένων, που παρέχει άµεσα µια πρώτη, προσεγγιστική απάντηση. Για παράδειγµα, η ελάχιστη τιµή θα µπορούσε να προκύψει από µια ουρά προτεραιότητας που περιλαµβάνει τέτοιες ελάχιστες τιµές. 3

2..9 Υβριδικές µέθοδοι Σε αρκετές περιπτώσεις πραγµατοποιείται ένας συνδυασµός των παραπάνω µεθόδων. 2.2 Γενικές Παρατηρήσεις Κάθε µια τεχνική εµφανίζει συγκεκριµένα χαρακτηριστικά που την καθιστούν περισσότερο ή λιγότερο επιθυµητή για µια συγκεκριµένη εφαρµογή. Όµως ακόµη και σε ένα συγκεκριµένο πεδίο, η ίδια γενική λύση µπορεί να βελτιστοποιηθεί δραστικά για ένα συγκεκριµένο σκοπό (ένα γνωστό query). Μπορούµε ωστόσο να συγκρίνουµε τις διάφορες µεθόδους µέσα στο ειδικό πλαίσιο µιας εφαρµογής µε βάση τους µέσους όρους (και τις αποκλίσεις από αυτούς) των διαφόρων κριτηρίων βελτιστότητας. Τέτοια κριτήρια είναι: Η ταχύτητα εκτέλεσης (µέτρηση) Η ακρίβεια της απάντησης (σε σχέση µε την πραγµατική τιµή) Το διάστηµα εµπιστοσύνης και το εκτιµώµενο σφάλµα της απάντησης o Με βάση στατιστικές µεθόδους Κεντρικό Οριακό Θεώρηµα (CLT) Hoeffding bounds Chebychev bounds (ανισότητα) Chernof bounds o Εµπειρικά Subsampling - Chunking Πολλαπλή επανάληψη των µετρήσεων Η εκµετάλλευση χώρου σε σχέση µε την ακρίβεια της απάντησης (compression ratio) Πρέπει να σηµειωθεί ότι ένα κοινό γνώρισµα όλων ανεξαιρέτως των µεθόδων είναι η de yure αδυναµία τους να απαντήσουν σε queries µε µικρό selectivity (µικρότερο του %). Ενώ de facto, όσο αυξάνεται η επιλεκτικότητα, τόσο αυξάνεται και η ακρίβειά τους. Ένα ρεαλιστικό ελάχιστο µέγιστο σφάλµα (infimum) που µπορεί να επιτευχθεί από το σύνολο των τεχνικών είναι περίπου 5%, ανεξάρτητα µονοδιάστατου ή πολυδιάστατου περιβάλλοντος. 4

Επιπλέον, οι περισσότερες τεχνικές θέτουν συγκεκριµένους περιορισµούς για τον διαθέσιµο χώρο που θα καταλάβει η περίληψη των δεδοµένων. Συνήθως είναι της τάξης των KB, και σε κάθε περίπτωση 3-5 τάξεις µεγέθους µικρότερα από τα πραγµατικά δεδοµένα. Οι περιορισµοί ως προς τον διαθέσιµο χώρο επιβάλλονται από την ανάγκη αποθήκευσης των περιλήψεων (data summaries) στην κύρια µνήµη, ώστε να καθίσταται ταχύτατη η εκτίµηση του κόστους ενός query από τον query optimizer. Σε ένα OLAP περιβάλλον όµως, όπου εξ ορισµού έχουµε χαµηλή κανονικοποίηση και πολλά δεδοµένα (GB, TB), δεν υπάρχουν έτσι κι αλλιώς εναλλακτικά πλάνα εκτέλεσης. Κυρίως µας ενδιαφέρει (Decision Support και Data Mining) η ταχύτατη απάντηση ενός query. Επιπλέον, ενδιαφέρουσες εφαρµογές αποτελούν η off-line απάντηση ενός query χρησιµοποιώντας µόνο τις περιλήψεις. Σε αυτό το πλαίσιο συναντάµε την ιδέα του cube operator, που στην ουσία είναι µια µέθοδος προϋπολογισµού aggregate queries. Το κύριο χαρακτηριστικό της είναι ότι συνήθως συµπεριφέρεται ως µη απωλεστικός αλγόριθµος συµπίεσης των δεδοµένων που υπάρχουν στις relations του OLAP περιβάλλοντος. 2.3 Συµπεράσµατα Με βάση τα όσα µελετήσαµε στην εκτενή βιβλιογραφία, επιλέξαµε να επικεντρώσουµε το ενδιαφέρον της µελέτης µας στις µεθόδους προσεγγιστικής απάντησης ερωτήσεων που στηρίζονται στα ιστογράµµατα και τον wavelet µετασχηµατισµό. Στην απόφαση αυτή καταλήξαµε για δύο κυρίως λόγους. Πρώτον, τα ιστογράµµατα αποτελούν την πλέον διαδεδοµένη, σε πραγµατικά συστήµατα, µέθοδο για την συγκέντρωση στατιστικών χαρακτηριστικών των κατανοµών των δεδοµένων. Εξασφαλίζουν καλές επιδόσεις και έχουν παρουσιαστεί και αναλυθεί εκτενώς στην αντίστοιχη βιβλιογραφία και θα αποτελέσουν αξιόπιστο µέτρο σύγκρισης της δεύτερης µεθόδου. εύτερον, οι επιδόσεις των τεχνικών που στηρίζονται στον WT είναι αντίστοιχες των ιστογραµµάτων, και εξαιρετικά καλύτερες για µεγάλο αριθµό διαστάσεων. εδοµένης της σύντοµης ζωής αυτών των µεθόδων και της ταυτόχρονης επιτυχίας του σε τόσο σύντοµο χρονικό διάστηµα, µοιάζουν εξαιρετικά ελκυστικές και υποσχόµενες για το µέλλον. Στα επόµενα κεφάλαια θα παρουσιαστούν ανεξάρτητα η θεωρητική θεµελίωση και πειραµατική αξιολόγηση των δύο µεθόδων. Στο 9ο κεφάλαιο θα επιχειρήσουµε, κατά το δυνατόν, τη µεταξύ τους σύγκριση. 5

6

3 Ιστογράµµατα Το κεφάλαιο αυτό αποτελεί µία γενική εισαγωγή στη θεωρία των ιστογραµµάτων. Αρχικά γίνεται µία σύντοµη παρουσίαση της χρησιµότητας τους, και δίνονται οι ορισµοί των κυριότερων εννοιών που θα µας απασχολήσουν. Ακολουθεί η παρουσίαση των κυριότερων µονοδιάστατων και πολυδιάστατων ιστογραµµάτων, του τρόπου κατασκευής και συντήρησής τους. 3. Γενικά Στη βιβλιογραφία έχουν κατά καιρούς προταθεί διάφορες τεχνικές για την προσέγγιση των κατανοµών δεδοµένων µίας βάσης. Αυτές γενικά µπορούν να ταξινοµηθούν σε τρεις κατηγορίες: Parametric Sampling 7

Histograms Οι παραµετρικές τεχνικές (parametric βλ. [Sel79]) προσεγγίζουν την κατανοµή δεδοµένων µε τη βοήθεια µίας µαθηµατικής συνάρτησης η οποία έχει ένα πεπερασµένο πλήθος ανεξάρτητων παραµέτρων, όπως για παράδειγµα οι σταθερές ενός πολυωνύµου ή η µέση τιµή και η διασπορά στη κανονική κατανοµή. Οι τιµές των παραµέτρων µεταβάλλονται κατάλληλα ώστε η συνάρτηση να ταιριάζει όσο το δυνατόν περισσότερο µε την πραγµατική κατανοµή. Αν κάτι τέτοιο είναι εφικτό, προκύπτει µία πολύ µικρή και ακριβής προσέγγιση της αρχικής κατανοµής. υστυχώς όµως, τις περισσότερες φορές η κατανοµή των δεδοµένων δεν είναι πάντα εκ των προτέρων γνωστή και κατά συνέπεια η επιλογή του κατάλληλου µαθηµατικού µοντέλου είναι δύσκολη. Για το λόγο αυτό συνήθως χρησιµοποιείται ένα πολυώνυµο και εφαρµόζεται η τεχνική των ελαχίστων τετραγώνων προκειµένου να βρεθούν οι σταθερές αυτού, που ελαχιστοποιούν το συνολικό σφάλµα. Επιπλέον, µε τη βοήθεια ανατροφοδότησης (feedback) των αποτελεσµάτων των ερωτήσεων, είναι δυνατόν οι σταθερές του πολυωνύµου να ενηµερώνονται για τυχών αλλαγές στην κατανοµή δεδοµένων. Όµως και η λύση µε τη χρήση πολυωνύµων δεν είναι πολλές φορές αρκετή, αφού µπορεί να εµφανιστούν στα αποτελέσµατα των προσεγγίσεων αρνητικές συχνότητες κάτι που είναι αδύνατο. Τέλος, στο σχήµα φαίνεται η προσέγγιση µίας συνεχούς κατανοµής µε ένα πολυώνυµο τετάρτου βαθµού. Frequency Continuous Distribution Πολυώνυµο 4 ου βαθµού Attribute Values Σχήµα : Προσέγγιση τυχαίας συνεχούς κατανοµής από ιστόγραµµα και πολυώνυµο 4 ου βαθµού Η τεχνικές δειγµατοληψίας (sampling βλ. [GM98]) εξάγουν εκτιµήσεις µε τη βοήθεια τυχαίων δειγµάτων από τα ίδια τα δεδοµένα. εδοµένου όµως ότι η διεξαγωγή της δειγµατοληψίας κατά την εκτέλεση µίας ερώτησης έχει υψηλό κόστος, συνήθως κατασκευάζονται και συντηρούνται περιλήψεις των δεδοµένων εκ των προτέρων. Οι τεχνικές αυτού του είδους έχουν το πλεονέκτηµα ότι δίνουν µικρά σφάλµατα και παρέχουν στατιστικές εγγυήσεις για την ακρίβεια των αποτελεσµάτων τους (π.χ. άνω φράγµα για το σφάλµα εντός κάποιου διαστήµατος εµπιστοσύνης). Ωστόσο, απαιτούν πολύ περισσότερο αποθηκευτικό χώρο από ότι οι τεχνικές που περιγράφονται παρακάτω (0% - 20% του όγκου των πραγµατικών δεδοµένων), γεγονός που καθιστά τη χρήση τους µη πρακτική. 8

Τα ιστογράµµατα αποτελούν την πιο διαδεδοµένη από τις παραπάνω τεχνικές. Γενικά ένα ιστόγραµµα προσεγγίζει την κατανοµή συχνοτήτων ενός πεδίου (attribute) µίας σχέσης (relation) οµαδοποιώντας τις τιµές του πεδίου σε ξένα µεταξύ τους υποσύνολα (buckets) και εν συνεχεία να προσεγγίζοντας τις πραγµατικές τιµές και τις αντίστοιχες συχνότητές σε κάθε bucket µε τη βοήθεια στατιστικών στοιχείων που αποθηκεύονται σε αυτό. Στα σχήµατα και 2 απεικονίζονται δύο παραδείγµατα ιστογραµµάτων µίας διάστασης, ένα για συνεχή Frequency Discrete Distribution Attribute Values Σχήµα 2: Προσέγγιση διακριτής κατανοµής από ιστόγραµµα (continuous) και ένα για διακριτή (discrete) κατανοµή δεδοµένων. Στην ανάλυση που ακολουθεί, παρόλο που τα πεδία τιµών των διαφόρων attributes µπορεί να είναι συνεχή, οι κατανοµές συχνοτήτων είναι διακριτές και σε αυτές επικεντρώνεται το ενδιαφέρον µας. Τα ιστογράµµατα γενικά συγκεντρώνουν τα εξής επιθυµητά χαρακτηριστικά : Η χρήση τους συνεπάγεται πολύ µικρή επιβάρυνση στη συνολική απόδοση του συστήµατος Τα πραγµατικά δεδοµένα δε χρειάζεται να ακολουθούν κάποια συγκεκριµένη στατιστική κατανοµή Προσφέρουν ικανοποιητική ακρίβεια, ενώ ταυτόχρονα έχουν µικρές απαιτήσεις σε χώρο αποθήκευσης. Κύριο µειονέκτηµα το ιστογραµµάτων (όπως θα φανεί από τα παρακάτω) είναι ότι το σφάλµα αυξάνει σηµαντικά µε την αύξηση των διαστάσεων. Παρακάτω θα ασχοληθούµε µε τα εξής θέµατα : Ορισµοί - Συµβολισµοί Μονοδιάστατα ιστογράµµατα Επέκταση θεωρίας ιστογραµµάτων σε περισσότερες της µίας διαστάσεων 9

Επέκταση ιστογραµµάτων και χρήση αυτών για την εξαγωγή προσεγγιστικών απαντήσεων Μέθοδοι κατασκευής και δυναµικής ενηµέρωσης ιστογραµµάτων Τέλος σηµειώνουµε ότι τα ιστογράµµατα αρχικά χρησιµοποιήθηκαν κυρίως για την εκτίµηση της επιλεκτικότητας (selectivity) των διαφόρων σχεσιακών τελεστών (select σ { a, project π { A}, join R { } >< { R A R B} R B, κτλ.) και της κατανοµής δεδοµένων του αποτελέσµατος A.. { } ενός ερωτήµατος. Ωστόσο, οι νέοι τύποι ιστογραµµάτων, λόγω του µικρού σφάλµατός τους, µπορούν να χρησιµοποιηθούν εξίσου αποδοτικά και για την προσεγγιστική απάντηση ερωτήσεων. = 2 A } 3.2 Ορισµοί Οι συµβολισµοί και ορισµοί που χρησιµοποιούµε προέρχονται από την αντίστοιχη δηµοσίευση των Poosala και Ιωαννίδη [PI97]. Ορίζουµε, λοιπόν, ως πεδίο ορισµού D (domain) ενός πεδίου Χ (attribute) µίας σχέσης R το σύνολο όλων των δυνατών τιµών του X και ως πεδίο τιµών V ( value set V D) το σύνολο των τιµών του Χ που εµφανίζονται στην R. Το σύνολο D είναι άπειρο και µη αριθµήσιµο, ωστόσο το V είναι πεπερασµένο και αριθµήσιµο. Έστω λοιπόν ότι V = { ui i D} : και ότι u i < u j για i < j. Υπάρχει δηλαδή µία σχέση ολικής διάταξης για τα στοιχεία του V. Ορίζουµε το spread s i για το u i ως s [ ) = u + u : i D ( για i = D θέτουµε = ). Η συχνότητα f ( frequency ) του u i i i, s D ορίζεται ως το πλήθος των tuples R για τα οποία ισχύει t. X = ui. Η περιοχή a i (area) του ορίζεται ως το γινόµενο της συχνότητας f και του spread si. Η αθροιστική u i συχνότητα (cumulative frequency) του u ορίζεται ως το πλήθος των tuples R για τα c i i i i i οποία ισχύει t. X, δηλαδή ισχύει c i = f. Η κατανοµή δεδοµένων u i j j= j T ( data distribution) του X στο R ορίζεται ως το σύνολο των ζευγών T = {( ui, f),( ui, f 2 ), ( ui, f3 ),...,( u i, f D )}. Οµοίως η αθροιστική κατανοµή δεδοµένων T C ( cumulative data distribution) του X στο R ορίζεται ως το σύνολο των ζευγών T = ( u c ), ( u, c ), ( u, ),...,( u, )}. Τέλος η εκτεταµένη αθροιστική κατανοµή { i, i 2 i c 3 δεδοµένων + T c i c D ( extended cumulative data distribution) του X στο R είναι η επέκταση της 20

T C σε όλο το πεδίο ορισµού, όπου θεωρούµε µηδενικό f για κάθε u το οποίο ανήκει στο D V. Προκειµένου οι παραπάνω ορισµοί να γίνουν πιο κατανοητοί στο σχήµα 3 δίνεται µία τυχαία κατανοµή δεδοµένων και τα αντίστοιχα µεγέθη που ορίστηκαν παραπάνω, καθώς και µία γραφική απεικόνιση αυτής. Value 0 20 45 50 72 80 00 Frequency 5 2 25 5 7 8 20 i i Spread s i = u + u 0 25 5 2 8 20 i i Area a i = f s 50 50 25 80 56 60 20 i i Cumulative Frequency c i = j j= f j 5 7 32 47 54 62 82 f s 6 u Σχήµα 3: Τυχαία διακριτή κατανοµή δεδοµένων και πίνακας παραµέτρων αυτής 3.3 Ταξινόµηση Ιστογραµµάτων Ορισµός Μονοδιάστατων Ιστογραµµάτων [PI97] : Ένα ιστόγραµµα H πάνω στο πεδίο X της σχέσης R, ορίζεται ως µία διαµέριση της κατανοµής δεδοµένων Τ του Χ σε β ( ) ξένα µεταξύ τους υποσύνολα (buckets) και τη προσέγγιση των πραγµατικών τιµών και των αντίστοιχων συχνοτήτων τους σε κάθε υποσύνολο µε µία κοινή για όλα τα υποσύνολα µέθοδο. Τα όρια των υποσυνόλων προσδιορίζονται από ένα κανόνα διαµέρισης, που στόχο έχει την ελαχιστοποίηση της απόκλισης µεταξύ της προσεγγιστικής κατανοµής που προκύπτει από την πραγµατική Προκειµένου να ταξινοµήσουµε τις διάφορες κλάσεις ιστογραµµάτων χρησιµοποιούµε τις παρακάτω παραµέτρους, η σηµασία των οποίων ερµηνεύεται αναλυτικότερα στην επόµενη ενότητα : 2

Partition class: Προσδιορίζει την ιδιαίτερη τάξη στην οποία ανήκει ένα ιστόγραµµα. Partition Constraint: Ο µαθηµατικός περιορισµός, η εφαρµογή του οποίου πάνω στις sort και source παραµέτρους ορίζει µοναδικά ένα ιστόγραµµα εντός µίας συγκεκριµένης τάξης. Sort parameter: Η παράµετρος αυτή προκύπτει από την κατανοµή δεδοµένων Τ. Συνήθως ως sort parameter χρησιµοποιούνται οι τιµές u, f και a. Source parameter: Η παράµετρος αυτή προκύπτει από την κατανοµή δεδοµένων Τ. Συνήθως ως source parameter χρησιµοποιούνται οι τιµές f, c και a. i i i i i i Εκτός από τις παραπάνω παραµέτρους ένα ιστόγραµµα χαρακτηρίζεται από τις εξής δύο ιδιότητες : Μέθοδος προσέγγισης των πραγµατικών τιµών σε ένα bucket. Μέθοδος προσέγγισης της πραγµατικής συχνότητας κάθε τιµής που βρίσκεται σε ένα bucket Οι τελευταίες δύο παράµετροι καθορίζουν την πληροφορία η οποία ουσιαστικά αποθηκεύεται για κάθε bucket. 3.3. Sort & Source Parameters Η sort παράµετρος προκύπτει από την κατανοµή δεδοµένων Τ και µπορεί να είναι µία από τις παραµέτρους s, f, c ή a που ορίστηκαν στην ενότητα 3.2. Όλα τα στοιχεία της κατανοµής Τ ταξινοµούνται βάσει της sort παραµέτρου που τους έχει αντιστοιχιστεί πριν από την εκτέλεση της διαµέρισης. Οµοίως, η source παράµετρος προκύπτει και αυτή από την κατανοµή Τ και είναι συνήθως µία εκ των f, c ή a. Η source παράµετρος είναι το µέγεθος πάνω στο οποίο εφαρµόζεται ο κανόνας διαµέρισης για τον υπολογισµό των ορίων των buckets. i i i i Η επιλογή των sort και source παραµέτρων ενός ιστογράµµατος επηρεάζει άµεσα την ακρίβειά του. Η χρήση των u και s δίνει καλή προσέγγιση του πεδίου τιµών, ενώ των i i i i i fi και c i των συχνοτήτων της κατανοµής Τ. Ωστόσο, στόχος ενός ιστογράµµατος είναι η 22

προσέγγιση τόσο των τιµών όσο και των συχνοτήτων τους, δηλαδή ολόκληρης της κατανοµής Τ. Έτσι λοιπόν οι χρησιµοποιούµενες παράµετροι θα πρέπει να απεικονίζουν αποδοτικά το συνδυασµό τιµής και αντίστοιχης συχνότητας. Η παράµετρος που εξυπηρετεί αποδοτικότερα ένα τέτοιο σκοπό είναι η περιοχή a i (area). 3.3.2 Partition Class Οι τάξεις ιστογραµµάτων συνήθως καθορίζουν περιορισµούς στον αριθµό των στοιχείων της κατανοµής Τ, ο οποίος αντιστοιχίζεται σε κάθε bucket. Ο κυριότερες τάξεις ιστογραµµάτων είναι : Serial: Στα ιστογράµµατα αυτά κάθε bucket αποτελείται από ένα υποσύνολο στοιχείων της κατανοµής Τ τα οποία είναι διατεταγµένα ως προς την sort παράµετρο και δεν επικαλύπτεται µε κανένα άλλο bucket. εν τίθεται κανένας περιορισµός ως προς το πλήθος των στοιχείων σε κάθε bucket. Biased: Τα ιστογράµµατα αυτά περιέχουν τουλάχιστον ένα bucket το οποίο δεν είναι singleton 2, δηλαδή, περιέχει τουλάχιστον δύο στοιχεία της κατανοµής Τ. End Biased: Σε αντίθεση µε την προηγούµενη περίπτωση στα ιστογράµµατα αυτά όλα τα buckets, εκτός από ένα, είναι singleton. Παρατηρώντας τους παραπάνω ορισµούς, προκύπτει ότι η τάξη των Serial ιστογραµµάτων είναι γενικότερη από όλες τις άλλες και περικλείει αυτές των Biased και End Biased. Οµοίως τα Biased είναι πιο γενικά από τα End Biased τα οποία και περικλείουν. Οι σχέσεις µεταξύ τω διαφόρων τάξεων ιστογραµµάτων φαίνονται στο σχήµα 4. Serial Biased End Biased Σχήµα 4: Σχέσεις µεταξύ των διαφόρων τάξεων ιστογραµµάτων Τα serial ιστογράµµατα προσφέρουν γενικότερα µεγαλύτερη ακρίβεια, ενώ τα biased µεγαλύτερη εξοικονόµηση αποθηκευτικού χώρου. 2 Singleton bucket είναι ένα υποσύνολο της κατανοµής δεδοµένων µε ένα µόνο στοιχείο αυτής. 23