Co je to normalizace databáze?
Normalizace databáze se používá v systému správy databází (DBMS), konkrétně u relačních databází, ke snížení nadbytečných informací, a tudíž k minimalizaci anomálií dat. Anomálie mohou nastat z informací, které jsou špatně seskupeny nebo nadbytečné a mohou způsobit řadu účinků, jako je nesprávné vložení dat nebo vymazání celé skupiny dat. Použitím normalizace databáze se těmto anomáliím vyhneme a paměť se obvykle uvolní, aby databáze mohla fungovat efektivněji. Normalizační funkce by se měly používat pravidelně, přibližně jednou týdně, aby byla databáze čerstvá a bez neočekávaných problémů.
Nikdo nevytváří relační databázi, která má záměrně redundantní data, ale obvykle k tomu dochází i přes snahu návrháře databáze. Například v databázi zaměstnanců může být zaměstnanec uveden v několika tabulkách. Pokud dojde k nadbytečnosti ve velkém měřítku, vznikají anomálie. Správci databází obvykle nemohou zachytit všechna nadbytečná data, takže normalizace databáze je nejlepším způsobem, jak tento problém napravit.
Prvním úkolem normalizace databáze je vymazat nebo přesunout opakující se informace. Pokud informace nejsou potřebné, budou odstraněny z databáze. U dat potřebných v jiných tabulkách se normalizace snaží vytvořit lepší relační tabulky. Normalizační funkce rozdělí velké tabulky, opraví a zlepší vztahy mezi daty a izoluje informace, aby se usnadnila modifikace dat v databázi. Odečtením opakujících se dat je paměť obvykle uvolněna, což umožňuje hladší a rychlejší běh databáze.
Anomálie vznikají v důsledku odmítnutí nebo zapomenutí normalizovat databázi a mohou tyto informace učinit zbytečnými. Anomálie aktualizace je, když někdo aktualizuje data, ale namísto změny cílených dat vytvoří databáze nový záznam, který je vysoce nadbytečný. S anomálií vložení je záznam přidán do databáze, ale pod nový záznam nelze přidat nic. Odstraněním anomálií dojde k náhodnému smazání záznamu. Toto je jen několik běžných anomálií, ke kterým dojde, pokud není databáze normalizována.
Neexistuje žádný pevný standard, který by administrátorovi říkal, kdy má používat normalizační funkce k zajištění účinnosti databáze. Plánování normalizace databáze přibližně jednou týdně je obvykle nejlepší, protože to udržuje všechny nové informace přidané v průběhu týdne před anomáliemi. Menší databáze pravděpodobně mohou být normalizovány jednou za měsíc a velmi velké databáze by měly být prováděny dvakrát týdně, protože větší množství dat má větší šanci na anomálie. Neexistuje však žádný standard, takže správce databáze obvykle vybere plán, který považuje za nejlepší pro databázi.