Az egyetlen relációként definiált nagy adatbázis adatduplikációt eredményezhet. Az adatok ilyen ismétlődése a következőket eredményezheti:
- A kapcsolatok nagyon nagyokká tétele.
- Az adatok karbantartása és frissítése nem könnyű, mivel sok rekordban való keresést igényelne.
- A lemezterület és az erőforrások pazarlása és rossz kihasználása.
- A hibák és következetlenségek valószínűsége nő.
Tehát ezeknek a problémáknak a megoldásához a redundáns adatokkal rendelkező kapcsolatokat elemezzük és bontsuk fel kisebb, egyszerűbb és jól strukturált relációkra, amelyek kielégítik a kívánt tulajdonságokat. A normalizálás egy folyamat, amelynek során a kapcsolatokat kevesebb attribútummal rendelkező relációkra bontják.
Mi a normalizálás?
- A normalizálás az adatok rendszerezési folyamata az adatbázisban.
- A normalizálás a relációból vagy relációk halmazából eredő redundanciát minimalizálja. A nemkívánatos jellemzők, például a beillesztési, frissítési és törlési rendellenességek kiküszöbölésére is használható.
- A normalizálás a nagyobb táblát kisebbekre osztja, és kapcsolatok segítségével összekapcsolja őket.
- A normál űrlapot az adatbázistábla redundanciájának csökkentésére használják.
Miért van szükségünk a normalizálásra?
A kapcsolatok normalizálásának fő oka ezen anomáliák megszüntetése. Az anomáliák kiküszöbölésének elmulasztása adatredundanciához vezet, és adatintegritási és egyéb problémákat okozhat az adatbázis növekedésével. A normalizálás egy sor irányelvből áll, amelyek segítenek egy jó adatbázis-struktúra létrehozásában.
Az adatmódosítási anomáliák három típusba sorolhatók:
A normál formák típusai:
A normalizálás a normál formáknak nevezett szakaszokon keresztül működik. A normál formák az egyéni kapcsolatokra vonatkoznak. A relációt különösen normál formájúnak mondjuk, ha megfelel a megszorításoknak.
Az alábbiakban felsoroljuk a normál formák különféle típusait:
Normál forma | Leírás |
---|---|
1NF | Egy reláció 1NF-ben van, ha atomi értéket tartalmaz. |
2NF | Egy reláció 2NF-ben lesz, ha 1NF-ben van, és minden nem kulcs attribútum teljes mértékben az elsődleges kulcstól függ. |
3NF | Egy reláció a 3NF-ben lesz, ha 2NF-ben van, és nincs átmenet-függőség. |
BCNF | A 3NF erősebb meghatározása Boyce Codd normál formájaként ismert. |
4NF | Egy reláció 4NF-ben lesz, ha Boyce Codd normál alakjában van, és nincs többértékű függősége. |
5NF | Egy reláció az 5NF-ben van. Ha a 4NF-ben van, és nem tartalmaz csatlakozási függőséget, a csatlakozásnak veszteségmentesnek kell lennie. |
A normalizálás előnyei
- A normalizálás segít minimalizálni az adatredundanciát.
- Nagyobb általános adatbázis-szervezés.
- Adatkonzisztencia az adatbázison belül.
- Sokkal rugalmasabb adatbázis-tervezés.
- Erősíti a kapcsolati integritás fogalmát.
A normalizálás hátrányai
- Nem kezdheti el az adatbázis felépítését addig, amíg nem tudja, mire van szüksége a felhasználónak.
- A teljesítmény romlik, ha a kapcsolatokat magasabb normálformákhoz, azaz 4NF, 5NF-hez normalizáljuk.
- Nagyon időigényes és nehéz a kapcsolatok magasabb fokú normalizálása.
- A gondatlan lebontás rossz adatbázis-tervezést eredményezhet, ami komoly problémákhoz vezethet.