logo

Normalizavimas

Didelė duomenų bazė, apibrėžta kaip vienas ryšys, gali sukelti duomenų dubliavimą. Toks duomenų kartojimas gali sukelti:

  • Padaryti santykius labai didelius.
  • Nelengva prižiūrėti ir atnaujinti duomenis, nes reikėtų ieškoti daugelio susijusių įrašų.
  • Disko vietos ir išteklių švaistymas ir prastas panaudojimas.
  • Padidėja klaidų ir neatitikimų tikimybė.

Taigi, norėdami išspręsti šias problemas, turėtume išanalizuoti ir išskaidyti ryšius su pertekliniais duomenimis į mažesnius, paprastesnius ir gerai struktūrizuotus ryšius, kurie atitinka pageidaujamas savybes. Normalizavimas yra santykių skaidymo į santykius su mažiau požymių procesas.

Kas yra Normalizacija?

  • Normalizavimas – tai duomenų tvarkymo duomenų bazėje procesas.
  • Normalizavimas naudojamas santykio ar santykių rinkinio pertekliniam pertekliui sumažinti. Jis taip pat naudojamas pašalinti nepageidaujamas charakteristikas, tokias kaip įterpimo, atnaujinimo ir ištrynimo anomalijas.
  • Normalizacija padalija didesnę lentelę į mažesnes ir susieja jas naudodama ryšius.
  • Įprasta forma naudojama duomenų bazės lentelės pertekliui sumažinti.

Kodėl mums reikia normalizavimo?

Pagrindinė santykių normalizavimo priežastis yra šių anomalijų pašalinimas. Nepašalinus anomalijų, atsiranda duomenų perteklius ir gali kilti duomenų vientisumo bei kitų problemų, kai duomenų bazė auga. Normalizavimas susideda iš gairių, kurios padeda sukurti gerą duomenų bazės struktūrą.

sklearn tikslumo balas

Duomenų modifikavimo anomalijas galima suskirstyti į tris tipus:

    Įterpimo anomalija:Įterpimo anomalija reiškia, kai į ryšį negalima įterpti naujos eilutės dėl duomenų trūkumo.Ištrynimo anomalija:Ištrynimo anomalija reiškia situaciją, kai ištrynus duomenis netyčia prarandami kai kurie kiti svarbūs duomenys.Atnaujinimo anomalija:Atnaujinimo anomalija yra tada, kai atnaujinant vieną duomenų reikšmę reikia atnaujinti kelias duomenų eilutes.

Įprastų formų tipai:

Normalizavimas vyksta per keletą etapų, vadinamų normaliomis formomis. Individualiems santykiams taikomos normalios formos. Sakoma, kad santykis yra ypač normalios formos, jei jis atitinka apribojimus.

Toliau pateikiami įvairūs įprastų formų tipai:

DBVS normalizavimas
Normali forma apibūdinimas
1NF Ryšys yra 1NF, jei jame yra atominė reikšmė.
2NF Ryšys bus 2NF, jei jis yra 1NF ir visi ne raktiniai atributai yra visiškai funkcionalūs, priklausomai nuo pirminio rakto.
3NF Ryšys bus 3NF, jei jis yra 2NF ir nėra perėjimo priklausomybės.
BCNF Stipresnis 3NF apibrėžimas žinomas kaip įprasta Boyce Codd forma.
4NF Ryšys bus 4NF, jei jis yra įprastos Boyce'o Coddo formos ir neturi daugiareikšmės priklausomybės.
5NF Ryšys yra 5NF. Jei jis yra 4NF ir jame nėra jokios priklausomybės nuo prisijungimo, prisijungimas turėtų būti be nuostolių.

Normalizavimo pranašumai

  • Normalizavimas padeda sumažinti duomenų dubliavimą.
  • Didesnis bendras duomenų bazės organizavimas.
  • Duomenų nuoseklumas duomenų bazėje.
  • Daug lankstesnis duomenų bazės dizainas.
  • Įgyvendina santykių vientisumo sampratą.

Normalizavimo trūkumai

  • Negalite pradėti kurti duomenų bazės nežinodami, ko reikia vartotojui.
  • Našumas pablogėja normalizuojant santykius su aukštesnėmis normaliomis formomis, ty 4NF, 5NF.
  • Tai atima daug laiko ir sunku normalizuoti aukštesnio laipsnio santykius.
  • Neatsargus išskaidymas gali sukelti blogą duomenų bazės dizainą ir sukelti rimtų problemų.