ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ ΜΑΘΗΜΑ 5
ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ Η θεωρία της κανονικοποίησης αντιμετωπίζει ένα από τα σπουδαιότερα προβλήματα σχεδιασμού των σχεσιακών βάσεων δεδομένων. Το πρόβλημα αυτό είναι η αντιμετώπιση όλων των περιορισμών ακεραιότητας.
ΠΡΩΤΗ ΚΑΝΟΝΙΚΗ ΜΟΡΦΗ Σε πρώτη κανονική μορφή (ή αλλιώς 1ΝF) βρίσκεται ένας πίνακας όταν όλες οι τιμές σε όλα τα γνωρίσματα είναι ατομικές. Με άλλα λόγια κάθε στήλη πρέπει να περιέχει μόνο μία τιμή σε κάθε της κελί. Οι πίνακες που δεν πληρούν τα παραπάνω τότε λένε ότι βρίσκονται σε μηδενική κανονική μορφή κατι που δημιουργεί προβλήματα σε μια σχεσιακή βάση δεδομένων.
ΠΑΡΑΤΗΡΗΣΕΙΣ Για να είμαστε σίγουροι ότι η βάση μας έχει σχεδιαστεί σωστά και έχοντας στο μυαλό μας ότι οι εγγραφές που περιέχει η βάση είναι χιλιάδες ή και εκατομμύρια, θα πρέπει να ισχύουν τα εξής: Κατά την επιλογή θα πρέπει να μπορούν να γραφτούν όλα ή σχεδόν όλα τα ρωτήματα επιλογής. Κατά την εισαγωγή θα πρέπει να εισάγονται εύκολα και χωρίς δύσκολους χειρισμούς νέα δεδομένα στη βάση.
ΠΑΡΑΤΗΡΗΣΕΙΣ (ΣΥΝΕΧΕΙΑ) Η διαγραφή να γίνεται εύκολα χωρίς να χάνονται άλλες πολύτιμες πληροφορίες και τέλος Να μπορεί η τροποποίηση να γίνεται με εύκολο τρόπο (χωρίς δύσκολους χειρισμούς) και να εξασφαλίζεται ότι από τις αλλαγές που θα επιφέρει η τροποποίηση δεν θα επηρεαστούν δεδομένα που πρέπει να μείνουν ανέπαφα.
ΣΥΝΑΡΤΗΣΙΑΚΗ ΕΞΑΡΤΗΣΗ Συναρτησιακή εξάρτηση είναι η εξάρτηση την τιμών ενός υποσύνολου γνωρισμάτων μιας σχέσης από ένα άλλο υποσύνολο γνωρισμάτων της σχέσης. Είναι δηλαδή ένας περιορισμός ανάμεσα σε δύο υποσύνολα γνωρισμάτων μιας σχέσης. Οι συναρτησιακές εξαρτήσεις πρέπει να αποφεύγονται από τον σχεδιασμό της βάσης δεδομένων γιατί δημιουργούν πρόβλήματα.
ΣΥΝΑΡΤΗΣΙΑΚΗ ΕΞΑΡΤΗΣΗ (ΣΥΝΕΧΕΙΑ) Έστω μία σχέση r με σχήμα R και X,Y υποσύνολα του σχήματος R. Τότε το: Σημαίνει ότι το Χ είναι συναρτησιακά εξαρτημένο από το Υ ή το Υ καθορίζεται συναρτησιακά από το Χ. τα μέλη μιας συναρτησιακής συνάρτησης αναφέρονται ως ορίζων (αριστερά από το βέλος) και εξαρτημένο (δεξιά από το βέλος).
ΑΝΩΜΑΛΙΕΣ ΕΝΗΜΕΡΩΣΗΣ Ενώ κατά την διατύπωση των ερωτημάτων στην βάση δεν συναντούμε προβλήματα, πολλά προβλήματα παρουσιάζονται κατά την ενημέρωση της βάσης τα οποία αναφέρονται σαν ανωμαλίες ενημέρωσης και είναι: Ανωμαλία εισαγωγής Ανωμαλία διαγραφής και Ανωμαλία τροποποίησης.
ΔΕΥΤΕΡΗ ΚΑΝΟΝΙΚΗ ΜΟΡΦΗ Ένας πίνακας βρίσκεται στην δεύτερη κανονική μορφή (ή αλλιώς 2NF) όταν είναι ήδη στην πρώτη και κάθε στήλη που δεν είναι κλειδί να έχει σχέση (εξαρτάται συναρτησιακά) με το πρωτεύον κλειδί. Εάν ένας πίνακας έχει απλό πρωτεύον κλειδί (όχι σύνθετο) και είναι στην 1NF τότε βρίσκεται αυτομάτως και στην 2NF. Η 2η κανονική μορφή αφαιρεί τις μερικές συναρτη-σιακές εξαρτήσεις οι οποίες υπάρχουν στις σχέσεις με σύνθετο πρωτεύον κλειδί.
ΤΡΙΤΗ ΚΑΝΟΝΙΚΗ ΜΟΡΦΗ Ένας πίνακας βρίσκεται στην τρίτη κανονική μορφή (ή αλλιώς 3NF) όταν είναι ήδη στην πρώτη 1NF και δεύτερη 2NF κανονική μορφή και κάθε στήλη που δεν είναι πρωτεύον κλειδί να είναι ανεξάρτητη από άλλη στήλη που δεν είναι επίσης πρωτεύον κλειδί.
ΑΠΟΔΟΣΗ Να θυμάστε ότι: Όσο υψηλότερο είναι το επίπεδο της κανονικοποίησης, δηλ. όσο περισσότερους πίνακες φτιάχνουμε τόσες περισσότερες συζεύξεις χρειάζονται για την ανασύσταση της πληροφορίας. Σε πίνακες με μικρό πλήθος εγγραφών ο χρόνος απόκρισης του συστήματος σε ένα σύνθετο ερώτημα είναι σχετικά μικρότερος από έναν πίνακα με μεγαλύτερο πλήθος εγγραφών
ΑΠΟΔΟΣΗ (ΣΥΝΕΧΕΙΑ) Όταν εκτελούνται πάρα πολλά ερωτήματα SELECT και λιγότερα έως καθόλου ερωτήματα ενημέρωσης, INSERT, DELETE, UPDATE, τότε προτιμούνται πίνακες μη κανονικοποιημένοι. Δηλαδή κάνουμε την αντίστροφη διαδικασία της κανονικοποίησης, τα δεδομένα δηλαδή τοποθετούνται σε σχήμα κατώτερης μορφής για να εκτελούνται ταχύτερα τα ερωτήματα SELECT.