Základy normalizace databáze

Normalizace databáze

Pokud pracujete s databázemi na nějakou dobu, pravděpodobně jste slyšeli termín normalizace. Možná vás někdo požádal "Je normalizována tato databáze?" nebo "Je to v BCNF ?" Normalizace se často odkládá jako luxus, který mají pouze akademici čas. Ovšem znalost principů normalizace a jejich uplatnění na každodenní práci s databázovými úlohami není opravdu komplikovaná a mohla by drasticky zlepšit výkon vašeho DBMS.

V tomto článku představíme koncept normalizace a krátce se podíváme na nejběžnější normální formy.

Co je normalizace?

Normalizace je proces efektivního uspořádání dat v databázi. Existují dva cíle normalizačního procesu: odstranění redundantních dat (například ukládání stejných dat do více tabulek) a zajištění závislostí dat smysluplné (pouze ukládání souvisejících údajů do tabulky). Obě tyto cíle jsou hodné, protože snižují množství prostoru, který databáze spotřebovává, a zajišťují, že jsou data logicky uložena.

Normální formuláře

Databázová komunita vytvořila řadu pokynů pro zajištění normalizace databází. Tito jsou označováni jako normální formy a jsou číslovány z jedné (nejnižší formy normalizace, označované jako první normální forma nebo 1NF) přes pět (pátá normální forma nebo 5NF). V praktických aplikacích často uvidíte 1NF, 2NF a 3NF spolu s občasným 4NF. Pátá normální forma je velmi zřídka vidět a nebude v tomto článku diskutována.

Než začneme diskutovat o normálních formách, je důležité zdůraznit, že jsou pouze pokyny a pokyny. Občas se stává nutností, aby se od nich odklonily, aby splnily praktické obchodní požadavky. Pokud však dochází ke změnám, je nesmírně důležité vyhodnotit všechny možné důsledky, které by mohly mít ve vašem systému, a zohlednit možné nesrovnalosti. To znamená, prozkoumejte normální formy.

První normální formulář (1NF)

První normální forma (1NF) nastavuje velmi základní pravidla pro organizovanou databázi:

Druhý normální formulář (2NF)

Druhá normální forma (2NF) se dále zabývá pojmem odstranění duplicitních dat :

Třetí normální formulář (3NF)

Třetí normální forma (3NF) jde o jeden velký krok dále:

Boyce-Codd normální forma (BCNF nebo 3.5NF)

Boyce-Codd Normal Form, také nazývaný jako "třetí a půl (3.5) normální forma", přidává ještě jeden požadavek:

Čtvrtá normální forma (4NF)

Konečně čtvrtá normální forma (4NF) má jednu další požadavek:

Pamatujte si, že tyto normalizační pokyny jsou kumulativní. Pro databázi, která má být v 2NF, musí nejprve splnit všechna kritéria databáze 1NF.

Mám normalizovat?

Zatímco normalizace databáze je často dobrý nápad, není to absolutní požadavek. Ve skutečnosti existují případy, kdy úmyslné porušení pravidel normalizace je správnou praxí. Pro více informací o tomto tématu si přečtěte: Mám normalizovat databázi?

Pokud chcete zajistit, aby byla vaše databáze normalizována, začněte s učením, jak dát svou databázi do první normální formy .