Denormalizace

Stabilní verze byla odhlášena 29. srpna 2017 . Existují neověřené změny v šablonách nebo .

Denormalizace ( angl.  denormalization ) - záměrné uvedení struktury databáze do stavu, který nesplňuje kritéria normalizace , obvykle se provádí za účelem urychlení operací čtení z databáze přidáním nadbytečných dat.

Základní informace

Eliminace datových anomálií podle teorie relačních databází vyžaduje, aby každá databáze byla normalizována, tj. aby odpovídala požadavkům normálních forem . Shoda s požadavky na normalizaci minimalizuje redundanci dat v databázi a zajišťuje, že se zabrání mnoha typům logických aktualizací a chyb při načítání.

Při dotazování na velké množství dat však operace spojení normalizovaného vztahu trvá nepřijatelně dlouho. Výsledkem je, že v situacích, kdy nelze výkon takových dotazů zlepšit jinými prostředky, lze provést denormalizaci - složení několika vztahů (tabulek) do jedné, která je zpravidla ve druhém , ale ne v třetí normální forma. Nový vztah je ve skutečnosti uloženým výsledkem operace spojení původních vztahů.

Díky tomuto přepracování již není operace načítání spojení potřeba a dotazy načítání, které dříve vyžadovaly spojení, běží rychleji.

Je třeba mít na paměti, že denormalizace se vždy provádí za cenu zvýšení rizika narušení integrity dat během operací úprav. Denormalizace by proto měla být provedena jako poslední možnost, pokud nejsou možná žádná jiná opatření ke zlepšení výkonu. V ideálním případě, pokud je denormalizovaná databáze pouze pro čtení.

Kromě toho je třeba vzít v úvahu, že zrychlení některých dotazů na denormalizovanou databázi může být doprovázeno zpomalením jiných dotazů, které byly dříve prováděny samostatně na normalizovaných relacích.

Viz také