Che cos’è la normalizzazione del database?

La normalizzazione del database viene utilizzata in un sistema di gestione di database (DBMS), in particolare con database relazionali, per ridurre le informazioni ridondanti e quindi ridurre al minimo le anomalie dei dati. Le anomalie possono verificarsi da informazioni scarsamente raggruppate o ridondanti e possono causare una serie di effetti, come l’inserimento errato dei dati o la cancellazione di un intero gruppo di dati. Utilizzando la normalizzazione del database, queste anomalie vengono evitate e la memoria viene in genere liberata in modo che il database possa funzionare in modo più efficiente. Le funzioni di normalizzazione dovrebbero essere utilizzate periodicamente, circa una volta alla settimana, per mantenere il database aggiornato e privo di problemi imprevisti.

Nessuno crea un database relazionale per avere dati ridondanti di proposito, ma questo in genere accade nonostante il massimo sforzo del progettista del database. Ad esempio, con un database di dipendenti, un dipendente potrebbe essere elencato su più tabelle. Quando si verifica una ridondanza su larga scala, si verificano anomalie. Gli amministratori di database in genere non possono rilevare tutti i dati ridondanti, quindi la normalizzazione del database è il modo migliore per correggere questo problema.

Il primo compito della normalizzazione del database è cancellare o spostare informazioni ripetute. Se le informazioni non sono necessarie, verranno eliminate dal database. Per i dati necessari in altre tabelle, la normalizzazione cerca di creare tabelle relazionali migliori. Le funzioni di normalizzazione abbatteranno tabelle di grandi dimensioni, correggeranno e miglioreranno le relazioni tra i dati e isoleranno le informazioni per rendere più semplice la modifica dei dati nel database. Sottraendo i dati ripetuti, la memoria viene in genere liberata, il che consente al database di funzionare in modo più fluido e veloce.

Le anomalie si verificano dal rifiuto o dalla dimenticanza di normalizzare il database e possono rendere inutili le informazioni. Un’anomalia di aggiornamento si verifica quando qualcuno aggiorna i dati, ma invece di modificare i dati di destinazione, il database creerà un nuovo record altamente ridondante. Con un’anomalia di inserimento, viene aggiunto un record al database, ma non è possibile aggiungere nulla sotto il nuovo record. Le anomalie di eliminazione elimineranno casualmente un record. Queste sono solo alcune anomalie comuni che si verificano se il database non viene normalizzato.

Non esiste uno standard fisso che dica a un amministratore quando deve utilizzare le funzioni di normalizzazione per garantire l’efficacia del database. La pianificazione della normalizzazione del database circa una volta alla settimana di solito è la migliore perché impedisce a tutte le nuove informazioni aggiunte durante la settimana di presentare anomalie. I database più piccoli probabilmente possono essere normalizzati una volta al mese e i database molto grandi dovrebbero essere eseguiti due volte a settimana perché quantità maggiori di dati comportano una maggiore possibilità di anomalie. Tuttavia, non esiste uno standard, quindi l’amministratore del database in genere sceglie una pianificazione che ritiene sia la migliore per il database.