Diferența Dintre Normalizare și Denormalizare

Diferența Dintre Normalizare și Denormalizare
Diferența Dintre Normalizare și Denormalizare

Video: Diferența Dintre Normalizare și Denormalizare

Video: Diferența Dintre Normalizare și Denormalizare
Video: Top 10 cele mai Importante Formule Excel pentru Incepatori 2024, Martie
Anonim

Normalizare vs Denormalizare

Bazele de date relaționale sunt formate din relații (tabele conexe). Tabelele sunt formate din coloane. Dacă tabelele sunt două mari (adică prea multe coloane într-un singur tabel), atunci pot apărea anomalii ale bazei de date. Dacă tabelele sunt două mici (adică baza de date este alcătuită din multe tabele mai mici), ar fi ineficient pentru interogare. Normalizarea și Denormalizarea sunt două procese care sunt utilizate pentru a optimiza performanța bazei de date. Normalizarea minimizează redundanțele care sunt prezente în tabelele de date. Denormalizarea (inversarea normalizării) adaugă date redundante sau date de grup.

Ce este normalizarea?

Normalizarea este un proces care se desfășoară pentru a minimiza concedierile care sunt prezente în date în bazele de date relaționale. Acest proces va împărți în principal tabelele mari în tabele mai mici, cu redundanțe mai puține (numite „forme normale”). Aceste tabele mai mici vor fi legate între ele prin relații bine definite. Într-o bază de date bine normalizată, orice modificare sau modificare a datelor va necesita modificarea unui singur tabel. Prima formă normală (1NF), a doua formă normală (2NF) și a treia formă normală (3NF) au fost introduse de Edgar F. Codd. Boyce-Codd Normal Form (BCNF) a fost introdus în 1974 de Codd și Raymond F. Boyce. Formele normale superioare (4NF, 5NF și 6NF) au fost definite, dar sunt utilizate rar.

Un tabel care respectă 1NF asigură faptul că reprezintă de fapt o relație (adică nu conține nicio înregistrare care se repetă) și nu conține niciun atribut care are valoare relațională (adică toate atributele ar trebui să aibă valori atomice). Pentru ca un tabel să respecte 2NF, ar trebui să fie respectat 1NF și orice atribut care nu face parte din nici o cheie candidată (adică atribute non-prime) ar trebui să depindă pe deplin de oricare dintre cheile candidate din tabel. Conform definiției Codd, se spune că un tabel este în 3NF, dacă și numai dacă, tabelul respectiv este în a doua formă normală (2NF) și fiecare atribut din tabel care nu aparține unei chei candidate ar trebui să depindă direct de fiecare cheia candidată a acelui tabel. BCNF (cunoscut și sub numele de 3.5NF) surprinde unele anomalii care nu sunt abordate de 3NF.

Ce este denormalizarea?

Denormalizarea este procesul invers al procesului de normalizare. Denormalizarea funcționează prin adăugarea de date redundante sau gruparea datelor pentru a optimiza performanța. Chiar dacă, adăugarea de date redundante sună contraproductiv, uneori denormalizarea este un proces foarte important pentru a depăși unele dintre neajunsurile din software-ul bazei de date relaționale care pot atrage penalități de performanță grele cu baze de date normalizate (chiar reglate pentru performanțe mai mari). Acest lucru se datorează faptului că unirea mai multor relații (care sunt rezultatele normalizării) pentru a produce un rezultat la o interogare poate fi uneori lentă în funcție de implementarea fizică efectivă a sistemelor de baze de date.

Care este diferența dintre Normalizare și Denormalizare?

- Normalizarea și denormalizarea sunt două procese care sunt complet opuse.

- Normalizarea este procesul de împărțire a tabelelor mai mari în cele mai mici, reducând datele redundante, în timp ce denormalizarea este procesul de adăugare a datelor redundante pentru a optimiza performanța.

- Normalizarea se realizează pentru a preveni anomaliile bazelor de date.

- Denormalizarea se efectuează de obicei pentru a îmbunătăți performanța de citire a bazei de date, dar datorită constrângerilor suplimentare utilizate pentru denormalizare, scrierile (adică operațiile de inserare, actualizare și ștergere) pot deveni mai lente. Prin urmare, o bază de date denormalizată poate oferi o performanță de scriere mai slabă decât o bază de date normalizată.

- Este adesea recomandat să „normalizați până vă doare, denormalizați până când funcționează”.

Recomandat: