Ali naj normaliziram svojo bazo podatkov?

Normalizacija v realnem svetu

Normalizacija baz podatkov je ena od svetih krav razvoja aplikacij. Vsak dodiplomski programski tečaj, ki ste ga izbrali ali si ga prebral, verjetno prevaja pomembnost normalizacije podatkovnih baz .

Čas je, da se spoprijemam s temi trdnjami. Včasih je v redu, da se vaša baza podatkov denormalizira!

Kdaj naj normalizirate?

Normalizacija baz podatkov varuje integriteto podatkov. V številnih primerih je odlična ideja, pri čemer bi morali začeti s katerim koli načrtovanjem baze podatkov z normalizacijo v mislih. Če lahko svojo bazo podatkov normalizirate, pojdite na to! Pravzaprav, tukaj je nekaj praktičnih nasvetov o tem, kako normalizirati svojo bazo podatkov na tej spletni strani:

Bottom line je, da bi morali vašo bazo podatkov normalizirati, razen če imate resnično dober razlog, da tega ne storite. Normalno je običajno zvočna praksa. Zmanjšuje odvečne podatke, optimizira uspešnost in zmanjša verjetnost, da boste imeli težave z integriteto podatkov, ki izhajajo iz istih podatkov, ki so raztreseni v različnih kotih vaše baze podatkov.

Nekaj ​​dobrih razlogov, da se ne normalizirajo

To je dejstvo, da obstaja nekaj dobrih razlogov, da se vaša zbirka podatkov ne normalizira. Oglejmo si nekaj:

  1. Pridruži se drago . Normiranje vaše zbirke podatkov pogosto vključuje ustvarjanje veliko tabel. Pravzaprav lahko enostavno zaključite s tem, kar mislite, da bi morala biti preprosta poizvedba, ki obsega pet ali 10 tabel. Če ste kdaj poskusili sodelovati s petimi mizami, veste, da deluje načeloma, vendar je v praksi težko počasi. Če ustvarjate spletno aplikacijo, ki temelji na večkratnih poizvedbah z večjimi mizami, boste morda menili, da razmišljate: »Če samo ta baza podatkov ni bila normalizirana!« Ko slišiš to misel v glavi, je pravi čas, da razmislite o denormalizaciji. Če lahko vse podatke, ki jih uporablja ta poizvedba, shranite v eno samo tabelo, ne da bi res ogrozili integriteto podatkov, pojdite na to! Bodite upornik in denormalizirajte bazo podatkov. Ne boš pogledal nazaj!
  2. Normalizirana oblika je težka . Če delate s kompleksno shemo baze podatkov , boste verjetno znali poiskati glavo proti tabeli zaradi zapletenosti normalizacije. Kot preprosto pravilo palca, če porabite cel dan, ko poskušate ugotoviti, kako se premakniti v četrto normalno obliko, se lahko premaknete normalno. Stopite nazaj in se vprašajte, ali je res vredno nadaljevati.
  1. Hitro in umazano mora biti hitro in umazano . Če samo razvijate prototip, storite le, karkoli hitro deluje. Resnično. V redu je. Hitri razvoj aplikacij je včasih pomembnejši od elegantne oblike. Ne pozabite, da se vrnete nazaj in natančno preučite vašo zasnovo, ko ste pripravljeni preiti na fazo izdelave prototipov. Cena, ki jo plačate za hitro in umazano zasnovo baze podatkov, je, da jo boste morda morali vrniti in začeti znova, ko je čas za gradnjo za proizvodnjo.
  2. Če uporabljate bazo podatkov NoSQL , tradicionalna normalizacija ni zaželena. Namesto tega oblikujte bazo podatkov z uporabo modela BASE, ki je veliko bolj odpuščen. To je uporabno, če shranjujete nestrukturirane podatke, kot so e-poštna sporočila, slike ali videoposnetki.

Nekatere besede previdnosti

Normalizacija baz podatkov je na splošno dobra ideja. Poskusite slediti načelom normalizacije, če je to razumno. Ampak, če vsi kazalniki kažejo na normalizacijo, ki so preveč zapletene za izvajanje, razmislite o pristopu, ki bo opravil delo, medtem ko še vedno varuje vaše podatke.

Končno - če se odločite, da boste oddaljili od pravil normalizacije, bodite pozorni na to, kako uveljavljate integriteto baze podatkov. Če shranjujete odvečne podatke, namestite sprožilce in druge kontrolnike, da zagotovite, da podatki ostanejo skladni.