Διαφορά μεταξύ της κανονικοποίησης και της αποτύπωσης

Anonim

Normalization vs Denormalization , οι σχεσιακές βάσεις δεδομένων αποτελούνται από σχέσεις (σχετικοί πίνακες). Αν οι πίνακες είναι δύο μεγάλες (δηλ. Πάρα πολλές στήλες σε έναν πίνακα), τότε μπορούν να εμφανιστούν ανωμαλίες της βάσης δεδομένων.Αν οι πίνακες είναι δύο μικρές (δηλαδή βάση δεδομένων αποτελείται από πολλούς μικρότερους πίνακες), θα ήταν αναποτελεσματική για την ερώτηση. είναι οι δύο διαδικασίες που χρησιμοποιούνται για τη βελτιστοποίηση της απόδοσης της βάσης δεδομένων.Η κανονικοποίηση ελαχιστοποιεί τις απολύσεις που υπάρχουν στους πίνακες δεδομένων.Η αποδυνάμωση (αντιστροφή της ομαλοποίησης) προσθέτει πλεονάζοντα δεδομένα ή δεδομένα ομάδας

< Η κανονικοποίηση είναι μια διαδικασία που πραγματοποιείται για την ελαχιστοποίηση των πλεονασμάτων που υπάρχουν στα δεδομένα σε σχεσιακές βάσεις δεδομένων.Η διαδικασία αυτή θα διαιρέσει κυρίως τους μεγάλους πίνακες σε μικρότερους πίνακες με λιγότερες απολύσεις (που ονομάζονται "Κανονικές φόρμες"). Αυτοί οι μικρότεροι πίνακες θα σχετίζονται d μεταξύ τους μέσω καλά καθορισμένων σχέσεων. Σε μια καλά κανονικοποιημένη βάση δεδομένων, κάθε τροποποίηση ή τροποποίηση των δεδομένων θα απαιτεί τροποποίηση μόνο ενός μόνο πίνακα. Η πρώτη κανονική μορφή (1NF), η δεύτερη κανονική μορφή (2NF) και η τρίτη κανονική μορφή (3NF) εισήχθησαν από τον Edgar F. Codd. Το Boyce-Codd Normal Form (BCNF) εισήχθη το 1974 από τους Codd και Raymond F. Boyce. Έχουν καθοριστεί υψηλότερες κανονικές μορφές (4NF, 5NF και 6NF), αλλά χρησιμοποιούνται σπάνια.

Ένας πίνακας που συμμορφώνεται με το 1NF εξασφαλίζει ότι στην πραγματικότητα αντιπροσωπεύει μια σχέση (δηλ. Δεν περιέχει εγγραφές που επαναλαμβάνονται) και δεν περιέχει οποιαδήποτε χαρακτηριστικά που είναι σχεσιακά αποτιμημένα (δηλαδή όλα τα χαρακτηριστικά θα πρέπει να έχουν ατομικές τιμές). Για έναν πίνακα που πρέπει να συμμορφώνεται με το 2NF, θα πρέπει να συμμορφώνεται με το 1NF και οποιοδήποτε χαρακτηριστικό που δεν αποτελεί μέρος οποιουδήποτε υποψήφιου κλειδιού (δηλαδή χαρακτηριστικά μη πρωτεύοντος) θα πρέπει να εξαρτάται πλήρως από οποιοδήποτε από τα υποψήφια κλειδιά στον πίνακα. Σύμφωνα με τον ορισμό του Codd, ένας πίνακας λέγεται ότι βρίσκεται στο 3NF, αν και μόνο αν ο πίνακας βρίσκεται στη δεύτερη κανονική μορφή (2NF) και κάθε χαρακτηριστικό στον πίνακα που δεν ανήκει σε ένα υποψήφιο κλειδί θα εξαρτάται άμεσα από κάθε υποψήφιο κλειδί αυτού του πίνακα. Το BCNF (γνωστό και ως 3. 5NF) καταγράφει μερικές από τις ανωμαλίες που δεν αντιμετωπίζονται από το 3NF.

Τι είναι η αποδυνάμωση;

Η αποδιαμόρφωση είναι η αντίστροφη διαδικασία της διαδικασίας κανονικοποίησης. Η αποδυνάμωση λειτουργεί προσθέτοντας πλεονάζοντα δεδομένα ή ομαδοποιώντας δεδομένα για να βελτιστοποιήσετε την απόδοση. Παρόλο που η προσθήκη πλεοναζόντων στοιχείων είναι αντιπαραγωγική, ορισμένες φορές η denormalization είναι μια πολύ σημαντική διαδικασία για να ξεπεραστούν μερικές από τις αδυναμίες του λογισμικού σχεσιακής βάσης δεδομένων που μπορεί να επιφέρουν σημαντικές ποινές απόδοσης με κανονικοποιημένες βάσεις δεδομένων (ακόμα και συντονισμένες για υψηλότερες επιδόσεις).Αυτό οφείλεται στο ότι η ένωση αρκετών σχέσεων (οι οποίες είναι αποτελέσματα της ομαλοποίησης) για την παραγωγή ενός αποτελέσματος σε ένα ερώτημα μπορεί μερικές φορές να είναι αργή ανάλογα με την πραγματική φυσική εφαρμογή των συστημάτων βάσης δεδομένων.

Ποια είναι η διαφορά μεταξύ της κανονικοποίησης και της αποτύπωσης;

- Η κανονικοποίηση και η απομυθοποίηση είναι δύο διαδικασίες που είναι εντελώς αντίθετες.

- Η κανονικοποίηση είναι η διαδικασία διαίρεσης μεγαλύτερων πινάκων σε μικρότερες που μειώνουν τα πλεονάζοντα δεδομένα, ενώ η απομυθοποίηση είναι η διαδικασία προσθήκης περιττών δεδομένων για τη βελτιστοποίηση της απόδοσης.

- Η κανονικοποίηση πραγματοποιείται για την αποτροπή ανωμαλιών στις βάσεις δεδομένων.

- Η συντριβή γίνεται συνήθως για να βελτιωθεί η απόδοση ανάγνωσης της βάσης δεδομένων, αλλά λόγω των πρόσθετων περιορισμών που χρησιμοποιούνται για την απομυθοποίηση, οι εγγραφές (δηλ., Εισαγωγή, ενημέρωση και διαγραφή) μπορούν να γίνουν πιο αργές. Επομένως, μια απομαρκαρισμένη βάση δεδομένων μπορεί να προσφέρει χειρότερη απόδοση εγγραφής από μια κανονικοποιημένη βάση δεδομένων.

- Συχνά συνιστάται να "εξομαλύνετε μέχρι να πονέσει, να εξομαλύνει μέχρι να λειτουργήσει".