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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Lecture 23: Functional Dependencies and Normalization

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

(Bottom-up Design): 11-4

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

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

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

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

Εισαγωγή στην πληροφορική

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

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

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

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

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

Lecture 24: Functional Dependencies and Normalization IV

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

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

Σχεσιακή δοµή δεδοµένων

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 10: Εισαγωγικά περί κανονικοποίησης Συναρτησιακές εξαρτήσεις BCNF. Ευαγγελίδης Γεώργιος Τμήμα Εφαρμοσμένης Πληροφορικής

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

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

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

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

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

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

Transcript:

Σχεδιασµός Σχεσιακών Σχηµάτων Κανονικές Μορφές Γενικές Οδηγίες Η Μέθοδος της Αποσύνθεσης Επιθυµητές Ιδιότητες της Αποσύνθεσης Συνένωση Άνευ Απωλειών ιατήρηση Εξαρτήσεων Αποφυγή Επανάληψης Πληροφορίας 1 2 Σχεδιασµός Σχεσιακών Σχηµάτων Σχεδιασµός Σχεσιακών Σχηµάτων - Επανάληψη - Αποσύνθεση καθολικού σχήµατος Επιθυµητές ιδιότητες - διατήρηση εξαρτήσεων - όχι απώλειες στη συνένωση - επανάληψη πληροφορίας λόγω ΣΕ - Κανονικές Μορφές BCNF 3NF Αποσύνθεση (decomposition) Αλγόριθµος σχεδιασµού Αρχικά ένα καθολικό σχήµα σχέσης που περιέχει όλα τα γνωρίσµατα Προσδιορισµός των συναρτησιακών εξαρτήσεων ιάσπαση σε ένα σύνολο από σχήµατα που ικανοποιούν κάποιες ιδιότητες 3 4 Σχεδιασµός Σχεσιακών Σχηµάτων - Επανάληψη Έστω ένα σχεσιακό σχήµα R. Ένα σύνολο από σχεσιακά σχήµατα {R 1, R 2,.., R n } είναι µια αποσύνθεση του R αν γνωρίσµατα R = R 1, R 2,, R n Σχεδιασµός Σχεσιακών Σχηµάτων - Επανάληψη Επιθυµητές Ιδιότητες Αποσύνθεσης 1. Συνενώσεις Άνευ Απωλειών Η φυσική συνένωση των σχέσεων που προκύπτουν µας δίνει ακριβώς την αρχική σχέση (χωρίς επιπρόσθετες πλειάδες): r = π R1 (r) * π R2 (r) * π Rn (r) R1 R2 R1 ή R1 R2 R2 ανήκει στο F +, δηλαδή τα κοινά γνωρίσµατα των δύο σχηµάτων είναι κλειδί για τουλάχιστον ένα από τα δύο ηλαδή, i = 1,..,n R i R Έστω r(r) και r i = π Ri (r), i = 1,..,n r r 1 * r2 * * r n πλειάδες 2. ιατήρηση Εξαρτήσεων Στόχος: Έλεγχος διατήρησης εξαρτήσεων όταν γίνονται τροποποιήσεις χωρίς να υπολογίζουµε τις αρχικές σχέσεις (αποφυγή των συνενώσεων) F = F1 F2... Fn, πρέπει F + = F + 3. Αποφυγή Επανάληψης Πληροφορίας, πως; Κανονικές Μορφές 5 6

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

Μπορεί να χρειαστεί παραπάνω από µία αποσύνθεση Αποσύνθεση του αρχικού σχήµατος R σε δύο σχήµατα - R 1 µε γνωρίσµατα Χ Y και R 2 µε γνωρίσµατα R - Y η R 2 µπορεί να µην είναι σε BCNF εν είναι πάντα δυνατή η αποσύνθεση σε µια BCNF που να διατηρεί τις εξαρτήσεις Παράδειγµα Έστω η σχέση Παίζει(Έργο, Κινηµατογράφος, Πόλη) µε τους περιορισµούς ότι (i) δεν υπάρχουν κινηµατογράφοι µε το ίδιο όνοµα, (ii) κάθε κινηµατογράφος έχει πολλές αίθουσες (παίζει πολλά έργα) και (iii) κάθε έργο παίζεται µόνο σε ένα κινηµατογράφο σε κάθε πόλη Κινηµατογράφος Πόλη Κλειδιά; Έργο Πόλη Κινηµατογράφος {Έργο, Πόλη} {Κινηµατογράφος, Έργο} 13 14 Παίζει(Έργο, Κινηµατογράφος, Πόλη) Κινηµατογράφος Πόλη Έργο Πόλη Κινηµατογράφος Κλειδιά {Έργο, Πόλη} {Κινηµατογράφος, Έργο} Αποσύνθεση σε: {Κινηµατογράφος, Πόλη} και {Κινηµατογράφος, Έργο} Κινηµατογράφος Οντεόν Village Center Πόλη Αθήνα Αθήνα Κινηµατογράφος Οντεόν Village Center Έργο Safe Sex Safe Sex Ένα σχεσιακό σχήµα R είναι σε τρίτη κανονική µορφή (3ΝF) σε σχέση µε ένα σύνολο F συναρτησιακών εξαρτήσεων αν για όλες τις ΣΕ στο F + της µορφής X Y ισχύει τουλάχιστον ένα από τα παρακάτω: -- X Y είναι µια τετριµµένη ΣΕ ή -- X είναι υπερκλειδί του σχήµατος R -- κάθε γνώρισµα Α του Υ - Χπεριέχεται σε κάποιο υποψήφιο κλειδί BCNF πιο περιοριστική -- αν σε BCNF 3NF 15 16 Παράδειγµα Παίζει(Έργο, Κινηµατογράφος, Πόλη) Κινηµατογράφος Πόλη Έργο Πόλη Κινηµατογράφος Κλειδιά {Έργο, Πόλη} {Κινηµατογράφος, Έργο} Ησχέση είναι σε 3NF Είδος ΣΕ: µοναδικά αντικείµενα ή µε βάση πρακτικές Αλγόριθµος Αποσύνθεσης σε 3NF Υπολόγισε το ελάχιστο κάλυµµα F c της F Για κάθε ΣΕ Χ Υ της F c αν κανένα από τα R i δεν περιέχει τα Χ, Υ νέα σχέση µε γνωρίσµατα Χ Y Αν καµία από τις σχέσεις που προέκυψαν δεν περιέχει κάποιο υποψήφιο κλειδί του R δηµιούργησε µια νέα σχέση µε γνωρίσµατα τα γνωρίσµατα του κλειδιού 17 18

Αλγόριθµος Αποσύνθεσης σε 3NF Απώλειες στη συνένωση; ιατήρηση εξαρτήσεων; Παράδειγµα Τραπεζίτης(Όνοµα-Υποκαταστήµατος, Όνοµα-Πελάτη, Όνοµα-Τραπεζίτη, Αριθµός Γραφείου) Όνοµα-Τραπεζίτη Όνοµα-Υποκαταστήµατος Αριθµός-Γραφείου Όνοµα-Πελάτη Όνοµα-Υποκαταστήµατος Όνοµα-Τραπεζίτη Κλειδιά {Όνοµα-Πελάτη, Όνοµα-Υποκαταστήµατος} 3NF; Τραπεζίτης1(Όνοµα-Τραπεζίτη, Όνοµα-Υποκαταστήµατος Αριθµός-Γραφείου) Τραπεζίτης2(Όνοµα-Πελάτη, Όνοµα-Υποκαταστήµατος, Όνοµα-Τραπεζίτη) BCNF; 19 20 Σχεδιασµός Σχεσιακών Σχηµάτων -Επανάληψη Σχεδιασµός Σχεσιακών Σχηµάτων -Επανάληψη Κανονική Μορφή Boyce-Codd Ένα σχεσιακό σχήµα R είναι σε BCNF σε σχέση µε ένα σύνολο F συναρτησιακών εξαρτήσεων αν για όλες τις ΣΕ στο F + της µορφής X Y ισχύει τουλάχιστον ένα από τα παρακάτω: -- X Y είναι µια τετριµµένη ΣΕ ή -- X είναι υπερκλειδί του σχήµατος R BCNF 3NF Αποφυγή επανάληψης πληροφορίας ναι όχι πάντα Αποσύνθεση χωρίς απώλειες στη συνένωση ναι ναι κλειδί -- κάθε γνώρισµα Α του Υ - Χ περιέχεται σε κάποιο υποψήφιο ιατήρηση εξαρτήσεων όχι πάντα ναι 21 22 ΠρώτηΚανονικήΜορφή Ιστορικοί λόγοι Πρώτη Κανονική Μορφή (1ΝF) εν επιτρέπονται πλειότιµα ή σύνθετα γνωρίσµατα Παράδειγµα µε σύνθετα (εµφωλευόµενες σχέσεις) ΕΡΓ_ΕΡΓΟ(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ, {ΕΡΓΑ(ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ)}) ΕΡΓ_ΕΡΓΟ(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ, ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ) ΑΡ_ΤΑΥΤ ΕΡ_ΟΝΟΜΑ ΑΡ_ΤΑΥΤ ΚΩ _ΕΡΓΟΥ ΩΡΕΣ Αποσύνθεση (unnesting) σε ΕΡΓ_ΕΡΓΟ1(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ) ΕΡΓ_ΕΡΓΟ2(ΑΡ_ΤΑΥΤ, ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ) ΠρώτηΚανονικήΜορφή Παράδειγµα µε πλειότιµα ΤΜΗΜΑ(Τ_ΟΝΟΜΑ, ΚΩ _ΤΜΗΜ, ΙΕΥΘΥΝΤΗΣ_ΤΜΗΜ, ΤΟΠΟΘΕΣΙΕΣ) Ένα τµήµα σε πολλές τοποθεσίες. Κλειδί; ΚΩ _ΤΜΗΜΑΤΟΣ ΤΟΠΟΘΕΣΙΕΣ Αποσύνθεση σε ΤΜΗΜΑ1(ΚΩ _ΤΜΗΜΑΤΟΣ, ΤΟΠΟΘΕΣΙΕΣ) ΤΜΗΜΑ2(Τ_ΟΝΟΜΑ, ΚΩ _ΤΜΗΜ, ΙΕΥΘΥΝΤΗΣ_ΤΜΗΜ) 23 24

εύτερη Κανονική Μορφή εύτερη Κανονική Μορφή Πλήρης Συναρτησιακή Εξάρτηση Μια συναρτησιακή εξάρτηση Χ Υ είναι πλήρης συναρτησιακή εξάρτηση αν για κάθε Α Χ, δεν ισχύει (Χ - {Α}) Υ δηλαδή η αφαίρεση οποιουδήποτε γνωρίσµατος Α από το Χ σηµαίνει ότι η εξάρτηση δεν ισχύει πλέον δεν έχει περιττά γνωρίσµατα στο αριστερό µέρος Μερική εξάρτηση αν όχι πλήρης Πρωτεύον Γνώρισµα: Ένα γνώρισµα που είναι µέλος κάποιου υποψήφιου κλειδιού Ένα σχήµα σχέσης είναι σε εύτερη Κανονική Μορφή (2NF) αν κάθε µη πρωτεύον γνώρισµα Α (δηλαδή γνώρισµα που δεν εµφανίζεται σε κανένα υποψήφιο κλειδί) του R είναι πλήρως συναρτησιακά εξαρτώµενο από οποιοδήποτε κλειδί του R. Παράδειγµα παραβίασης της 2NF ΕΡΓ_ΕΡΓΟ(ΑΡ_ΤΑΥΤ, ΕΡ_ΟΝΟΜΑ, ΚΩ _ΕΡΓΟΥ, ΩΡΕΣ) ΑΡ_ΤΑΥΤ ΕΡ_ΟΝΟΜΑ ΑΡ_ΤΑΥΤ ΚΩ _ΕΡΓΟΥ ΩΡΕΣ 25 26 (εναλλακτικός ορισµός) Μια συναρτησιακή εξάρτηση Χ Υ σε ένα σχήµα σχέσης R είναι µια µεταβατική εξάρτηση αν υπάρχει ένα σύνολο γνωρισµάτων Z που δεν είναι υποσύνολο οποιουδήποτε κλειδιού της R τέτοιο ώστε να ισχύουν Χ Ζ και Ζ Υ. - Εναλλακτικός Ορισµός Ένα σχήµα σχέσης είναι σε 3NF αν κάθε µη πρωτεύον γνώρισµα Α του R είναι -- πλήρως συναρτησιακά εξαρτώµενο από κάθε κλειδί του R και -- µη µεταβατικά εξαρτώµενο από κάθε κλειδί του R 27 28 Κανονικές Μορφές Σχεδιασµός Σχεσιακών Σχηµάτων ΟΛΕΣ οι ΣΧΕΣΕΙΣ 1NF 2NF 3NF BCNF2NF 4NF 2NF 5NF Ένας µεγάλος αριθµός από εµπορικά εργαλεία, δοθέντων ενός συνόλου Σχηµάτων Σχέσεων/Γνωρισµάτων και ενός συνόλου συναρτησιακών εξαρτήσεων δηµιουργούν αυτόµατα σχήµατα σχέσεων σε µορφή 3NF (σπάνια πάνε σε BCNF, 4NF και 5NF) Μια άλλη χρήση τέτοιων εργαλείων είναι να ελέγχουν το επίπεδο κανονικοποίησης µιας σχέσης - γενικά, η χρήση ως ευριστικό εργαλείο επιλογής ενός σχεδιασµού έναντι κάποιου άλλου Υπάρχουν πρακτικά αποτελέσµατα της θεωρίας που επιτρέπουν σε έναν σχεδιαστή να κάνει ανάλυση της µορφής: Αν µια σχέση είναι σε 3NF και κάθε υποψήφιο κλειδί αποτελείται ακριβώς από ένα γνώρισµα, τότε είναι και σε 5NF (Fagin, 1991) 29 30

Σχεδιασµός Σχεσιακών Σχηµάτων Σχεδιασµός Σχεσιακών Σχηµάτων Η διαδικασία Κανονικοποίησης έχει και µειονεκτήµατα: o εν είναι δηµιουργική -- µε στόχο τα κριτήρια που αναφέρθηκαν προηγουµένως, δεν υπάρχει τρόπος να δηµιουργηθεί µια «καλή» βάση δεδοµένων o Συνήθως η κανονικοποίηση γίνεται αφού έχουµε κάποιο σχήµα (µας λέει αν είναι «καλό» ή «κακό») o εν προσφέρει ένα εννοιολογικό σχήµα (ασχολείται µόνο µε σχέσεις και γνωρίσµατα) Όµως, είναι µια ενδιαφέρουσα και πρακτικά χρήσιµη προσπάθεια να γίνουν µε τυπικό και συστηµατικό τρόπο πράγµατα που τα κάνουµε συνήθως διαισθητικά. Η ιαδικασία Σχεδιασµού 1. Συλλογή και ανάλυση απαιτήσεων 2. Εννοιολογικός σχεδιασµός 3. Επιλογή Σ Β 4. Απεικόνιση στο µοντέλο δεδοµένων (λογικός σχεδιασµός) 5. Φυσικός σχεδιασµός 6. Υλοποίηση 31 32