Κανονικές Μορφές Σχεδιασµός Σχεσιακών Σχηµάτων

Σχετικά έγγραφα
Κανονικές Μορφές. Αποσύνθεση (decomposition)

καλών σχεσιακών σχημάτων

Κανονικές Μορφές. Βάσεις Δεδομένων : Κανονικές Μορφές. ηλαδή, i = 1,.., n R i R. Σύντομη επανάληψη αποσύνθεσης.

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων

Κανονικοποίηση Σχήµατος. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

Κανονικές Μορφές. Συνενώσεις Άνευ Απωλειών. Προσοχή με τις τιμές null στην αποσύνθεση

Κανονικές Μορφές. Τι συμβαίνει με το (πρωτεύον) κλειδί και τις συναρτησιακές εξαρτήσεις; Παράδειγμα 1. Παράδειγμα 2

Κανονικοποίηση Σχήµατος

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Σχεδιασµός Σχεσιακών Σχηµάτων

Συναρτησιακές και Πλειότιµες Εξαρτήσεις

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Σχεδιασµός Σχεσιακών Σχηµάτων

καλών σχεσιακών σχημάτων

Λογικός Σχεδιασμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων: Αποσύνθεση. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

Βάσεις Δεδομένων : Λογικός Σχεδιασμός 1. καλών σχεσιακών σχημάτων. Λογικός Σχεδιασμός Σχεσιακών Σχημάτων. Γενικές Κατευθύνσεις.

Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση

Βάσεις δεδομένων. (9 ο μάθημα) Ηρακλής Βαρλάμης

Συναρτησιακές Εξαρτήσεις

Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley, ΕλληνικήΈκδοση, ίαυλος


Κανονικοποίηση. Άτυπες Οδηγίες. Παράδειγµα. Αξιολόγηση Σχεσιακών Σχηµάτων Β. Περιττές Τιµές και Ανωµαλίες Ενηµέρωσης

Συναρτησιακές Εξαρτήσεις

Κανονικές Μορφές 8ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Κανονικοποίηση Σχήματος

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

Κανονικοποίηση. Σημασιολογία Γνωρισμάτων. Άτυπες Οδηγίες. Παράδειγμα. Αξιολόγηση Σχεσιακών Σχημάτων ΒΔ. Περιττές Τιμές και Ανωμαλίες Ενημέρωσης

Συναρτησιακές Εξαρτήσεις. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων: Αποσύνθεση


Κανονικές Μορφές 8ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Κανονικοποίηση. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Κανονικοποίηση 1

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Κεφάλαιο 8. ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ (Normalization) Ι.Β Σχεδιασµός Σχεσιακών Β και Κανονικοποίηση Σελίδα 4.1

Σχεδιασμός μιας εφαρμογής ΒΔ: Βήματα. 1. Συλλογή και Ανάλυση Απαιτήσεων(requirement analysis)

Σχεσιακό Μοντέλο. Εισαγωγή. Βάσεις εδοµένων : Σχεσιακό Μοντέλο 1

Θεωρία Κανονικοποίησης

Συναρτησιακές Εξαρτήσεις

Σχεδίαση Β.Δ. (Database Design)

Βάσεις εδοµένων. Συναρτησιακές Εξαρτήσεις (Functional Dependencies) Σχεδιασµός Βάσεων εδοµένων και. Κανονικοποίηση.

Σχεδιασµός µιας Β. Ένας απλός τρόπος αναπαράστασης δεδοµένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσµατα

Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση

Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών Κανονικές Μορφές (Normal Forms)

Lecture 23: Functional Dependencies and Normalization

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις

Διδάσκων: Παναγιώτης Ανδρέου

Σχεδιασµός µιας Β. Εισαγωγή. Μετατροπή σε σχεσιακό -> είσοδο σε ένα Σ Β. Εισαγωγή. Ιδέες Ο/Σ Σχέσεις Σχεσιακό Σ Β

Εισαγωγή. Σχεδιασµός µιας Β

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

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

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

Σχεδιασμός μιας Β : Βήματα

Βάσεις Δεδομένων Συναρτησιακές Εξαρτήσεις (Functional Dependencies) Σχεδιασμός Βάσεων Δεδομένων και Κανονικοποίηση

Μοντέλο Οντοτήτων-Συσχετίσεων

Μοντέλο Οντοτήτων-Συσχετίσεων


Συναρτησιακές Εξαρτήσεις 7ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Βάσεις Δεδομένων : Σχεσιακό Μοντέλο 1. Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση.

Αρχεία και Βάσεις Δεδομένων

Συναρτησιακές Εξαρτήσεις

Κανονικοποίηση Σχεδιασμός Βάσεων Δεδομένων Μαρία Χαλκίδη

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ. Σχεδιασμός Σχεσιακών ΒΔ και Κανονικοποίηση 1

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Συναρτησιακές Εξαρτήσεις 7ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Συναρτησιακές Εξαρτήσεις Σχεδιασμός Βάσεων Δεδομένων

Βάσεις δεδομένων. (3 ο μάθημα) Ηρακλής Βαρλάμης

Μοντέλο Οντοτήτων-Συσχετίσεων

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

Απεικόνιση Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Μοντέλο Δεδομένων

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης

2 ο Σύνολο Ασκήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Θέματα ανακεφαλαίωσης

Βάσεις εδοµένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Βάσεις Δεδομένων Ι Θεωρία Σχεδίασης ΣΒΔ. (Σχεσιακών Βάσεων Δεδομένων) Α' Μέρος. Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ

Σχεσιακό Μοντέλο. Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη

Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

(Bottom-up Design): 11-4

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων : Σχεσιακή Άλγεβρα 1

Εκπαιδευτικό Εργαλείο Κανονικοποίησης

Σχεσιακές Βάσεις Δεδομένων

Διδάσκων: Παναγιώτης Ανδρέου

ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ

Lecture 24: Functional Dependencies and Normalization IV

Lecture 21: Functional Dependencies and Normalization

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

ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ

Βάσεις εδοµένων Βασίλειος Βεσκούκης Κανονικοποίηση σχήµατος Β Σύνοψη

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης. Το µοντέλο Οντοτήτων Συσχετίσεων Το Σχεσιακό Μοντέλο εδοµένων

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Κλείσιμο Συνόλου Γνωρισμάτων

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Transcript:

Κανονικές Μορφές 1 Σχεδιασµός Σχεσιακών Σχηµάτων Γενικές Οδηγίες Η Μέθοδος της Αποσύνθεσης Επιθυµητές Ιδιότητες της Αποσύνθεσης Συνένωση Άνευ Απωλειών ιατήρηση Εξαρτήσεων Αποφυγή Επανάληψης Πληροφορίας 2

Σχεδιασµός Σχεσιακών Σχηµάτων - Επανάληψη Σχεδιασµός καλών σχεσιακών σχηµάτων Μη τυπικές - γενικές κατευθύνσεις 1. Σηµασιολογία 2. Ελάττωση πλεονασµού 3. Ελάττωση τιµών null 4. Μη πλασµατικές πλειάδες Θεωρία κανονικών µορφών που θα βασίζεται στις συναρτησιακές εξαρτήσεις 3 Σχεδιασµός Σχεσιακών Σχηµάτων - Αποσύνθεση καθολικού σχήµατος Επιθυµητές ιδιότητες - διατήρηση εξαρτήσεων - όχι απώλειες στη συνένωση - επανάληψη πληροφορίας λόγω ΣΕ - Κανονικές Μορφές BCNF 3NF 4

Σχεδιασµός Σχεσιακών Σχηµάτων - Επανάληψη Αποσύνθεση (decomposition) Αλγόριθµος σχεδιασµού Αρχικά ένα καθολικό σχήµα σχέσης που περιέχει όλα τα γνωρίσµατα Προσδιορισµός των συναρτησιακών εξαρτήσεων ιάσπαση σε ένα σύνολο από σχήµατα που ικανοποιούν κάποιες ιδιότητες 5 Σχεδιασµός Σχεσιακών Σχηµάτων - Επανάληψη Έστω ένα σχεσιακό σχήµα R. Ένα σύνολο από σχεσιακά σχήµατα {R 1, R 2,.., R n } είναι µια αποσύνθεση του R αν γνωρίσµατα R = R 1, R 2,, R n ηλαδή, i = 1,..,n R i R Έστω r(r) και r i = π R i (r), i = 1,..,n πλειάδες r r 1 * r2 * * r n 6

2. ιατήρηση Εξαρτήσεων Σχεδιασµός Σχεσιακών Σχηµάτων - Επανάληψη Επιθυµητές Ιδιότητες Αποσύνθεσης 1. Συνενώσεις Άνευ Απωλειών Η φυσική συνένωση των σχέσεων που προκύπτουν µας δίνει ακριβώς την αρχική σχέση (χωρίς επιπρόσθετες πλειάδες): r = π R1 (r) * π R2 (r) * π Rn (r) R1 R2 R1 ή R1 R2 R2 ανήκει στο F +, δηλαδή τα κοινά γνωρίσµατα των δύο σχηµάτων είναι κλειδί για τουλάχιστον ένα από τα δύο Στόχος: Έλεγχος διατήρησης εξαρτήσεων όταν γίνονται τροποποιήσεις χωρίς να υπολογίζουµε τις αρχικές σχέσεις (αποφυγή των συνενώσεων) F = F1 F2... Fn, πρέπει F + = F + 3. Αποφυγή Επανάληψης Πληροφορίας 7 Boyce-Codd Κανονική Μορφή Ένα σχεσιακό σχήµα R είναι σε Κανονική Μορφή Boyce-Codd (BCNF) σε σχέση µε ένα σύνολο F συναρτησιακών εξαρτήσεων αν για όλες τις ΣΕ στο F + της µορφής X Y ισχύει τουλάχιστον ένα από τα παρακάτω: -- X Y είναι µια τετριµµένη ΣΕ ή -- X είναι υπερκλειδί του σχήµατος R ηλαδή το αριστερό µέρος κάθε µη τετριµµένης ΣΕ πρέπει να περιέχει ένα κλειδί Το σχήµα µιας Β είναι σε BCNF αν το σχήµα κάθε σχέσης της είναι σε BCNF. 8

Boyce-Codd Κανονική Μορφή Παράδειγµα 1 Ταινία (Τίτλος, Έτος, ιάρκεια, Είδος, Εταιρεία-Παραγωγής, Όνοµα- Ηθοποιού) Ησχέση Ταινία δεν είναι σε BCNF (υποψήφιο) κλειδί: {Τίτλος, Έτος, Όνοµα-Ηθοποιού} Για παράδειγµα η ΣΕ Τίτλος Έτος Εταιρεία-Παραγωγής 9 Boyce-Codd Κανονική Μορφή Παράδειγµα 2 Ταινία2 (Τίτλος, Έτος, ιάρκεια, Είδος, Εταιρεία-Παραγωγής) Ησχέση Ταινία2 είναι σε BCNF Παράδειγµα 3 Οποιαδήποτε σχέση µε δύο γνωρίσµατα είναι σε BCNF 10

Boyce-Codd Κανονική Μορφή Αλγόριθµος Αποσύνθεσης σε BCNF Βρες µια µη τετριµµένη ΣΕ που παραβιάζει τον BCNF ορισµό, έστω X Y και Χ Υ = Αποσύνθεση του αρχικού σχήµατος R σε δύο σχήµατα R 1 µε γνωρίσµατα Χ Y R 2 µε γνωρίσµατα R - Y Ευριστικός: στα δεξιά όσο το δυνατόν περισσότερα γνωρίσµατα Αποσύνθεση χωρίς απώλειες; 11 Boyce-Codd Κανονική Μορφή Παράδειγµα 1 Ταινία (Τίτλος, Έτος, ιάρκεια, Είδος, Εταιρεία-Παραγωγής, Όνοµα- Ηθοποιού) Τίτλος Έτος ιάρκεια Είδος Εταιρεία-Παραγωγής Ταινία1(Τίτλος, Έτος, ιάρκεια, Είδος, Εταιρεία-Παραγωγής) Ταινία2(Τίτλος, Έτος, Όνοµα-Ηθοποιού) 12

Παράδειγµα 2 Boyce-Codd Κανονική Μορφή Ταινία-Εταιρεία (Τίτλος, Έτος, ιάρκεια, Είδος, Εταιρεία- Παραγωγής, ιεύθυνση-εταιρείας) Πρόβληµα: υπάρχει µια µεταβατική εξάρτηση Τίτλος Έτος Εταιρεία-Παραγωγής Εταιρεία-Παραγωγής ιεύθυνση-εταιρείας Τίτλος Έτος ιεύθυνση-εταιρείας Ταινία-Εταιρεία1 (Εταιρεία-Παραγωγής, ιεύθυνση- Εταιρείας) Ταινία-Εταιρεία2 (Τίτλος, Έτος, ιάρκεια, Είδος, Εταιρεία- Παραγωγής) 13 Boyce-Codd Κανονική Μορφή Μπορεί να χρειαστεί παραπάνω από µία αποσύνθεση Αποσύνθεση του αρχικού σχήµατος R σε δύο σχήµατα - R 1 µε γνωρίσµατα Χ Y και R 2 µε γνωρίσµατα R - Y η R 2 µπορεί να µην είναι σε BCNF 14

Boyce-Codd Κανονική Μορφή εν είναι πάντα δυνατή η αποσύνθεση σε µια BCNF που να διατηρεί τις εξαρτήσεις Παράδειγµα Έστω η σχέση Παίζει(Έργο, Κινηµατογράφος, Πόλη) µε τους περιορισµούς ότι δεν υπάρχουν κινηµατογράφοι µε το ίδιο όνοµα κάθε έργο παίζεται µόνο σε ένα κινηµατογράφο σε κάθε πόλη και κάθε κινηµατογράφος έχει πολλές αίθουσες (παίζει πολλά έργα) Κινηµατογράφος Πόλη Έργο Πόλη Κινηµατογράφος Κλειδιά; {Έργο, Πόλη} {Κινηµατογράφος, Έργο} 15 Boyce-Codd Κανονική Μορφή Παίζει(Έργο, Κινηµατογράφος, Πόλη) Κινηµατογράφος Πόλη Έργο Πόλη Κινηµατογράφος Κλειδιά {Έργο, Πόλη} {Κινηµατογράφος, Έργο} Αποσύνθεση σε:{κινηµατογράφος, Πόλη} και {Κινηµατογράφος, Έργο} Κινηµατογράφος Οντεόν Village Center Πόλη Αθήνα Αθήνα Κινηµατογράφος Οντεόν Village Center Έργο Safe Sex Safe Sex 16

Τρίτη Κανονική Μορφή Ένα σχεσιακό σχήµα R είναι σε τρίτη κανονική µορφή (3ΝF) σε σχέση µε ένα σύνολο F συναρτησιακών εξαρτήσεων αν για όλες τις ΣΕ στο F + της µορφής X Y ισχύει τουλάχιστον ένα από τα παρακάτω: -- X Y είναι µια τετριµµένη ΣΕ ή -- X είναι υπερκλειδί του σχήµατος R -- κάθε γνώρισµα Α του Υ - Χπεριέχεται σε κάποιο υποψήφιο κλειδί BCNF πιο περιοριστική -- αν σε BCNF 3NF 17 Τρίτη Κανονική Μορφή Παράδειγµα Παίζει(Έργο, Κινηµατογράφος, Πόλη) Κινηµατογράφος Πόλη Έργο Πόλη Κινηµατογράφος Κλειδιά {Έργο, Πόλη} {Κινηµατογράφος, Έργο} Ησχέση είναι σε 3NF Είδος ΣΕ: µοναδικά αντικείµενα ή µε βάση πρακτικές 18

Τρίτη Κανονική Μορφή Αλγόριθµος Αποσύνθεσης σε 3NF Υπολόγισε το ελάχιστο κάλυµµα F c της F Για κάθε ΣΕ Χ Υ της F c αν κανένα από τα R i δεν περιέχει τα Χ, Υ νέα σχέση µε γνωρίσµατα Χ Y Αν καµία από τις σχέσεις που προέκυψαν δεν περιέχει κάποιο υποψήφιο κλειδί του R δηµιούργησε µια νέα σχέση µε γνωρίσµατα τα γνωρίσµατα του κλειδιού 19 Τρίτη Κανονική Μορφή Αλγόριθµος Αποσύνθεσης σε 3NF Απώλειες στη συνένωση; ιατήρηση εξαρτήσεων; 20

Τρίτη Κανονική Μορφή Παράδειγµα Τραπεζίτης(Όνοµα-Υποκαταστήµατος, Όνοµα-Πελάτη, Όνοµα-Τραπεζίτη, Αριθµός Γραφείου) Όνοµα-Τραπεζίτη Όνοµα-Υποκαταστήµατος Αριθµός-Γραφείου Όνοµα-Πελάτη Όνοµα-Υποκαταστήµατος Όνοµα-Τραπεζίτη Κλειδιά {Όνοµα-Πελάτη, Όνοµα-Υποκαταστήµατος} 3NF; Τραπεζίτης1(Όνοµα-Τραπεζίτη, Όνοµα-Υποκαταστήµατος Αριθµός- Γραφείου) Τραπεζίτης2(Όνοµα-Πελάτη, Όνοµα-Υποκαταστήµατος, Όνοµα- Τραπεζίτη) BCNF; 21 Κανονικές Μορφές BCNF 3NF Αποφυγή επανάληψης πληροφορίας ναι όχι πάντα Αποσύνθεση χωρίς απώλειες στη συνένωση ναι ναι ιατήρηση εξαρτήσεων όχι πάντα ναι 22

Σχεδιασµός Σχεσιακών Σχηµάτων -Επανάληψη Κανονική Μορφή Boyce-Codd Ένα σχεσιακό σχήµα R είναι σε BCNF σε σχέση µε ένα σύνολο F συναρτησιακών εξαρτήσεων αν για όλες τις ΣΕ στο F + της µορφής X Y ισχύει τουλάχιστον ένα από τα παρακάτω: -- X Y είναι µια τετριµµένη ΣΕ ή -- X είναι υπερκλειδί του σχήµατος R κλειδί Τρίτη Κανονική Μορφή -- κάθε γνώρισµα Α του Υ - Χ περιέχεται σε κάποιο υποψήφιο 23 Σχεδιασµός Σχεσιακών Σχηµάτων -Επανάληψη BCNF 3NF Αποφυγή επανάληψης πληροφορίας ναι όχι πάντα Αποσύνθεση χωρίς απώλειες στη συνένωση ναι ναι ιατήρηση εξαρτήσεων όχι πάντα ναι 24

Πλειότιµες Εξαρτήσεις Πλειότιµες Εξαρτήσεις Προκύπτουν όταν δυο γνωρίσµατα είναι ανεξάρτητα το ένα από το άλλο Παράδειγµα Ηθοποιός(Όνοµα, Οδός, Πόλη, Τίτλος, Έτος) Σηµείωση: Για κάθε ηθοποιό είναι πιθανόν να υπάρχουν πολλές διευθύνσεις Κανένα από τα 5 γνωρίσµατα δεν εξαρτάται συναρτησιακά από τα άλλα τέσσερα δεν υπάρχουν µη µη τετριµµένες εξαρτήσεις κλειδί? π.χ., Όνοµα Οδός Τίτλος Έτος Πόλη δεν ισχύει 25 Πλειότιµες Εξαρτήσεις Παράδειγµα (συνέχεια) Ηθοποιός(Όνοµα, Οδός, Πόλη, Τίτλος, Έτος) δεν υπάρχουν µη τετριµµένες εξαρτήσεις Το σχήµα είναι σε BCNF αλλά υπάρχει επανάληψη πληροφορίας που δεν οφείλεται όµως σε συναρτησιακές εξαρτήσεις 26

Πλειότιµες Εξαρτήσεις X Y Για κάθε ζεύγος πλειάδων t 1 και t 2 της σχέσης R που συµφωνούν σε όλα τα γνωρίσµατα του X µπορούµε να βρούµε στο R δυο πλειάδες t 3 και t 4 τέτοιες ώστε και οι δυo συµφωνούν µε τις t 1 και t 2 στο X: t 1 [X] = t 2 [X] = t3[x] = t 4 [X] η t 3 συµφωνεί µε την t 1 στο Υ: t3[y] = t 1 [Y] η t 3 συµφωνεί µε την t 2 στο R - X - Y: t3[r-x -Y]= t2[r -X-Y] η t 4 συµφωνεί µε την t 2 στο Υ: t4[y] = t2[y] η t 4 συµφωνεί µε την t 1 στο R -X -Y: t4[r-x -Y]= t 1 [R -X -Y] 27 Πλειότιµες Εξαρτήσεις A 1 A 2 A n B 1 B 2 B m A 1 A 2 A n B 1 B 2 B m C 1 C 2 C k a 1 a 2 a n b 1 b 2 b m c 1 c 2 c k a 1 a 2 a n b 1 b 2 b m c 1 c 2 c k t 1 t 2 t 3 t 4 28

Πλειότιµες Εξαρτήσεις Παράδειγµα Ηθοποιός(Όνοµα, Οδός, Πόλη, Τίτλος, Έτος) Όνοµα Οδός Πόλη Όνοµα Οδός Πόλη Τίτλος Έτος C. Fisher 123 Mapple Str Hollywood Star Wars 1977 C. Fisher 5 Locust Ln Malibu Empire Strikes Back 1980?? 29 Τέταρτη Κανονική Μορφή Ένα σχεσιακό σχήµα R είναι σε Τέταρτη Κανονική Μορφή (4NF) σε σχέση µε ένα σύνολο F συναρτησιακών εξαρτήσεων αν για όλες τις ΣΕ και ΠΕ της µορφής X Y ισχύει τουλάχιστον ένα από τα παρακάτω: -- X Y είναι µια τετριµµένη ΠΕ ή -- X είναι υπερκλειδί του σχήµατος R BCNF; 3NF; 30

Τέταρτη Κανονική Μορφή Αλγόριθµος Αποσύνθεσης σε 4NF (παρόµοιος µε την BCNF αποσύνθεση) Βρες µια µη τετριµµένη ΠΕ που παραβιάζει τον 4NF ορισµό, έστω X Y και Χ Υ = Αποσύνθεση του αρχικού σχήµατος R σε δύο σχήµατα R 1 µε γνωρίσµατα Χ Y R 2 µε γνωρίσµατα R - Y 31 Τέταρτη Κανονική Μορφή Παράδειγµα Ηθοποιός(Όνοµα, Οδός, Πόλη, Τίτλος, Έτος) Όνοµα Οδός Πόλη Ηθοποιός1(Όνοµα, Οδός, Πόλη) Ηθοποιός2(Όνοµα, Τίτλος. Έτος) 32

Κανονικές Μορφές 3NF BCNF 4NF Αποφυγή επανάληψης πληροφορίας λόγω ΣΕ συνήθως ναι ναι Αποφυγή επανάληψης πληροφορίας λόγω ΠΕ όχι όχι ναι ιατήρηση ΣΕ ναι ίσως ίσως ιατήρηση ΠΕ ίσως ίσως ίσως Χωρίς απώλειες στη συνένωση ναι ναι ναι 33 Πρώτη Κανονική Μορφή Πρώτη Κανονική Μορφή (1ΝF) εν επιτρέπονται πλειότιµα ή σύνθετα γνωρίσµατα Παράδειγµα µε σύνθετα (εµφωλευόµενες σχέσεις) ΕΡΓ_ΕΡΓΟ(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ, {ΕΡΓΑ(ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ)}) ΕΡΓ_ΕΡΓΟ(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ, ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ) ΑΡ_ΤΑΥΤ ΕΡ_ΟΝΟΜΑ ΑΡ_ΤΑΥΤ ΚΩ _ΕΡΓΟΥ ΩΡΕΣ Αποσύνθεση (unnesting) σε ΕΡΓ_ΕΡΓΟ1(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ) ΕΡΓ_ΕΡΓΟ2(ΑΡ_ΤΑΥΤ, ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ) 34

Πρώτη Κανονική Μορφή Παράδειγµα µε πλειότιµα ΤΜΗΜΑ(Τ_ΟΝΟΜΑ, ΚΩ _ΤΜΗΜ, ΙΕΥΘΥΝΤΗΣ_ΤΜΗΜ, ΤΟΠΟΘΕΣΙΕΣ) Ένα τµήµα σε πολλές τοποθεσίες. Κλειδί; ΚΩ _ΤΜΗΜΑΤΟΣ ΤΟΠΟΘΕΣΙΕΣ Αποσύνθεση σε ΤΜΗΜΑ1(ΚΩ _ΤΜΗΜΑΤΟΣ, ΤΟΠΟΘΕΣΙΕΣ) ΤΜΗΜΑ2(Τ_ΟΝΟΜΑ, ΚΩ _ΤΜΗΜ, ΙΕΥΘΥΝΤΗΣ_ΤΜΗΜ) 35 εύτερη Κανονική Μορφή Πλήρης Συναρτησιακή Εξάρτηση Μια συναρτησιακή εξάρτηση Χ Υ είναι πλήρης συναρτησιακή εξάρτηση αν για κάθε Α Χ, δεν ισχύει (Χ - {Α}) Υ δηλαδή η αφαίρεση οποιουδήποτε γνωρίσµατος Α από το Χ σηµαίνει ότι η εξάρτηση δεν ισχύει πλέον δεν έχει περιττά γνωρίσµατα στο αριστερό µέρος Μερική εξάρτηση αν όχι πλήρης Πρωτεύον Γνώρισµα: υποψήφιου κλειδιού Ένα γνώρισµα που είναι µέλος κάποιου 36

εύτερη Κανονική Μορφή Ένα σχήµα σχέσης είναι σε εύτερη Κανονική Μορφή (2NF) αν κάθε µη πρωτεύον γνώρισµα Α (δηλαδή γνώρισµα που δεν εµφανίζεται σε κανένα υποψήφιο κλειδί) του R είναι πλήρως συναρτησιακά εξαρτώµενο από οποιοδήποτε κλειδί του R. Παράδειγµα παραβίασης της 2NF ΕΡΓ_ΕΡΓΟ(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ, ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ) ΑΡ_ΤΑΥΤ ΕΡ_ΟΝΟΜΑ ΑΡ_ΤΑΥΤ ΚΩ _ΕΡΓΟΥ ΩΡΕΣ 37 Τρίτη Κανονική Μορφή Μια συναρτησιακή εξάρτηση Χ Υ σε ένα σχήµα σχέσης R είναι µια µεταβατική εξάρτηση αν υπάρχει ένα σύνολο γνωρισµάτων Z που δεν είναι υποσύνολο οποιουδήποτε κλειδιού της R τέτοιο ώστε να ισχύουν Χ Ζ και Ζ Υ. 38

Τρίτη Κανονική Μορφή Τρίτη Κανονική Μορφή - Εναλλακτικός Ορισµός Ένα σχήµα σχέσης είναι σε 3NF αν κάθε µη πρωτεύον γνώρισµα Α του R είναι -- πλήρως συναρτησιακά εξαρτώµενο από κάθε κλειδί του R και -- µη µεταβατικά εξαρτώµενο από κάθε κλειδί του R 39 Κανονικές Μορφές ΟΛΕΣ οι ΣΧΕΣΕΙΣ 1NF 2NF 3NF BCNF2NF 4NF 2NF 5NF 40

Σχεδιασµός Σχεσιακών Σχηµάτων Ένας µεγάλος αριθµός από εµπορικά εργαλεία, δοθέντων ενός συνόλου Σχηµάτων Σχέσεων/Γνωρισµάτων και ενός συνόλου συναρτησιακών εξαρτήσεων δηµιουργούν αυτόµατα σχήµατα σχέσεων σε µορφή 3NF (σπάνια πάνε σε BCNF, 4NF και 5NF) Μια άλλη χρήση τέτοιων εργαλείων είναι να ελέγχουν το επίπεδο κανονικοποίησης µιας σχέσης - γενικά, η χρήση ως ευριστικό εργαλείο επιλογής ενός σχεδιασµού έναντι κάποιου άλλου Υπάρχουν πρακτικά αποτελέσµατα της θεωρίας που επιτρέπουν σε έναν σχεδιαστή να κάνει ανάλυση της µορφής: Αν µια σχέση είναι σε 3NF και κάθε υποψήφιο κλειδί αποτελείται ακριβώς από ένα γνώρισµα, τότε είναι και σε 5NF (Fagin, 1991) 41 Σχεδιασµός Σχεσιακών Σχηµάτων Ηδιαδικασία Κανονικοποίησης έχει και µειονεκτήµατα: o εν είναι δηµιουργική -- µε στόχο τα κριτήρια που αναφέρθηκαν προηγουµένως, δεν υπάρχει τρόπος να δηµιουργηθεί µια «καλή» βάση δεδοµένων o Συνήθως η κανονικοποίηση γίνεται αφού έχουµε κάποιο σχήµα (µας λέει αν είναι «καλό» ή «κακό») o εν προσφέρει ένα εννοιολογικό σχήµα (ασχολείται µόνο µε σχέσεις και γνωρίσµατα) Όµως, είναι µια αξιέπαινη και πρακτικά χρήσιµη προσπάθεια να γίνουν µε τυπικό και συστηµατικό τρόπο πράγµατα που τα κάνουµε συνήθως διαισθητικά. 42

Σχεδιασµός Σχεσιακών Σχηµάτων Η ιαδικασία Σχεδιασµού 1. Συλλογή και ανάλυση απαιτήσεων 2. Εννοιολογικός σχεδιασµός 3. Επιλογή Σ Β 4. Απεικόνιση στο µοντέλο δεδοµένων (λογικός σχεδιασµός) 5. Φυσικός σχεδιασµός 6. Υλοποίηση 43