Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.

Slides:



Advertisements
Presentazioni simili
Modulo 5 DataBase ACCESS.
Advertisements

Informatica II – Basi di Dati (08/09) – Parte 1
Il raffinamento dello schema e la normalizzazione nei database relazionali Eugenio Di Sciascio.
Creazione di archivi tramite Data Base
Normalizzazione Forme Normali.
MODELLO RELAZIONALE La relazione su n insiemi A1, A2….,An è un sottoinsieme dell’ insieme di tutte le n-uple a1, a2,….,an che si possono costruire.
Una Introduzione alle Basi di Dati
Biglietti e Ritardi: schema E/R
4 – Progettazione – Introduzione e Modello E-R
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
BASI DI DATI 1 1.
Archivi   L’uso degli archivi deriva dalla necessità di conservare dati e informazioni in modo permanente affinché possano essere riutilizzate anche.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Archivio Necessità di immagazzinare in modo permanente grandi quantità di dati. Esempio: anagrafe dei cittadini di un comune.
Archivio Cé necessità di immagazzinare in modo permanente grandi quantità di dati. Esempio: anagrafe dei cittadini di un comune.
L’uso dei database in azienda
La Normalizzazione. 27 January, slide 2 Le nuove tecnologie Software Tabelle, unicità e chiavi Ciascuna riga di una tabella deve esere unica Ci.
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
Unità didattica 3: Normalizzazione delle relazioni e
Corso di Laurea in Ingegneria per lAmbiente e il Territorio Informatica per lAmbiente e il Territorio Docente: Giandomenico Spezzano Tutor: Alfredo Cuzzocrea.
Progettazione di una base di dati
Relazioni Relazione : concetto mutuato dalla definizione di relazione matematica della teoria degli insiemi, come sottoinsieme del prodotto cartesiano.
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Basi di dati Claudia Raibulet
Forme normali.
Implementare un modello di dati
Gerarchia delle funzioni e modello FH
INFORMATICA Corso Base Modulo G: I DataBase  Access.
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
Progettare un database
Dottorato di ricerca Nuove Tecnologie e Informazione Territorio – Ambiente Nozioni fondamentali di Basi di Dati Seminario interno.
Introduzione a Oracle 9i
LE BASI DI DATI E IL LINGUAGGIO SQL.
Sistemi di Elaborazione delle Informazioni Mod.I.
La Normalizzazione. 2 May, slide 2 Le nuove tecnologie Software Normalizzazione Normalizzazione è il processo di semplificazione di un data base.
EIPASS MODULO 5 Access 2007.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
BASI DI DATI - MySql Centro di Ateneo per i Servizi Informatici
DATABASE Introduzione
Laboratorio informatico I
DB- Sistemi Informativi
Modulo 5 DataBase ACCESS. Informazioni e Dati INFORMAZIONI vengono scambiate con linguaggio scritto o parlato DATI rappresentazione di informazioni in.
S. Costantini 06/05/2006 (parte del materiale è tratto da slide del 2001 di Ceri-Atzeni) Normalizzazione di Schemi.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Il modello relazionale. Modello logico dei dati basato su concetti relazione e tabella Relazione: da teoria degli insiemi Tabella: rappresentazione grafica.
Microsoft Access Chiavi, struttura delle tabelle.
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Basi di dati e Relazioni Uno schema di relazione R(X) è costituito da un simbolo (nome della relazione) R e da una serie di attributi X={A 1, A 2, …, A.
Data Base ACCESS EM 09.
Progettazione di una base di dati relazionale Vincoli.
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
Progettazione di una base di dati relazionale Terza forma normale.
S. Costantini 06/05/2006 (parte del materiale è tratto da slide del 2001 di Ceri-Atzeni) Normalizzazione di Schemi.
1 Esami Esame scritto: Tra 21 e 25 domande: 20 domande chiuse (20 punti),  5 domande aperte (10 punti) 1½ ore Esame orale/applicativo: Esercizi usando.
Il modello relazionale
Eprogram informatica V anno.
Cloud informatica V anno.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Microsoft Access Filtri, query. Filtri Un filtro è una funzione che provoca la visualizzazione dei soli record contenenti dati che rispondono a un certo.
Le basi di dati.
1. CASO BIBLIOTECA ANALISI DEI REQUISITI Si vuole automatizzare la gestione prestiti dei libri di una biblioteca personale. La progettazione deve tener.
1 “ Le Basi di Dati ”. 2 Parte 5: Tabelle –Creazione di una tabella –Indici e chiavi primarie –Relazioni e integrità referenziale Basi di Dati Struttura.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
I DONEITÀ DI C ONOSCENZE E C OMPETENZE I NFORMATICHE ( A – D ) Un database è un insieme di record (registrazioni) e di file (archivi) organizzati per uno.
Basi di dati - 09Marco Maggini1 Forme normali forme normali  Le forme normali verificano la qualità di uno schema di una base di dati relazionale  Presenza.
Normalizzazione. Forme normali Evitare la ripetizione e la ridondanza Evitare alcuni problemi in modifiche/cancellazioni Obiettivo: Normalizzazione =>
LA NORMALIZZAZIONE. ESEMPIO DI NORMALIZZAZIONE(1FN) IDAziendaRagioneSocialePIVANomeSocioQuotaSocio 1F.lli Damatino spa Roberto Damatino 20%
La normalizzazione delle relazioni
Transcript della presentazione:

Normalizzazione

Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati compaiono in maniera duplicata); Incongruenza (se il dato viene aggiornato in un archivio e non in un altro, oppure se sono presenti valori diversi per lo stesso dato); Inconsistenza (i dati a disposizione non sono più affidabili, perché non si sa in modo certo quale dei diversi valori sia quello corretto).

Introduzione Idealmente – se lo schema concettuale è di qualità (corretto, completo e non ridondante) – se la progettazione logica è condotta applicando correttamente le regole di derivazione – la base di dati risultante dovrebbe essere di qualità In realtà – è possibile commettere errori nella fase di analisi e in quella di progettazione logica

Osservazione In particolare quando si deve progettare una base di dati occorre far attenzione a non creare relazioni (tabelle) con ridondanza di dati, perché essa può generare alcune anomalie: di inserimento; di aggiornamento; di cancellazione.

Esempio Consideriamo la seguente tabella: Magazzino CodCliIndirizzoCittàCapCodAccDescrizionePrezzoQuantità C01Via Po,23Pisa56100M03Batteria100,003 C01Via Po,23Pisa56100M12Radiatore1200,001 C01Via Po,23Pisa56100M04Antenna25,003 C02Via Moro,2Lucca55100M03Batteria100,002 C02Via Moro,2Lucca55100M12Radiatore1200,001 C03Via Roma,1Pisa56100M03Batteria100,002 In questa tabella sono rappresentate le seguenti informazioni: Gli articoli presenti in magazzino; I dati anagrafici dei clienti; Gli ordini dei clienti relativi a determinati articoli.

Anomalie Anomalie di inserimento: non è possibile inserire un nuovo cliente senza inserire i dati relativi agli accessori ordinati. In modo analogo, non è possibile inserire un nuovo accessorio con la sua descrizione senza inserire un cliente che lo ha ordinato.

Anomalie Anomalie di aggiornamento: l’indirizzo di un cliente è ripetuto in diverse tuple. Se dovesse cambiare occorre modificarlo in tutte le tuple in cui compare. Anomalie di cancellazione: cancellando la tupla di chiave (C03, M03) si perdono le informazioni relative al cliente C03.

Basi di dati La teoria delle basi di dati permette di evitare la ridondanza e di superare i problemi relativi alle anomalie che ne conseguono, definendo alcuni criteri che devono essere soddisfatti dalle relazioni. Tali criteri definiscono le caratteristiche che devono essere soddisfatte da una relazione ben strutturata e prendono il nome di forme normali.

Forme normali Una forma normale è una proprietà di uno schema relazionale che ne garantisce la qualità misurata in assenza di difetti. Le forme normali sono di livello crescente, e sono accompagnate da algoritmi per la trasformazione di una tabella, che non è in una forma normale, in un insieme di tabelle che invece sono in una forma normale.

Normalizzazione E’ un procedimento che serve per trasformare una relazione che presenta delle anomalie, in una prive di anomalie, garantendo la conservazione dell’informazione. Consiste di un insieme di operazioni, tramite le quali, a partire da una data tabella (non normalizzata), vengono create nuove tabelle, seguendo opportune regole, che trasformano la tabella originaria, in altre tabelle. Completa il processo di progettazione di un database relazionale. Esamina le tabelle alla ricerca di possibili incongruenze nella loro definizione.

Obiettivi della normalizzazione Evitare la ripetizione e la ridondanza dei dati, durante la fase di definizione della struttura di una tabella, al fine di evitare futuri problemi nelle successive fasi di trattamento della tabella stessa, tramite operazioni di modifica o cancellazione di record in essa contenuti.

Prima forma normale Def. Una relazione è in prima forma normale (1FN) quando rispetta i requisiti fondamentali del modello relazionale, che sono: tutte le righe della tabella contengono lo stesso numero di colonne; i valori di un attributo (colonna) sono dello stesso tipo, ovvero appartenenti allo stesso dominio; i valori di una tupla (riga) sono diversi da quelli delle altre tuple, ovvero non possono esistere due tuple uguali; l’ordine delle tuple è irrilevante; gli attributi rappresentano informazioni elementari, ossia:  non possono essere ulteriormente scomposti,  non possono essere composti da gruppi di attributi ripetuti.

Esempio Consideriamo la relazione: Dipendenti(matricola, nome, indirizzo, familiariAcarico) Essa non è in 1FN in quanto l’ultimo attributo (familiariAcarico) non è elementare, infatti è costituito da attributi ripetuti dello stesso tipo. Questa rappresentazione rende difficile l’inserimento di un nuovo familiare a carico e non permette di aggiungere informazioni sui familiari quali, per esempio, età, sesso e grado di parentela.

Esempio Tutti gli inconvenienti possono essere superati trasformando la relazione di partenza in due relazioni che siano in 1FN, ad esempio una scissione del tipo: Dipendenti(matricola, nome, indirizzo) Familiari(idFamiliare, nomeFamiliare, matricolaDip) In questa rappresentazione risulta facilitato l’inserimento di un nuovo familiare, inoltre si ha la possibilità di aggiungere tutte le informazioni sui familiari aggiungendo nuovi attributi nella relazione Familiari.

Definizioni – Chiavechiaveprimaria – Chiave o chiave primaria è l’insieme di uno o più attributi che identificano in modo univoco una n-upla (riga della tabella) – Chiave candidata – Chiave candidata è ogni insieme di uno o più attributi che possono svolgere la funzione di chiave (ci possono essere molte chiavi candidate, ma una sola chiave primaria) – Attributo non-chiave – Attributo non-chiave è un campo che non fa parte della chiave primaria.

Dipendenze funzionali Def. La dipendenza funzionale fra un attributo A1 e un attributo A2 si ha quando un singolo valore dell’attributo A1 determina un singolo valore dell’attributo A2. Quando questo accade si dice che A1 determina A2 e si scrive: A1 → A2 Un esempio molto semplice di dipendenza funzionale è quello che lega una persona alla propria altezza: ovviamente ad una persona corrisponde una ed una sola altezza.

Dipendenza transitiva Def. Si ha la dipendenza transitiva tra attributi quando un attributo A determina un attributo B e questo determina un’ulteriore attributo C; si dice allora che A determina C transitivamente In simboli: se A → B e B → C allora A → C transitivamente. Oss: Le forme normali superiori alla prima vengono introdotte per eliminare le anomalie di aggiornamento di cancellazione, evitando l’inconsistenza o la perdita indesiderata di dati.

Seconda forma normale Def. Una relazione è in seconda forma normale (2FN) se è in 1FN e non esistono attributi non- chiave che dipendono solo da una parte della chiave, cioè dipendenti parzialmente dalla chiave. Dalla definizione discende immediatamente che la 2FN riguarda solo quelle relazioni che hanno chiavi composte, in quanto in caso contrario la definizione è banalmente verificata. La 2FN elimina quindi la dipendenza parziale degli attributi dalla chiave. Vediamo un esempio di relazione che non è in 2FN.

Esempio Consideriamo la seguente relazione: Magazzino CodCliIndirizzoCittàCapCodAccDescrizionePrezzoQuantità C01Via Po,23Pisa56100M03Batteria100,003 C01Via Po,23Pisa56100M12Radiatore1200,001 C01Via Po,23Pisa56100M04Antenna25,003 C02Via Moro,2Lucca55100M03Batteria100,002 C02Via Moro,2Lucca55100M12Radiatore1200,001 C03Via Roma,1Pisa56100M03Batteria100,002 Analizziamo le dipendenze funzionali: CodCli →Indirizzo, Città, Cap CodAcc →Descrizione, Prezzo CodCli, CodAcc → Quantità La relazione non è in 2FN

Esempio Per trasformare una relazione in 2FN occorre sostituirla con altre relazioni in 2FN ottenute decomponendo la relazione di partenza secondo le dipendenze funzionali. Nell’esempio precedente occorre quindi creare tre tabelle: una per le dipendenze da CodCli, una per le dipendenze da CodAcc, una per le dipendenze da entrambi i campi CodCli e CodAcc.

Esempio CodCliIndirizzoCittàCap C01Via Po,23Pisa56100 C02Via Moro,2Lucca55100 C03Via Roma,1Pisa56100 CodAccDescrizionePrezzo M03Batteria100,00 M12Radiatore1200,00 M04Antenna25,00 Cliente Accessorio CodCliCodAccQuantità C01M033 C01M121 C01M043 C02M032 C02M121 C03M032 Ordine

Terza forma normale Def. Una relazione è in terza forma normale (3FN) se è in 2FN e non esistono attributi che dipendono transitivamente dalla chiave, cioè dipendenti da un attributo non chiave. Per trasformare una relazione in 3FN, si crea una nuova relazione per ogni gruppo di attributi non chiave coinvolti nella dipendenza funzionale con attributi non chiave.

Esempio Possiamo osservare le seguenti dipendenze funzionali: 1. Matricola-> Nome, Scuola 2. Scuola -> TelefonoScuola Che generano la catena di dipendenze: Matricola -> Scuola -> TelefonoScuola ( quest’ultima dipende transitivamente dalla chiave) MatricolaNomeScuolaTelefonoScuola 201Mario RossiI.T.C. Einaudi Carlo BianchiLiceo Dante Paola VerdiI.T.I Fermi Studente

Esempio La relazione Studenti si scompone in due relazioni: Studenti Istituti MatricolaNomeScuola 201Mario RossiI.T.C. Einaudi 202Carlo BianchiLiceo Dante 203Paola VerdiI.T.I Fermi ScuolaTelefonoScuola I.T.C. Einaudi Liceo Dante I.T.I Fermi