La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dellindipendenza dei dati Unisce concetti derivati dalla teoria.

Presentazioni simili


Presentazione sul tema: "Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dellindipendenza dei dati Unisce concetti derivati dalla teoria."— Transcript della presentazione:

1 Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dellindipendenza dei dati Unisce concetti derivati dalla teoria degli insiemi (relazioni) con una rappresentazione dei dati di tipo tabellare Attualmente è il modello più utilizzato

2 Modello relazionale Teorizzato per separare il più possibile il livello logico dal livello fisico della descrizione dei dati Rigoroso modello matematico permette un elevato grado di astrazione Rappresentazione semplice ed intuitiva Le relazioni ed i risultati delle operazioni su di esse sono facilmente rappresentabili ed interpretabili dagli utenti.

3 Relazione: tre accezioni relazione matematica: come nella teoria degli insiemi relazione (dallinglese relationship) che rappresenta una classe di fatti, nel modello Entity-Relationship; tradotto anche con associazione o correlazione relazione secondo il modello relazionale dei dati

4 Relazioni - Prodotto Cartesiano Dati due insiemi D 1 e D 2 si definisce Prodotto Cartesiano di D 1 e D 2, e si indica con D 1 X D 2, linsieme di tutte le possibili coppie ordinate (v 1, v 2 ) tali che v 1 sia un elemento di D 1 e v 2 sia un elemento di D 2. Es. Dati gli insiemi A = { cubo, cono } e B={ rosso, verde, blu } il loro prodotto cartesiano è {( cubo,rosso ),( cono,rosso ),( cubo,verde ), ( cono,verde ),( cubo,blu ),( cono,blu )}

5 Relazioni Una relazione matematica su due insiemi D 1 e D 2 è un sottoinsieme di D 1 X D 2. NOTA: a livello formale gli insiemi possono essere infiniti, a livello pratico non possiamo però considerare relazioni infinite. Es. dati gli insiemi visti, una possibile relazione è {( cubo,rosso ),( cono,rosso ),( cubo,blu )} o, in forma tabellare,

6 Relazioni Le definizioni viste per 2 insiemi possono essere generalizzate a n insiemi. Ogni riga della tabella sarà allora una n-pla ordinata di elementi. n è detto grado del prodotto cartesiano e quindi della relazione. Il numero di elementi della relazione è detto cardinalità della relazione. Un insieme può apparire più volte in una relazione. Es. La relazione Risultati Partite di Calcio è un sottoinsieme del prodotto cartesiano Stringa x Stringa x Intero x Intero

7 Relazioni Osservazioni Non esiste ordinamento fra le n-ple, per la natura insiemistica della relazione Non possono esistere 2 righe uguali (in un insieme, ogni elemento che ne fa parte può comparire una sola volta) Ogni n-pla è internamente ordinata: l i-esimo valore proviene dall i-esimo dominio (struttura posizionale) Quindi se si scambiano due righe, la relazione non cambia se si scambiano 2 colonne può cambiare o addirittura perdere consistenza

8 Relazioni La rigidezza dellordinamento delle relazioni matematiche spesso non è pratica. In informatica si tende ad utilizzare rappresentazioni non posizionali dei dati, utilizzando lordinamento solo quando ha utilità pratica (es. parametri di funzioni, elementi di vettori, matrici). Si utilizzano tipi strutturati (record) nei casi in cui si debbano raccogliere dati di natura differente in una stessa entità logica. I record permettono di fare di riferimento a ciascun elemento in modo diretto attraverso un nome, svincolandosi quindi dallordinamento nei contesti in cui questo non è essenziale. Una relazione è un insieme di record omogenei, cioè definiti sugli stessi campi. Come ogni campo di un record è associato ad un nome che fa riferimento ad uno specifico componente del record, così si associa ad ogni colonna della relazione un attributo.

9 Relazioni Esempio di relazione con attributi Partite ( Casa, Ospiti, RetiCasa, RetiOspiti ) –Ogni attributo è definito su uno specifico dominio. –Ogni riga è detta convenzionalmente tupla (n-pla). Quindi una tupla corrisponde ad una istanza di una relazione: è un insieme di valori, uno per attributo, ordinati secondo lo schema della relazione e definiti ciascuno su un proprio dominio. Una relazione è quindi una serie di tuple definite sul dominio della relazione (insieme ordinato dei domini dei singoli attributi).

10 Relazioni Notazione Se t è una tupla definita sullo schema X (insieme ordinato di domini) della relazione e A è uno dei domini di X t[A] (o t.A) è il valore di t relativo al dominio A Es. (relazione Partite) se t è la prima tupla della relazione t.Casa = Parma

11 Basi di dati e Relazioni Una base di dati è costituita da un insieme di relazioni, ciascuna delle quali descrive un particolare aspetto del dominio reale di applicazione. Lo schema della base di dati è costituito dallinsieme degli schemi delle relazioni che la costituiscono. Poiché ogni relazione descrive un particolare aspetto della stessa realtà, deve essere possibile stabilire delle corrispondenze fra le relazioni contenute in una base di dati, nel momento in cui sono contemporaneamente necessarie informazioni presenti in relazioni diverse. Per questo motivo, ove necessario, tuple che rappresentano informazioni su un medesimo oggetto in relazioni diverse, presentano valori comuni, che permettono di realizzare tali corrispondenze.

12 Basi di dati e Relazioni Consideriamo il seguente schema di basi di dati: Studenti ( Matricola, Cognome, Nome, DataNascita ) Corsi ( Codice, Titolo, Docente ) Esami ( Studente, Voto, Corso ) Studenti contiene dati su un insieme di studenti Corsi contiene dati su un insieme di corsi Esami contiene dati su un insieme di esami e fa riferimento alle altre due attraverso i numeri di matricola e il nome del corso. Quindi Matricola e Studente, come anche Corso e Titolo, sono definiti sullo stesso dominio e possono (in alcuni casi devono) assumere gli stessi valori.

13 MatricolaCognomeNomeData di nascita 6554RossiMario05/12/ NeriPaolo03/11/ RossiMaria01/02/ VerdiLuisa12/11/1979 studentiCodiceTitoloDocente 01AnalisiMario 02ChimicaBruni 04ChimicaVerdi corsi StudenteVotoCorso esami

14 MatricolaCognomeNomeData di nascita 6554RossiMario05/12/ NeriPaolo03/11/ RossiMaria01/02/ VerdiLuisa12/11/1979 studentiCodiceTitoloDocente 01AnalisiMario 02ChimicaBruni 04ChimicaVerdi corsi StudenteVotoCorso esami 26

15 Basi di dati e Relazioni Il modello relazionale è basato su valori. I riferimenti fra dati in relazioni diverse avvengono attraverso i valori dei domini corrispondenti che appaiono nelle tuple. Gli altri modelli (gerarchico, reticolare) utilizzano puntatori per le corrispondenze e sono detti basati su record e puntatori.

16 Basi di dati e Relazioni Vantaggi dellapproccio per valori Si inseriscono nella base di dati solo valori significativi per lapplicazione (i puntatori sono dati aggiuntivi relativi alla sola implementazione). Il trasferimento dei dati da un ambiente ad un altro è più semplice (i puntatori hanno validità solo locale) la rappresentazione logica dei dati non fa riferimento a quella fisica e quindi si ottiene lindipendenza dei dati


Scaricare ppt "Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dellindipendenza dei dati Unisce concetti derivati dalla teoria."

Presentazioni simili


Annunci Google