8 Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση  Πλεονασμός δεδομένων  Συναρτησιακές εξαρτήσεις  Κλειστότητα συναρτησιακών εξαρτήσεων  Κανονικές μορφές.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ ΜΑΘΗΜΑ 5.
Advertisements

ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ 2 ΜΑΘΗΜΑ 4.
Κανονικές Μορφές Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΓΡΑΜΜΑΤΙΚΕΣ ΧΩΡΙΣ ΣΥΜΦΡΑΖΟΜΕΝΑ I
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση.
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΙΚΑ ΖΗΤΗΜΑΤΑ.
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 2. ΣΧΕΣΙΑΚΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ • Μια σχεσιακή ΒΔ καταγράφει δεδομένα μέσα σε σχέσεις (πίνακες). • Μια πραγματική οντότητα γίνεται.
Δρ. Παναγιώτης Συμεωνίδης
Κεφάλαιο 2ο Πεπερασμένα αυτόματα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Συναρτησιακές εξαρτήσεις
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 3.
ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ ΜΑΘΗΜΑ 4.
8 Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση  Πλεονασμός δεδομένων  Συναρτησιακές εξαρτήσεις  Κλειστότητα συναρτησιακών εξαρτήσεων  Κανονικές μορφές.
ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ (Normalization)
ανώτερες κανονικές μορφές
Βάσεις Δεδομένων Ι Ενότητα 9: Πρόσθετη κανονικοποίηση: κανονικές μορφές 1 η, 2 η, 3 η και ΚΜ-BC Γεωργία Γκαράνη Επίκουρος Καθηγήτρια Τμήμα Μηχανικών Πληροφορικής.
Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση
Δημιουργία Σχεσιακού μοντέλου από ERD
31 Μαρτίου 2015 ΔΙΑΦΑΝΕΙΑ 1 ΤΥΠΙΚΕΣ ΜΕΘΟΔΟΙ ΑΝΑΛΥΣΗΣ ΣΥΣΤΗΜΑΤΩΝ ΤΜ. ΠΛΗΡΟΦΟΡΙΚΗΣ Α.Π.Θ. – ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ ΚΑΤΗΓΟΡΗΜΑΤΙΚΟΣ ΛΟΓΙΣΜΟΣ Ι Για τον προτασιακό.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Λογικός Σχεδιασμός.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Κανονικές Μορφές.
ΜΑΘΗΜΑ: ΣΧΕΔΙΑΣΗ ΑΛΓΟΡΙΘΜΩΝ ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ Παρασκευή, 3 Απριλίου 2015Παρασκευή, 3 Απριλίου 2015Παρασκευή, 3 Απριλίου 2015Παρασκευή, 3 Απριλίου 2015Τμ.
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Συναρτησιακές Εξαρτήσεις.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Συναρτησιακές Εξαρτήσεις.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Κανονικοποίηση Σχήματος.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεδιασμός μιας ΒΔ ανάλυση ποιας πληροφορίας και της σχέσης ανάμεσα στα στοιχεία της περιγραφή.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεδιασμός μιας ΒΔ ανάλυση ποιας πληροφορίας και της σχέσης ανάμεσα στα στοιχεία της περιγραφή.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Κανονικοποίηση Σχήματος.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Κανονικές Μορφές.
Βάσεις Δεδομένων Κανονικοποιήσεις. Σχεδιασμός Σχεσιακού Σχήματος Ένα σχεσιακό σχήμα για να είναι «καλά σχεδιασμένο» πρέπει να πληρούνται κάποιες προϋποθέσεις.
Βάσεις Δεδομένων Ενότητα 6: Κανονικοποίηση Αθανάσιος Σπυριδάκος
Κανονικοποίηση, συναρτησιακές εξαρτήσεις
Κεφάλαιο 7 Εισαγωγή στις βάσεις δεδομένων ISBN Εισαγωγή Η θεωρία της κανονικοποίησης υποστηρίζει την εύρεση της πλέον κατάλληλης εννοιολογικής.
ΣΥΣΤΗΜΑΤΑ ΑΥΤΟΜΑΤΟΥ ΕΛΕΓΧΟΥ Ι 7 η Διάλεξη Η ΜΕΘΟΔΟΣ ΤΟΥ ΓΕΩΜΕΤΡΙΚΟΥ ΤΟΠΟΥ ΡΙΖΩΝ  Ορισμός του γεωμετρικού τόπου ριζών Αποτελεί μια συγκεκριμένη καμπύλη,
ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ανδρέου Βασίλης.
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Δυναμικός Κατακερματισμός
Εφαρμογή Κανονικοποίησης
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Συναρτησιακές Εξαρτήσεις
Βάσεις Δεδομένων και web-based Εφαρμογές
Κανονικοποίηση ΤΙ ΕΙΝΑΙ ; Τεχνική Διαδικασία
Κανονικοπηση(normalization)
Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση
Κανονικοποίηση 1η, 2η και 3η Κανονική Μορφή
Σχεσιακεσ βασεισ δεδομενων
ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ
Ερωτήματα Επιλογής σε ACCESS
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Ενότητα 5: Σχεδίαση βάσεων δεδομένων - Κανονικοποίηση Χ. Σκουρλάς
Μεταγράφημα παρουσίασης:

8 Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση  Πλεονασμός δεδομένων  Συναρτησιακές εξαρτήσεις  Κλειστότητα συναρτησιακών εξαρτήσεων  Κανονικές μορφές

2 Με την κανονικοποίηση οι σχέσεις απλοποιούνται ώστε να εξαλειφθεί ο πλεονασμός των δεδομένων. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση Κανονικοποίηση (normalization)

3 Πλεονασμός δεδομένων Ο πλεονασμός δεδομένων (data redundancy) ευθύνεται για τα εξής προβλήματα: –πρόβλημα ενημέρωσης δεδομένων, –πρόβλημα διαγραφής δεδομένων, και –πρόβλημα εισαγωγής δεδομένων. Για την αποφυγή πλεονασμού οι πίνακες τεμαχίζονται. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

4 Συναρτησιακές εξαρτήσεις Μία συναρτησιακή εξάρτηση μεταξύ X και Y συμβολί- ζεται με X  Y και ορίζει έναν περιορισμό ως προς τις τιμές των χαρακτηριστικών. Λέγεται ότι το σύνολο χαρακτηριστικών Y είναι συναρτησιακά εξαρτώμενο (functional dependent) από το σύνολο X. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

5 Συναρτησιακές εξαρτήσεις Αν δύο πλειάδες έχουν ίδιες τιμές στα χαρακτηριστικά του συνόλου X, τότε θα έχουν ίδιες τιμές και στα χαρακτηριστικά του συνόλου Y. Σε ένα σύνολο χαρακτηριστικών μπορεί να υπάρχουν τετριμμένες (trivial) συναρτησιακές εξαρτήσεις (πχ. ΑΦΜ, Όνομα  Όνομα) αλλά και άλλες που μπορούν να συναχθούν. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

6 Αξιώματα Armstrong 1.ανακλαστικός (reflexive) κανόνας : αν Y  X, τότε X  Y. 2.επαυξητικός (augmentation) κανόνας: αν X  Y, τότε XZ  YZ. 3.μεταβατικός (transitive) κανόνας: αν X  Y και Y  Z, τότε X  Z. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

7 Άλλοι Κανόνες παραγωγής συναρτησιακών εξαρτήσεων 4. κανόνας ένωσης (union): αν X  Y και X  Z, τότε X  Y Z. 5. κανόνας διάσπασης (decomposition): αν X  YZ, τότε X  Y και X  Z. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

8 Παράδειγμα εφαρμογής κανόνων παραγωγής ΣΕ Δίνεται πίνακας R με τα χαρακτηριστικά W, U, V, X, Y, Z και οι συναρτησιακές εξαρτήσεις: W  UV, U  Y, VX  YZ. Ζητείται να αποδειχθεί ότι ισχύει: WX  Z. Λύση: 1. Mε διάσπαση από τη W  UV προκύπτει W  V. 2.Με επαύξηση προκύπτει WX  VX. 3.Με μεταβατικότητα προκύπτει WX  YZ. 4.Με διάσπαση προκύπτει WX  Z. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

9 Κλειστότητα συναρτησιακών εξαρτήσεων Το σύνολο των συναρτησιακών εξαρτήσεων που μπορούν να παραχθούν από ένα σύνολο εξαρτήσεων F λέγεται κλειστότητα (closure) και συμβολίζεται με F +. Ο προσδιορισμός του συνόλου κλειστότητας F + είναι δαπανηρός αλγοριθμικά ακόμη και για μικρό σύνολο εξαρτήσεων F Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

10 Κλειστότητα συνόλου χαρακτηριστικών Κλειστότητα του συνόλου χαρακτηριστικών X (attribute closure), ως προς το σύνολο των συναρτη- σιακών εξαρτήσεων F, είναι το σύνολο των χαρακτη- ριστικών που είναι συναρτησιακά εξαρτώμενα από το σύνολο των χαρακτηριστικών X και το συμβολίζουμε με X +. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

11 Αλγόριθμος εύρεσης κλειστότητας συνόλου χαρακτηριστικών X Δίνεται πίνακας R και οι συναρτησιακές εξαρτήσεις F + μεταξύ των πεδίων του πίνακα. Να βρεθεί η κλειστότητα του χαρακτηριστικού Α. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

12 Παράδειγμα 1 Δίνεται πίνακας R (V, Y, Z, W) και το F + = {V  Z, VZ  W, W  Y, VY  W} Να βρεθεί η κλειστότητα του χαρακτηριστικού V Λύση: Βήμα 1ο: X=V. Βήμα 2ο: X=VZ λόγω της V  Z. Βήμα 3ο: X=VZW λόγω της VZ  W. Βήμα 3ο: X=VZWY λόγω της W  Y. Βήμα 3ο: Δεν μπορούν να γίνουν άλλες επαναλήψεις. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

13 Δίνεται πίνακας R ( V, Y, Z, W) και το F + = {V  Υ, W  Y, V  W} Να βρεθεί η κλειστότητα του χαρακτηριστικού V Λύση: Βήμα 1ο: X=V. Βήμα 2ο: X=VY λόγω της V  Y. Βήμα 3ο: X=VYW λόγω της V  W. Βήμα 3ο: Δεν μπορούν να γίνουν άλλες επαναλήψεις. MΠΟΡΕΙ ΝΑ ΓΙΝΕΙ ΥΠΟΨΗΦΙΟ ΠΡΩΤΕΥΟΝ ΚΛΕΙΔΙ ΤΟ V ? Παράδειγμα 2 Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

14 Έστω ότι μας δίνεται ένας πίνακας R και οι εξαρτήσεις F + μεταξύ των πεδίων του. Πώς βρίσκουμε τα υποψήφια κλειδιά? Βήμα 1ο: Βρες τα χαρακτηριστικά που δεν εμφανίζονται ούτε στην αριστερή, ούτε στην δεξιά πλευρά μιας συναρτησιακής εξάρτησης. Βήμα 2ο: Βρες τα χαρακτηριστικά που εμφανίζονται μόνο στη δεξιά πλευρά. Βήμα 3ο: Βρες τα χαρακτηριστικά που εμφανίζονται μόνο στην αριστερή πλευρά. Βήμα 4ο: Συνδύασε τα χαρακτηριστικά του βήματος 1 & 3. Βήμα 5ο: Βρες την κλειστότητα των χαρακτηριστικών του βήματος 4. Αν σε αυτήν ανήκουν όλα τα υπόλοιπα χαρακτηριστικά τότε είναι υποψήφιο κλειδί. Διαφορετικά, επανέλαβε τα βήματα 4 & 5 προσαρτώντας κάθε φορά ένα χαρακτηριστικό που δεν συμπεριλαμβάνεται στο βήμα 2 & 4. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

15 Παράδειγμα 1 (Εύρεση υποψηφίων κλειδιών) Έστω R=(A,B,C,D,E,F,G) μία σχέση και F={AB -> F, AD -> E, F -> G} ένα σύνολο εξαρτήσεων στη σχέση αυτή. Βρείτε ένα υποψήφιο κλειδί στην R. Λύση: Βήμα 1ο: C. Βήμα 2ο: EG. Βήμα 3ο: ABD. Βήμα 4ο: ABCD. Βήμα 5ο: Η κλειστότητα του συνόλου χαρακτηριστικών του βήματος 4 είναι το ABCDFΕG. Άρα το ABCD είναι υποψήφιο κλειδί. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

16 Παράδειγμα 2 (Εύρεση υποψηφίων κλειδιών) Έστω R=(A,B,C,D) μία σχέση και F={ABC-> D, D -> A} ένα σύνολο εξαρτήσεων στη σχέση αυτή. Βρείτε ένα υποψήφιο κλειδί στην R. Λύση: Βήμα 1ο: -. Βήμα 2ο: -. Βήμα 3ο: BC. Βήμα 4ο: BC. Βήμα 5ο: Η κλειστότητα του BC είναι το BC. H κλειστότητα του ABC είναι το ABCD. Άρα το ΑBC είναι υποψήφιο κλειδί. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

17 Κανονικοποίηση Η κανονικοποίηση (normalization) είναι μία διαδικασία όπου μη ικανοποιητικά σχήματα διασπώνται σε μικρότερα σχήματα με επιθυμητά χαρακτηριστικά. Η κανονικοποίηση επιτυγχάνεται η εξάλειψη των ανωμαλιών κατά την εισαγωγή, διαγραφή, ενημέρωση. Οι κανονικές μορφές παρέχουν: –ένα μεθοδολογικό πλαίσιο για ανάλυση σχημάτων με βάση τα κλειδιά και τις συναρτησιακές εξαρτήσεις. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

18 Η πρώτη κανονική μορφή – 1KM (first normal form – 1NF ) είναι κρίσιμη για το σχεσιακό μοντέλο, ενώ οι υπόλοιπες είναι προαιρετικές. Αν ένας πίνακας βρίσκεται σε μια κανονική μορφή τότε βρίσκεται και σε όλες τις προηγούμενες. Κανονικές μορφές Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

19 Βασικά ζητήματα κανονικοποίησης Η 2KM, η 3KM και η κανονική μορφή Boyce-Codd (BCNF) βασίζονται στις συναρτησιακές εξαρτήσεις μεταξύ των κλειδιών (πρωτεύοντα ή υποψήφια). Οι ανώτερες κανονικές μορφές (4KM, 5KM) βασίζονται στις πλειονότιμες (multivalued) εξαρτήσεις και στις εξαρτήσεις σύνδεσης (join). Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

20 Πρώτη κανονική μορφή 1.Η 1ΚΝ θεωρείται τμήμα του τυπικού ορισμού μίας σχέσης και ορίζει ότι τα χαρακτηριστικά περιλαμ- βάνουν μόνο ατομικές (απλές, αδιαίρετες) τιμές. 2.Κάθε εγγραφή πρέπει να είναι μοναδική. Αυτό το διασφαλίζει το πρωτεύον κλειδί. 3.Δεν υπάρχουν σύνθετα χαρακτηριστικά 4.Δεν υπάρχουν χαρακτηριστικά πολλαπλών τιμών. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

21 Πρώτη κανονική μορφή - Παράδειγμα ΟΝΟΜΑ_ΤΜΚΩΔ_ΤΜΔΙΕΥΘΥΝΤΗΣΤΟΠΟΘΕΣΙΕΣ_ΤΜ Έρευνα {Αθήνα, Πάτρα, Τρίπολη} Διοίκηση {Τρίπολη} Πωλήσεις {Αθήνα} ΟΝΟΜΑ_ΤΜΚΩΔ_ΤΜΔΙΕΥΘΥΝΤΗΣΤΟΠΟΘΕΣΙΕΣ_ΤΜ Έρευνα Αθήνα Έρευνα Πάτρα Έρευνα Τρίπολη Διοίκηση Τρίπολη Πωλήσεις Αθήνα. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

22 Πλήρης συναρτησιακή εξάρτηση Μία συναρτησιακή εξάρτηση Χ  Υ καλείται πλήρης (full) όταν  Α  X: X–{A} ↛ Y, αλλιώς καλείται μερική (partial). Έστω το επόμενο σχήμα σε 1ΚΜ: όπου Υπάρχουν προβλήματα κατά το χειρισμό. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

23 Δεύτερη κανονική μορφή Ένας πίνακας που είναι σε 1ΚΜ είναι και σε 2ΚΜ όταν ισχύει οποιοδήποτε από τα εξής: –το πρωτεύον κλειδί αποτελείται από ένα και μόνο χαρακτηριστικό, –ο πίνακας δεν έχει χαρακτηριστικά που δεν ανήκουν στο κλειδί (all-key relation), ή –κάθε χαρακτηριστικό που δεν είναι κλειδί, είναι πλήρως συναρτησιακά εξαρτώμενο από το πρωτεύον κλειδί. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

24 Κανονικοποίηση σε 2ΚΜ Με βάση τα προηγούμενα, το προηγούμενο σχήμα πρέπει να διασπασθεί σε απλούστερα σχήματα ως εξής: Παρατηρούμε ότι ο πλεονασμός δεδομένων μειώθηκε αλλά δεν εξαλείφθηκε (πχ. επανάληψη του ονόματος ενός κτιρίου κάθε φορά που γίνεται ένα μάθημα). Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

25 Μεταβατική εξάρτηση και 3ΚΜ Μία συναρτησιακή εξάρτηση Χ  Υ λέγεται μεταβατική (transitive) αν υπάρχει σύνολο χαρακτηριστικών Ζ που είναι εκτός κλειδιού της R και ισχύουν Χ  Ζ και Ζ  Υ. Αν υπάρχει μεταβατική εξάρτηση, το εξαρτώμενο χαρακτηριστικό μεταφέρεται σε νέα σχέση μαζί με το χαρακτηριστικό που το προσδιορίζει συναρτησιακά. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

26 Κανονικοποίηση σε 3ΚΜ Στο προηγούμενο σχήμα έχουμε τις εξαρτήσεις: –αριθ_μαθήματος  αριθ_κτιρίου, και –αριθ_κτιρίου  όνομα_κτιρίου. που αποτελούν μία μεταβατική εξάρτηση. Προκύπτει το νέο σχήμα: Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

27 Κανονική μορφή Boyce-Codd Η BCNF επιβάλλει σε κάθε εξάρτηση X  Y το σύνολο X να αποτελεί είτε πρωτεύον κλειδί είτε εναλλακτικό κλειδί. Για να προσδιορίσουμε αν ένας πίνακας βρίσκεται σε BCNF αρκεί να εξετάσουμε όλες τις εξαρτήσεις X  Y ελέγχοντας αν το X αποτελεί πρωτεύον ή εναλλακτικό κλειδί του πίνακα. Σε διαφορετική περίπτωση θα πρέπει να προχωρήσουμε σε διάσπαση του πίνακα έτσι ώστε να ικανοποιηθεί η συνθήκη της BCNF. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

28 BCNF - Παράδειγμα Έστω η σχέση R(φοιτητής, μάθημα, διδάσκων) και η εξάρτηση (φοιτητής, μάθημα  διδάσκων). Έστω ότι κάθε διδάσκων διδάσκει μόνο ένα μάθημα. Προκύπτει η εξάρτηση (διδάσκων  μάθημα), όπου το αριστερό σκέλος δεν είναι κλειδί. Η σχέση R δεν βρίσκεται σε BCNF και πρέπει να διασπασθεί. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

29 BCNF - Παράδειγμα Η σχέση R(φοιτητής, μάθημα, διδάσκων) μπορεί να διασπασθεί ως εξής: –R1(Διδάσκων, Μάθημα) με κλειδί το διδάσκοντα –R2(Μάθημα, Φοιτητής) με κλειδί και τα δύο χαρακτηριστικά. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

30 Πλειονότιμες (multivalued) εξαρτήσεις Οι πλειονότιμες εξαρτήσεις είναι απόρροια της 1ΚΜ, όπου δεν επιτρέπονται πλειονότιμα χαρακτηριστικά. Δοθείσης σχέσης R και 3 συνόλων χαρακτηριστικών A,B,C ⊂ R, λέγεται ότι ισχύει A ↠ B αν και μόνο αν το σύνολο των τιμών του συνόλου χαρακτηριστικών B εξαρτάται από την τιμή του συνόλου χαρακτηριστικών A και όχι του συνόλου χαρακτηριστικών C. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

31 Τέταρτη κανονική μορφή Ένας πίνακας R βρίσκεται στην 4ΚΜ όταν βρίσκεται σε BCNF και δεν περιέχει πλειονότιμες εξαρτήσεις. Για το μετασχηματισμό στην 4ΚΜ ο πίνακας R διασπάται σε απλούστερους ώστε να καταργηθούν οι πλειονότιμες εξαρτήσεις. Δεδομένης της πλειονότιμης εξάρτησης Χ ↠ Υ, διασπούμε την R σε δύο σχέσεις R1 και R2 όπου: –η R1 έχει χαρακτηριστικά τα X  Y, ενώ –η R2 έχει χαρακτηριστικά τα R–Y. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

32 Τέταρτη κανονική μορφή - παράδειγμα Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

33 Τέταρτη κανονική μορφή - παράδειγμα Η προηγούμενη σχέση διασπάται σε δύο απλούστερα σχήματα που είναι σε 4ΚΜ. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

34 Εξαρτήσεις σύνδεσης (join dependencies) Έστω ένας πίνακας R και R 1, R 2, …, R n υποσύνολα των χαρακτηριστικών του R, έτσι ώστε R = R 1 U … U R n. Ο πίνακας R περιέχει μία εξάρτηση σύνδεσης αν κάθε γραμμή του πίνακα ισούται με τη σύνδεση των προβο- λών στα χαρακτηριστικά των υποσυνόλων R 1,R 2,…,R n. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση Τυπικότερα, ο πίνακας R περιέχει εξάρτηση σύνδεσης αν ισχύει η σχέση: Mία πλειονότιμη εξάρτηση είναι μερική περίπτωση της εξάρτησης σύνδεσης.

35 Πέμπτη κανονική μορφή Ένας πίνακας βρίσκεται στην 5KM ή κανονική μορφή προβολής-σύνδεσης (project-join normal form - PJNF) αν δεν περιέχει καμία εξάρτηση σύνδεσης. Για την κατάργηση της εξάρτησης σύνδεσης ο αρχικός πίνακας πρέπει να διασπασθεί, ενώ η φυσική σύνδεση όλων των πινάκων που προκύπτουν από τη διάσπαση να δίνει ως αποτέλεσμα τον αρχικό πίνακα. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

36 Πέμπτη κανονική μορφή – παράδειγμα Έστω ένας πίνακας R με δεδομένα σχετικά με τα μαθήματα, διδάσκοντες και φοιτητές. Υποθέτουμε ότι: –ένας διδάσκων μπορεί να προσφέρει περισσότερα του ενός μαθήματα, –κάθε μάθημα μπορεί να προσφέρεται από περισσότερους του ενός διδάσκοντες σε παράλληλες τάξεις, –ένας φοιτητής παρακολουθεί ένα μόνο διδάσκοντα για κάθε μάθημα που δηλώνει. Ο πίνακας αυτός δεν περιέχει πλειονότιμες εξαρτήσεις, αλλά περιέχει μία εξάρτηση σύνδεσης. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

37 Πέμπτη κανονική μορφή – παράδειγμα Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

38 Πέμπτη κανονική μορφή – παράδειγμα Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση

39 Σύνοψη Οι κανονικές μορφές προκύπτουν με διαδοχικές διασπάσεις των πινάκων. Απλούστερη είναι η 1ΚΜ και πιο περιοριστική είναι η 5ΚΜ. Στην πράξη, οι πίνακες κανονικοποιούνται συνήθως μέχρι την BCNF. Κεφάλαιο 8: Συναρτησιακές εξαρτήσεις και κανονικοποίηση