Forme normali. Le forme normali sono di solito definite sul modello relazionale, ma hanno senso in altri contesti, ad esempio il modello E-R

Documenti analoghi
Forme normali. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill. La normalizzazione. Normalizzazione. Una relazione con anomalie.

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, La normalizzazione

Normalizzazione di Basi di Dati

LA NORMALIZZAZIONE. Seconda parte

LA NORMALIZZAZIONE. Prima parte

Corso di Basi di Dati

Corso di Basi di Dati A.A. 2013/2014

La normalizzazione. CdL Informatica Applicata UNIURB - Dott. Maurizio Maffi

Normalizzazione. Definizione

Forme normali 1NF,2NF,3NF,BCNF

Forme normali. Prima forma normale (1NF) Seconda forma normale(2nf) Relazione non in 1NF

Progettazione di basi di dati D B M G

La in verifica forma teoria normale della normalizzazione fornisce comunque uno strumento di già

Normalizzazione Progettazione di basi di dati Normalizzazione Normalizzazione Normalizzazione e modello ER Esempio Esame Superato

Progettazione di basi di dati

Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a

Normalizzazione. Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica

Elementi di Normalizzazione

Basi di Dati e Sistemi Informativi. Raffinamento dello schema e Normalizzazione nei database relazionali

Decomposizione senza perdita. Decomposizione senza perdita. Conservazione delle dipendenze. Conservazione delle dipendenze

Angelo Chianese, Vincenzo Moscato, Antonio Picariello, Lucio Sansone. Basi di dati per la gestione dell'informazione 2/ed McGraw-Hill Capitolo 6

Normalizzazione di Basi di Dati. Prof. Francesco Accarino IIS Altiero Spinelli via Leopardi 132 Sesto San Giovanni

2. Complementi di metodologia di progettazione. 2. Complementi di metodologia di progettazione. Fasi della progettazione. COSA concettuale COME

Progettare Basi di Dati

Normalizzazione di schemi relazionali

Forme normali e normalizzazione

La normalizzazione delle basi di dati

PROGETTAZIONE DI DATABASE

Normalizzazione Delle Relazioni

Il modello Relazionale.

Vincoli di integrità Normalizzazione

Normalizzazione. Relazionali

Normalizzazione. Normalizzazione. Normalizzazione e modello ER. Esempio. Normalizzazione

Progettazione logica e normalizzazione (lucidi del corso)

Normalizzazione di schemi relazionali

Capitolo 9. Esercizio 9.1. Esercizio 9.2

Corso di Basi di Dati

Normalizzazione. Lezione 7. Normalizzazione e integrità referenziale. Consideriamo la seguente tabella. Anomalie di inserimento

Corso sulla Normalizzazione. Prime 3 forme normali

Progettazione logica: normalizzazione di schemi relazionali

PIL Percorsi di Inserimento Lavorativo

Basi di dati I 27 gennaio 2016 Esame Compito A Tempo a disposizione: un ora e quarantacinque minuti. Libri chiusi.

Introduzione alla normalizzazione dei dati

Progettazione logica: normalizzazione di schemi relazionali

NORMALIZZAZIONE. Fino ad ora. Dipendenze funzionali e Normalizzazione per basi di dati relazionali

Normalizzazione di schemi relazionali

Basi di dati Modelli e linguaggi di interrogazione

Lezione basi di dati 26 gennaio NORMALIZZAZIONE

Progettazione logica Fase 2: Traduzione nel modello relazionale. adattato da Atzeni et al., Basi di dati, McGrawHill

TEORIA RELAZIONALE: INTRODUZIONE

Sommario. Introduzione... 13

Normalizzazione (Codd, 1972)

ESERCIZI NORMALIZZAZIONE

ESERCIZIO 1 (12 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un negozio di libri online:

Esercizio 9.1. Figura 9.20 Relazione per l esercizio 9.1. Soluzione:

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione

Ciclo di vita di un sistema informativo

LA PROGETTAZIONE LOGICA

La normalizzazione. In fase di progettazione occorre verificare che ogni tabella abbia una chiave primaria.

ESERCIZIO di NORMALIZZAZIONE

Introduzione all algebra relazionale. Prof. Giovanni Giuffrida

TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE

Raffinamento dello schema e forme normali. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Progettazione logica

Strategie top-down. Primitive di trasformazione top-down. Primitive di trasformazione top-down

Cap. 3 - Il modello ER

Basi di dati (nuovo ordinamento) 16 giugno 2008 Compito A

INTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a

Teoria della Progettazione delle Basi di Dati Relazionali

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, Progettazione logica. Dati di ingresso e uscita

Sistemi di Elaborazione delle Informazioni (C.I. 15) Basi di dati Introduzione teorica

Laboratorio di Basi di Dati

I modelli logici dei dati. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, IL MODELLO RELAZIONALE

Informatica Industriale Modello informatico: Applicativo Modello relazionale dei dati

b) Costruire direttamente le relazioni e poi correggere quelle che presentano anomalie

Modello Entità-Relazione

SISTEMI INFORMATIVI TERRITORIALI DATABASES -LEZIONE 3

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione logica. Dati di ingresso e uscita

I modelli logici dei dati

Informatica Medica FORME NORMALI

Unità A2. Progettazione concettuale. Obiettivi. Astrazione. Astrazione per aggregazione

La progettazione logica Traduzione dal modello Entità-Associazione al modello relazionale Anno accademico 2008/2009

SISTEMI INFORMATIVI AVANZATI -2010/ Introduzione

Pag Politecnico di Torino 1

Le basi di dati. Lez. 3: Il Modello Relazionale

Basi di Dati - VII. Schemi relazionali e anomalie. Teoria Relazionale: Introduzione. Teoria Relazionale: Introduzione

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2

Si considerino le seguenti specifiche relative alla realizzazione di un sistema informativo per la comunità scientifica di ricerca paleontologica.

Insiemi: Rappresentazione

Structured Query Language

<Nome Tabella>.<attributo>

Parte III. L algebra relazionale

Il modello relazionale

LA NORMALIZZAZIONE. Introduzione

Il Modello Relazionale

TEORIA sulle BASI DI DATI

FORME NORMALI E NORMALIZZAZIONE

Strutture fisiche e strutture di accesso ai dati

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, IL MODELLO RELAZIONALE

Tipi di operatori. Gli operatori dell algebra relazionale sono classificabili nelle seguenti categorie:

Transcript:

La normalizzazione

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

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

Una relazione con anomalie Impiegato Stipendio Progetto Bilancio Funzione Rossi 20 Marte 2 tecnico Verdi 35 Giove 15 progettista Verdi 35 Venere 15 progettista Neri 55 Venere 15 direttore Neri 55 Giove 15 consulente Neri 55 Marte 2 consulente Mori 48 Marte 2 direttore Mori 48 Venere 15 progettista Bianchi 48 Venere 15 progettista Bianchi 48 Giove 15 direttore

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

Per studiare in maniera sistematica questi aspetti, è necessario introdurre un vincolo di integrità: la dipendenza funzionale

Proprietà Ogni impiegato ha un solo stipendio (anche se partecipa a più progetti) Ogni progetto ha un bilancio Ogni impiegato in ciascun progetto ha una sola funzione (anche se può avere funzioni diverse in progetti diversi)

Dipendenza funzionale relazione R su R(X) due sottoinsiemi non vuoti Y e Z di X esiste in R una dipendenza funzionale (FD) da Y a Z se, per ogni coppia di ennuple t 1 e t 2 di R con gli stessi valori su Y, risulta che t 1 e t 2 hanno gli stessi valori anche su Z

Notazione X Y Esempi: Impiegato Stipendio Progetto Bilancio Impiegato Progetto Funzione

Altre FD Impiegato Progetto Progetto Si tratta però di una FD banale (sempre soddisfatta) Y A è non banale se A non appartiene a Y Y Z è non banale se nessun attributo in Z appartiene a Y

Le anomalie derivano da alcune FD gli impiegati hanno un unico stipendio Impiegato Stipendio i progetti hanno un unico bilancio Progetto Bilancio

Non tutte le FD causano anomalie In ciascun progetto, un impiegato svolge una sola funzione Impiegato Progetto Funzione Il soddisfacimento è più "semplice"

Una differenza fra FD causano anomalie Impiegato Stipendio Progetto Bilancio non causa anomalie Impiegato Progetto Funzione Perché?

Impiegato Stipendio Progetto Bilancio Funzione Rossi 20 Marte 2 tecnico Verdi 35 Giove 15 progettista Verdi 35 Venere 15 progettista Neri 55 Venere 15 direttore Neri 55 Giove 15 consulente Neri 55 Marte 2 consulente Mori 48 Marte 2 direttore Mori 48 Venere 15 progettista Bianchi 48 Venere 15 progettista Bianchi 48 Giove 15 direttore Impiegato Stipendio Progetto Bilancio Impiegato Progetto Funzione

FD e anomalie La terza FD corrisponde ad una chiave e non causa anomalie Le prime due FD non corrispondono a chiavi e causano anomalie La relazione contiene alcune informazioni legate alla chiave e altre ad attributi che non formano una chiave È stata usata un'unica relazione per rappresentare informazioni eterogenee

Forma normale di Boyce e Codd (BCNF) Una relazione R è in forma normale di Boyce e Codd se, per ogni dipendenza funzionale (non banale) X Y, X contiene una chiave K di R La forma normale richiede che i concetti in una relazione siano omogenei (solo proprietà direttamente associate alla chiave)

Violazione della BCNF Si sostituisce la relazione con altre che soddisfano la BCNF, decomponendo le FD che violano la forma normale

Impiegato Stipendio Progetto Bilancio Funzione Rossi 20 Marte 2 tecnico Verdi 35 Giove 15 progettista Verdi 35 Venere 15 progettista Neri 55 Venere 15 direttore Neri 55 Giove 15 consulente Neri 55 Marte 2 consulente Mori 48 Marte 2 direttore Mori 48 Venere 15 progettista Bianchi 48 Venere 15 progettista Bianchi 48 Giove 15 direttore

Impiegato Stipendio Rossi 20 Verdi 35 Neri 55 Mori 48 Bianchi 48 Impiegato Progetto Funzione Rossi Marte tecnico Verdi Giove progettista Verdi Venere progettista Neri Venere direttore Neri Giove consulente Neri Marte consulente Mori Marte direttore Mori Venere progettista Bianchi Venere progettista Bianchi Giove direttore Progetto Bilancio Marte 2 Giove 15 Venere 15

Non è sempre così facile Impiegato Progetto Sede Rossi Marte Roma Verdi Giove Milano Verdi Venere Milano Neri Saturno Milano Neri Venere Milano Impiegato Sede Progetto Sede

Decomposizione con perdita Impiegato Progetto Sede Rossi Marte Roma Verdi Giove Milano Verdi Venere Milano Neri Saturno Milano Neri Venere Milano Impiegato Rossi Verdi Neri Sede Roma Milano Milano Progetto Marte Giove Saturno Venere Sede Roma Milano Milano Milano

Ricostruzione Impiegato Rossi Verdi Neri Sede Roma Milano Milano Progetto Marte Giove Saturno Venere Impiegato Progetto Sede Rossi Marte Roma Verdi Giove Milano Verdi Venere Milano Neri Saturno Milano Neri Venere Milano Verdi Saturno Milano Neri Giove Milano Sede Roma Milano Milano Milano Diversa dalla relazione di partenza!

Decomposizione senza perdita Una relazione R si decompone senza perdita su X 1 e X 2 se il join delle proiezioni di r su X 1 e X 2 è uguale a r stessa (cioè non contiene ennuple spurie) La decomposizione senza perdita è garantita se gli attributi comuni contengono una chiave per almeno una delle relazioni decomposte

Decomposizione senza perdita Impiegato Rossi Verdi Neri Impiegato Progetto Sede Rossi Marte Roma Verdi Giove Milano Verdi Venere Milano Neri Saturno Milano Neri Venere Milano Sede Roma Milano Milano Impiegato Sede Progetto Sede Impiegato Progetto Rossi Marte Verdi Giove Verdi Venere Neri Saturno Neri Venere

Un altro problema Supponiamo di voler inserire una nuova ennupla che specifica la partecipazione dell'impiegato Neri, che opera a Milano, al progetto Marte Impiegato Rossi Verdi Neri Sede Roma Milano Milano Impiegato Sede Progetto Sede Impiegato Progetto Rossi Marte Verdi Giove Verdi Venere Neri Saturno Neri Venere

Impiegato Rossi Verdi Neri Sede Roma Milano Milano Impiegato Rossi Verdi Verdi Neri Neri Neri Progetto Marte Giove Venere Saturno Venere Marte

Impiegato Progetto Sede Rossi Marte Roma Verdi Giove Milano Verdi Venere Milano Neri Saturno Milano Neri Venere Milano Neri Marte Milano

Conservazione delle dipendenze Una decomposizione conserva le dipendenze se ciascuna delle dipendenze funzionali dello schema originario coinvolge attributi che compaiono tutti insieme in uno degli schemi decomposti Progetto Sede non è conservata

Qualità delle decomposizioni Una decomposizione dovrebbe sempre soddisfare: la decomposizione senza perdita, che garantisce la ricostruzione delle informazioni originarie la conservazione delle dipendenze, che garantisce il mantenimento dei vincoli di integrità originari

Una relazione non-normalizzata Dirigente Progetto Sede Rossi Marte Roma Verdi Giove Milano Verdi Marte Milano Neri Saturno Milano Neri Venere Milano Progetto Sede Dirigente Dirigente Sede

La decomposizione è problematica Progetto Sede Dirigente coinvolge tutti gli attributi e quindi nessuna decomposizione può preservare tale dipendenza quindi in alcuni casi la BCNF non è raggiungibile

Una nuova forma normale Una relazione R è in terza forma normale se, per ogni FD (non banale) X Y definita su R, è verificata almeno una delle seguenti condizioni: X contiene una chiave K di R ogni attributo in Y è contenuto in almeno una chiave di R

BCNF e terza forma normale La terza forma normale è meno restrittiva della forma normale di Boyce e Codd (e ammette relazioni con alcune anomalie) Ha il vantaggio di essere sempre raggiungibile

Decomposizione in 3NF Si crea una relazione per ogni gruppo di attributi coinvolti in una dipendenza funzionale Si verifica che alla fine una relazione contenga una chiave della relazione originari

Una possibile strategia Se la relazione non è normalizzata si decompone in terza forma normale Alla fine si verifica se lo schema ottenuto è anche in BCNF Se una relazione ha una sola chiave allora le due forme normali coincidono

Uno schema non decomponibile in BCNF Dirigente Progetto Sede Rossi Marte Roma Verdi Giove Milano Verdi Marte Milano Neri Saturno Milano Neri Venere Milano Dirigente Sede Progetto Sede Dirigente

Una possibile riorganizzazione Dirigente Progetto Sede Reparto Rossi Marte Roma 1 Verdi Giove Milano 1 Verdi Marte Milano 1 Neri Saturno Milano 2 Neri Venere Milano 2 Dirigente Sede Reparto Sede Reparto Dirigente Progetto Sede Reparto

Decomposizione in BCNF Dirigente Sede Reparto Rossi Roma 1 Verdi Milano 1 Neri Milano 2 Progetto Sede Reparto Marte Roma 1 Giove Milano 1 Marte Milano 1 Saturno Milano 2 Venere Milano 2

Progettazione e normalizzazione La teoria della normalizzazione può essere usata nella progettazione logica per verificare lo schema relazionale finale Si può usare anche durante la progettazione concettuale per verificare la qualità dello schema concettuale

Nome fornitore Indirizzo Partita IVA Codice Prodotto Nome prodotto Prezzo PartitaIVA NomeFornitore Indirizzo

Analisi dell entità L entità viola la terza forma normale a causa della dipendenza: PartitaIVA NomeFornitore Indirizzo

Nome prodotto Codice Partita IVA Nome fornitore Prodotto (1,1) (0,N) Fornitura Fornitore Prezzo Indirizzo

Dipartimento Professore Tesi (0,N) (0,N) (0,1) Studente (0,N) Corso di laurea Studente Corso di laurea Studente Professore Professore Dipartimento

Analisi della relationship La relationship viola la terza forma normale a causa della dipendenza: Professore Dipartimento

Afferenza (0,N) Dipartimento (1,1) Professore (0,N) (0,1) Tesi Studente (0,N) Corso di laurea

Ulteriore analisi sulla base delle dipendenze La relationship Tesi è in BCNF sulla base delle dipendenze Studente CorsoDiLaurea Studente Professore le due proprietà sono indipendenti questo suggerisce una ulteriore decomposizione

Professore (1,1) Afferenza (0,N) Dipartimento (0,N) (0,1) Tesi (0,N) Corso di laurea Studente (1,1) Iscrizione (0,N) Corso di laurea