Priporočena, 2024

Izbira Urednika

Razlika med normalizacijo in denormalizacijo

Normalizacija in denormalizacija sta metoda, ki se uporablja v podatkovnih bazah. Izrazi so različni, kjer je normalizacija tehnika zmanjševanja anomalij vstavljanja, brisanja in posodabljanja z odpravo odvečnih podatkov. Po drugi strani pa je denormalizacija inverzni proces normalizacije, kjer se redundanca doda k podatkom za izboljšanje učinkovitosti specifične aplikacije in celovitosti podatkov.

Normalizacija preprečuje izgubo prostora na disku, tako da zmanjša ali odpravi redundanco.

Primerjalna tabela

Podlaga za primerjavoNormalizacijaDenormalizacija
OsnovnoNormalizacija je proces ustvarjanja set sheme za shranjevanje nepotrebnih in skladnih podatkov.Denormalizacija je proces združevanja podatkov, tako da ga lahko hitro poizvedujemo.
NamenZa zmanjšanje redundance podatkov in nedoslednosti.Doseči hitrejšo izvedbo poizvedb z uvedbo redundance.
Uporabljeno vSistem OLTP, kjer je poudarek na hitrejšem vstavljanju, brisanju in posodabljanju anomalij ter shranjevanju kakovostnih podatkov.OLAP sistem, kjer je poudarek na hitrejšem iskanju in analizi.
Celovitost podatkovOhranjenNe sme zadržati
OdpuščanjeIzločenDodano
Število tabelPovečaZmanjša
Prostor na diskuOptimizirana uporabaIzguba

Opredelitev normalizacije

Normalizacija je metoda učinkovite razporeditve podatkov v bazo podatkov. Vključuje izdelavo tabel in vzpostavitev odnosov med temi tabelami v skladu z nekaterimi določenimi pravili. Odpuščanje in nedoslednost odvisnosti je mogoče odstraniti s temi pravili, da bi postala bolj prilagodljiva.

Redundantni podatki zapravljajo prostor na disku, povečujejo neskladnost podatkov in upočasnjujejo poizvedbe DML. Če so isti podatki prisotni na več kot enem mestu in je posodobitev zavezana tem podatkom, mora biti sprememba prikazana na vseh lokacijah. Zaradi nedoslednih podatkov je iskanje podatkov in dostop do njih težje, če se izgubi pot do nje.

Za izvedbo normalizacije obstajajo različni razlogi, kot so preprečevanje redundance, posodabljanje anomalij, nepotrebno kodiranje, shranjevanje podatkov v obliko, ki omogoča lažje in natančnejše prilagajanje spremembam ter uveljavlja omejitev podatkov.

Normalizacija vključuje analizo funkcionalnih odvisnosti med atributi. Odnosi (tabele) so razčlenjeni z anomalijami, da bi ustvarili odnose s strukturo. Pomaga pri odločanju, kateri atributi naj bodo razvrščeni v razmerje.

Normalizacija v osnovi temelji na konceptih normalnih oblik . Za tabelo relacij velja, da je v normalni obliki, če izpolnjuje določen niz omejitev. Obstajajo 6 normalnih oblik: 1NF, 2NF, 3NF, BCNF, 4NF in 5NF. Normalizacija bi morala odpraviti odpuščanje, vendar ne na račun integritete.

Opredelitev denormalizacije

Denormalizacija je inverzni proces normalizacije, kjer se normalizirana shema pretvori v shemo, ki ima odvečne informacije. Učinkovitost se izboljša z uporabo redundance in ohranitvijo odvečnih podatkov v skladu. Razlog za izvedbo denormalizacije so režijski stroški, ki jih v procesorju poizvedb proizvede preveč normalizirana struktura.

Denormalizacijo lahko definiramo tudi kot metodo shranjevanja povezav odnosov nadrejene normalne oblike kot bazično razmerje, ki je v spodnji normalni obliki. Zmanjša število tabel, zapletene tabele pa se povežejo, ker lahko večje število povezav upočasni postopek. Obstajajo različne denormalizacijske tehnike, kot so: Shranjevanje izpeljanih vrednosti, vnaprejšnje združevanje tabel, trdo kodiranih vrednosti in hranjenje podrobnosti z glavnim strežnikom itd.

V tem primeru denormalizacijski pristop poudarja koncept, da bi z umestitvijo vseh podatkov na enem mestu odpravili potrebo po iskanju teh več datotek za zbiranje teh podatkov. Pri denormalizaciji sledi osnovna strategija, kjer je najbolj odločujoč proces izbran, da preuči tiste spremembe, ki bodo na koncu izboljšale učinkovitost. In najbolj osnovna sprememba je, da dodajanje več atributov v obstoječo tabelo za zmanjšanje števila združitev.

Ključne razlike med normalizacijo in denormalizacijo

  1. Normalizacija je tehnika deljenja podatkov v več tabel, da se zmanjša redundanca in nedoslednost podatkov ter doseže celovitost podatkov. Po drugi strani pa je denormalizacija tehnika združevanja podatkov v eno samo tabelo, ki omogoča hitrejše pridobivanje podatkov.
  2. Normalizacija se uporablja v sistemu OLTP, ki poudarja, da je vstavljanje, brisanje in posodabljanje anomalij hitrejše. V nasprotju s tem se Denormalizacija uporablja v sistemu OLAP, ki poudarja hitrejše iskanje in analizo.
  3. Celovitost podatkov se ohranja v procesu normalizacije, medtem ko je v denormalizaciji integriteta podatkov težje ohraniti.
  4. Redundantni podatki se odpravijo, ko se izvede normalizacija, medtem ko denormalizacija poveča odvečne podatke.
  5. Normalizacija poveča število tabel in pridružitev. Nasprotno pa denormalizacija zmanjša število tabel in se pridruži.
  6. Prostor na disku se izgubi v denormalizaciji, ker so isti podatki shranjeni na različnih mestih. Nasprotno, prostor na disku je optimiziran v normalizirani tabeli.

Zaključek

Normalizacija in denormalizacija sta uporabna glede na situacijo. Normalizacija se uporablja, kadar so nujno potrebne hitrejše vstavljanje, brisanje in posodabljanje nepravilnosti ter doslednost podatkov. Po drugi strani pa se Denormalizacija uporablja, ko je hitrejše iskanje pomembnejše in optimizira zmogljivost branja. Prav tako zmanjšuje režijske stroške, ki jih ustvarijo pretirano normalizirani podatki ali zapleteni priključki tabele.

Top