La Normalizzazione
Normalizzazione
Normalizzazione è il processo di semplificazione di
un data base per ottenere la struttura ottimale
Forme Normali sono progressioni lineari di regole
da applicare al data base, con ciascuna forma
normale si ottiene un miglioramento del data base
Le nuove tecnologie Software
18 December, 2015 - slide
Normalizzazione
“Sarai Normale in pochi minuti...!”
Le nuove tecnologie Software
18 December, 2015 - slide
Forme normali
Una forma normale è una proprietà di una base di dati
relazionale che ne garantisce la “qualità”, cioè l'assenza di
determinati difetti
Quando una relazione non è normalizzata:


presenta ridondanze,
si presta a comportamenti poco desiderabili durante gli
aggiornamenti
Le forme normali sono di solito definite sul modello
relazionale, ma hanno senso in altri contesti, ad esempio il
modello E-R
Le nuove tecnologie Software
18 December, 2015 - slide
Normalizzazione
Procedura che permette di trasformare schemi non normalizzati
in schemi che soddisfano una forma normale
La normalizzazione va utilizzata come tecnica di verifica dei
risultati della progettazione di una base di dati
Non costituisce una metodologia di progettazione
Le nuove tecnologie Software
18 December, 2015 - slide
Una relazione con anomalie
Impiegato Stipendio Progetto
Rossi
20
Marte
Verdi
35
Giove
Verdi
35
Venere
Neri
55
Venere
Neri
55
Giove
Neri
55
Marte
Mori
48
Marte
Mori
48
Venere
Bianchi
48
Venere
Bianchi
48
Giove
Le nuove tecnologie Software
Bilancio
2
15
15
15
15
2
2
15
15
15
Funzione
tecnico
progettista
progettista
direttore
consulente
consulente
direttore
progettista
progettista
direttore
18 December, 2015 - slide
Anomalie
Lo stipendio di ciascun impiegato è ripetuto in tutte le ennuple
relative

ridondanza
Se lo stipendio di un impiegato varia, è necessario andarne a
modificare il valore in diverse ennuple

anomalia di aggiornamento
Se un impiegato interrompe la partecipazione a tutti i progetti,
dobbiamo cancellarlo

anomalia di cancellazione
Un nuovo impiegato senza progetto non può essere inserito

anomalia di inserimento
Le nuove tecnologie Software
18 December, 2015 - slide
Perché questi fenomeni indesiderabili?
abbiamo usato un'unica relazione per rappresentare
informazioni eterogenee



Le nuove tecnologie Software
gli impiegati con i relativi stipendi
i progetti con i relativi bilanci
le partecipazioni degli impiegati ai progetti con le relative funzioni
18 December, 2015 - slide
Prima delle forme normali: relazioni
Tabelle devono descrivere entità singole
Non sono permessi duplicati di righe (PK )
Le nuove tecnologie Software
18 December, 2015 - slide
Prima Forma Normale
La prima Forma Normale (1NF) dice che tutte le
colonne devono essere atomiche
Una colonna un valore
Non ci sono unità ripetitive
Le nuove tecnologie Software
18 December, 2015 - slide
Seconda Forma Normale
Una tabella è detta in Seconda Forma Normale
(2NF), se è in 1NF e ciascuna colonna dipende (in
senso stretto) dalla primary key
“La chiave, solo la chiave, nient’altro che la chiave,
aiutami tu Codd.”
Tabelle devono memorizzare solo dati relativi ad una
sola entità descritta dalla PK
Le nuove tecnologie Software
18 December, 2015 - slide
Seconda Forma Normale
2NF viene ottenuta spezzando tabelle in parti
normalizzate che descrivano una singola entità
Questa fase è detta decomposizione
Le nuove tecnologie Software
18 December, 2015 - slide
Terza Forma Normale
Una tabella è detta in Terza Forma Normale (3NF),
se è in 2NF e se tutte le colonne sono indipendenti
tra loro
Ad esempio colonne calcolate
Tabelle di lookup
Le nuove tecnologie Software
18 December, 2015 - slide
…per diventare Normali
1NF: Una colonna un valore. Rimuovere gruppi ripetuti
2NF: Spezzare in tabelle che descrivano entità
separate. Spezzare le PK composte
3FN: Rimuovere colonne calcolate e creare tabelle di
lookup
Le nuove tecnologie Software
18 December, 2015 - slide
Quando Denormalizzare
Performance
Quando gli utenti lo richiedono (anche se questo
puo’ essere evitato)
Esempi tipici:



Le nuove tecnologie Software
rinuncia alla 3FN
Utilizzo di campi calcolati per saldo clienti
Statistica
18 December, 2015 - slide
Come Denormalizzare
Farlo deliberatamente
Avere una ottima regione per farlo
Essere ben consci di cosa questo comporti in termini di
performance
Documentare la decisione
Le nuove tecnologie Software
18 December, 2015 - slide
Scarica

25_Normalizzazione - Studenti Dipartimento di Ingegneria