Partizionamento/accorpamento di concetti

Slides:



Advertisements
Presentazioni simili
La progettazione concettuale
Advertisements

Informatica II – Basi di Dati (08/09) – Parte 1
Corso di Laurea in Biotecnologie Informatica (Basi di Dati)
Creazione di archivi tramite Data Base
IL MODELLO ENTITÀ-RELAZIONE Gli altri costruttori
IL MODELLO ENTITA’ - RELAZIONE I costruttori di base
LA PROGETTAZIONE LOGICA Seconda parte
Progettazione concettuale
Progettazione Concettuale: Il modello Entità-Relazioni
4 – Progettazione – Introduzione e Modello E-R
6 – Progettazione Logica
Creazione di archivi tramite Data Base
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
Relazioni Relazione: Associazione o legame logico esistente tra due o più entità Socio Prenota Campo.
Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone Copyright © The McGraw-Hill.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
L’uso dei database in azienda
PROGETTO LOGICO. Progetto logico Lo schema E/R descrive un dominio applicativo ad un dato livello di astrazione Lo schema E/R è molto utile per: –fornire.
Corso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati)
LA PROGETTAZIONE LOGICA
LA PROGETTAZIONE DELLE BASI DI DATI
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Metodologie e Modelli di Progetto
Basi di dati 2002 EER Vogliamo aumentare lespressività degli Entity Model EER: Entity Model Esteso.
Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti: 1. Definire uno schema Entità/Relazione che.
Progettazione di una base di dati
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Modello E-R Generalizzazioni
Basi di dati Claudia Raibulet
PROGETTAZIONE DI UN DATABASE
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Secondo compito: Progettazione di un Data Base Francesco Musmanno –
Progettazione di un Data Base Daraio Andrea. Si vuole progettare un database per la gestione di una biblioteca personale, dove il proprietario: Presta.
LA PROGETTAZIONE DELLE BASI DI DATI
Il modello ER Proposto da Peter Chen nel 1976 rappresenta uno standard per la progettazione concettuale (in particolare per le basi di dati) Ha una rappresentazione.
Progettare un database
Corso di Basi di Dati Progettazione Logica
Basi di Dati e Sistemi Informativi
Basi di Dati e Sistemi Informativi
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
MODELLO E/R.
Basi di dati Progetto Logico per il Modello Relazionale (E
Progettazione di una base di dati Progettazione logica (modello relazionale)
Progettazione logica Analisi delle prestazioni su schemi E-R
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Progettazione di Database
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.
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
S. Costantini 06/05/2006 (parte del materiale è tratto da slide del 2001 di Ceri-Atzeni) Normalizzazione di Schemi.
Mapping Database Atsilo
Descrizione del modello EA con uno schema (parziale) EA Compito 1 di laboratorio: Progetto e realizzazione di una base dati per gestire la documentazione.
Metodologie e modelli per il progetto. 2 Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti.
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.
Eprogram informatica V anno.
Eprogram informatica V anno.
Cloud informatica V anno.
MODELLO E/R.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
1. CASO BIBLIOTECA ANALISI DEI REQUISITI Si vuole automatizzare la gestione prestiti dei libri di una biblioteca personale. La progettazione deve tener.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
Progettazione di Database l Progettazione Concettuale: strutturazione della “realtà” che si vuole rappresentare secondo uno schema concettuale l Dallo.
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.
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Partizionamento/accorpamento di concetti
Transcript della presentazione:

Partizionamento/accorpamento di concetti Gli accessi possono essere ridotti separando gli attributi di uno stesso concetto cui fanno accesso operazioni diverse e raggruppando attributi di concetti diversi cui fanno accesso le stesse operazioni. Partizionamenti di entità : Si possono fare in verticale, decomponendo l’entità in più entità sulla base degli attributi, o in modo orizzontale, decomponendo l’entità sulla base delle sue occorrenze. Una decomposizione orizzontale corrisponde ad una generalizzazione. Costringe a duplicare tutte le associazioni cui l’entità originaria partecipa.

Impiegato Livello Stipendio Ritenute Cognome Indirizzo Data nascita Codice Livello Stipendio Ritenute Cognome Indirizzo Data nascita Codice R Dati anagrafici lavorativi (1,1)

Partizionamento/accorpamento di concetti Eliminazione di attributi multivalore : il modello relazionale non prevede questo tipo di attributo e richiede che venga sostituito da una relazione o nella decomposizione diretta dell’attributo multivalore in più attributi. Accorpamento di entità : spesso conviene accorpare due entità coinvolte spesso nella stessa operazione in una sola entità. Questo può causare la presenza di valori nulli. Si accorpano di solito entità legate da relazioni di tipo uno a uno, per evitare la creazione di ridondanze. E’ possibile anche accorpare/partizionare associazioni.

Indirizzo Interno Cognome Data nascita Codice fiscale Intestazione Persona Appartamento (0,1) (1,1)

Persona Interno Indirizzo Cognome Data nascita Codice fiscale (0,1)

Cognome Composizione Giocatore Squadra (1,N) Ruolo Nome Città Data acquisto cessione (0,1)

Cognome Comp. passata Giocatore Squadra (1,N) Ruolo Nome Città Data acquisto cessione attuale (1,1)

Scelta degli identificatori principali E’ molto importante per l’importanza rivestita dalle chiavi nel modello relazionale. Bisogna scegliere una chiave principale secondo i seguenti criteri: Escludere gli attributi con valori nulli Preferire identificatori con pochi attributi Preferire identificatori interni rispetto ad identificatori esterni Utilizzare identificatori che vengono utilizzati da molte operazioni per accedere alle occorrenze di una entità. Se nessun identificatore soddisfa i criteri, è consigliabile crearne uno (codice identificativo)

Traduzione Una volta riorganizzato lo schema si può passare alla traduzione dal modello E-R a quello relazionale. Traduzione di associazioni molti a molti Tipicamente, passando dal modello E-R a quello relazionale, si procede nel modo seguente: ogni entità diventa una relazione sugli attributi dell’entità ogni associazione diventa una relazione definita sugli attributi dell’associazione più gli identificatori delle entità coinvolte, che costituiranno la chiave della relazione. Si instaura un vincolo di integrità referenziale fra gli identificatori delle entità coinvolte e i corrispondenti attributi dell’associazione. In alcuni casi (es. associazioni ricorsive) è necessario ridenominare gli attributi.

con vincoli di integrità referenziale fra Matricola in Partecipazione e (la chiave di) Impiegato Codice in Partecipazione e (la chiave di) Progetto

Associazioni n-arie Fornitore(PartitaIVA, Nome) Prodotto Dipartimento Fornitura Partita IVA Genere Codice Quantità Telefono (0,N) (1,N) Fornitore(PartitaIVA, Nome) Prodotto(Codice, Genere) Dipartimento(Nome, Telefono) Fornitura(Fornitore, Prodotto, Dipartimento, Quantità)

Traduzione Traduzione di associazioni uno a molti In questo caso si può usare una sola relazione (nel senso di tabella rappresentante un’entità!) per tradurre sia l’associazione che l’entità per la quale l’associazione può applicarsi una sola volta: la chiave sarà l’identificatore dell’entità. Es. giocatore, squadra e contratto: ogni giocatore può avere un solo contratto. Si instaura un vincolo di integrità referenziale fra la chiave della relazione (es. squadra) che può avere occorrenza N nell’associazione e il corrispondente attributo della relazione che traduce l’altra entità e l’associazione.

Meglio (più compatto): Giocatore(Cognome, DataNasc, Ruolo, Squadra, Ingaggio) Squadra(Nome, Città, ColoriSociali) con vincolo di integrità referenziale fra Squadra in Giocatore e la chiave di Squadra se la cardinalità minima della relazione è 0, allora Squadra in Giocatore deve ammettere valore nullo

Traduzione Traduzione di entità con identificatore esterno Poiché un’entità identificata esternamente tramite un’associazione partecipa all’associazione con cardinalità minima e massima pari ad uno, si ricade nel caso precedente della relazione uno a molti. L’associazione e l’entità che la utilizza per avere un identificatore esterno vengono tradotti con la stessa relazione. Es.

Traduzione Traduzione di associazioni uno a uno Se la partecipazione è obbligatoria per entrambe le entità, si può operare come nella traduzione delle associazioni uno a molti, però possiamo scegliere quale entità tradurre in una stessa relazione insieme all’associazione. Se è opzionale per una sola entità, è preferibile scegliere di effettuare la fusione in modo da non avere valori nulli, quindi tradurre in modo autonomo l’entità con partecipazione obbligatoria. Se è opzionale per entrambe, con una traduzione mediante 3 relazioni separate si può evitare la presenza di valori nulli.

Traduzione In termini di procedura globale, se si devono tradurre schemi complessi, si può procedere per gradi: traduzione delle entità traduzione delle entità con identificazioni esterne traduzione delle associazioni rimaste (alcune sono già state tradotte al punto precedente)