Kas yra duomenų bazės normalizavimas?

Duomenų bazės normalizavimas naudojamas duomenų bazių valdymo sistemoje (DBVS), ypač su reliacinėmis duomenų bazėmis, siekiant sumažinti perteklinę informaciją ir taip sumažinti duomenų anomalijas. Anomalijos gali atsirasti dėl informacijos, kuri yra prastai sugrupuota arba perteklinė, ir gali sukelti įvairių padarinių, pvz., neteisingą duomenų įterpimą arba visos duomenų grupės ištrynimą. Naudojant duomenų bazės normalizavimą, šių anomalijų išvengiama, o atmintis paprastai atlaisvinama, kad duomenų bazė galėtų veikti efektyviau. Normalizavimo funkcijos turėtų būti naudojamos periodiškai, maždaug kartą per savaitę, kad duomenų bazė būtų atnaujinta ir nebūtų netikėtų problemų.

Niekas nekuria reliacinės duomenų bazės, kad joje būtų perteklinių duomenų, tačiau tai paprastai nutinka nepaisant visų duomenų bazės kūrėjo pastangų. Pavyzdžiui, naudojant darbuotojų duomenų bazę, darbuotojas gali būti įtrauktas į kelias lenteles. Kai atleidimas vyksta dideliu mastu, atsiranda anomalijų. Duomenų bazių administratoriai paprastai negali sugauti visų perteklinių duomenų, todėl duomenų bazės normalizavimas yra geriausias būdas išspręsti šią problemą.

Pirmoji duomenų bazės normalizavimo užduotis yra ištrinti arba perkelti pasikartojančią informaciją. Jei informacija nereikalinga, ji bus ištrinta iš duomenų bazės. Duomenims, kurių reikia kitose lentelėse, normalizuojant siekiama sukurti geresnes reliacines lenteles. Normalizavimo funkcijos išardys dideles lenteles, pataisys ir sustiprins ryšius tarp duomenų ir išskirs informaciją, kad duomenų keitimas būtų lengvesnis duomenų bazėje. Atimant pasikartojančius duomenis, paprastai atlaisvinama atmintis, todėl duomenų bazė veikia sklandžiau ir greičiau.

Anomalijos atsiranda atsisakius arba pamiršus normalizuoti duomenų bazę, todėl informacija gali tapti nenaudinga. Atnaujinimo anomalija yra tada, kai kas nors atnaujina duomenis, bet užuot pakeitus tikslinius duomenis, duomenų bazė sukurs naują įrašą, kuris yra labai perteklinis. Esant įterpimo anomalijai, įrašas įtraukiamas į duomenų bazę, bet nieko negalima pridėti prie naujo įrašo. Dėl ištrynimo anomalijų įrašas bus ištrintas atsitiktinai. Tai tik keletas įprastų anomalijų, atsirandančių, jei duomenų bazė nėra normalizuojama.

Nėra tvirto standarto, nurodančio administratoriui, kada jis ar ji turėtų naudoti normalizavimo funkcijas, kad užtikrintų duomenų bazės veiksmingumą. Paprastai geriausia planuoti duomenų bazės normalizavimą maždaug kartą per savaitę, nes taip visa nauja per savaitę pridėta informacija nepatirs anomalijų. Mažesnes duomenų bazes tikriausiai galima normalizuoti kartą per mėnesį, o labai dideles duomenų bazes – du kartus per savaitę, nes didesni duomenų kiekiai padidina anomalijų tikimybę. Tačiau standarto nėra, todėl duomenų bazės administratorius paprastai pasirenka tvarkaraštį, kuris, jo nuomone, yra geriausias duomenų bazei.