Database : modelli di dati - Istituto Paritario Michelangelo

LE BASI DI DATI
Prima parte – Premesse introduttive
I MODELLI DEI DATI
MODELLAZIONE DEI DATI

Un modello dei dati è un insieme di concetti
utilizzati per organizzare i dati di interesse e
descriverne la natura in modo che essa risulti
comprensibile ad un elaboratore.

Ogni modello dei dati fornisce meccanismi di
strutturazione (cioè utilizza costruttori analoghi a
quelli dei linguaggi di programmazione)
2
MODELLAZIONE DEI DATI
Quindi

Def. : Un modello dei dati consiste in una
rappresentazione astratta delle strutture dei dati di
un database.

Facciamo un esempio da una realtà quotidiana:
Se consideriamo una casa, il modello della casa può essere
visto come i disegni tecnici che un costruttore fornisce alle
varie ditte affinché la casa venga costruita come progettato
dall’architetto o dall’ingegnere che hanno seguito le
indicazioni del cliente (committente).
Analogamente un modello di dati costituisce una
rappresentazione astratta di tutto ciò che fa parte di un
database.
3
MODELLAZIONE DEI DATI

Ci sono sostanzialmente due modi per modellare i dati:
 Modello Entità-Relazione
 Modello ad Oggetti

La stragrande maggioranza delle applicazioni esistenti
fa uso di un approccio Entità-Relazione (E-R)
4
MODELLAZIONE DEI DATI

La progettazione di un database (vedi relative
dispense), corrisponde a diversi passi di modellazioni
di dati, partendo da quella più astratta a quella più
concreta, e precisamente :
1.
Modellazione di dati - riguarda la progettazione
concettuale e la progettazione logica
2.
Modellazione funzionale dell’applicazione
-
consiste nella creazione di funzioni che accedono ai
dati
5
MODELLAZIONE DEI DATI

Differenze fra modello concettuale e modello
logico :


Il modello concettuale descrive cosa deve essere
rappresentato
Il modello logico descrive come sono organizzati i
dati.
 N.B.
: Una cattiva modellazione può avere
impatti devastanti al punto da rendere
6
inutilizzabile il database.
MODELLAZIONE DEI DATI
CARATTERISTICHE DI UN BUON PROGETTO CONCETTUALE:
Correttezza : uso corretto degli strumenti;
2. Completezza: tutti gli aspetti rilevanti della
realtà devono essere modellati;
3. Chiarezza : Il modello deve essere leggibile e
rappresentare le informazioni in maniera
comprensibile
4. Indipendenza: dallo strumento informatico che
verrà utilizzato
1.
7
MODELLAZIONE LOGICA
Una volta realizzato il modello concettuale si procede con
la definizione del modello logico dei dati, che consiste
un uno schema realizzato in funzione alle caratteristiche
del particolare DBMS che gestisce il database.
I modelli dei dati sono detti logici, per sottolineare il fatto
che le strutture utilizzate da questi modelli, pur essendo
astratte, riflettono una particolare organizzazione (ad
alberi, a grafi, a tabelle o a oggetti) ma sono indipendenti
dalla reale struttura fisica dei dati.
8
MODELLAZIONE LOGICA
In ordine cronologico abbiamo i seguenti modelli logici:
 Gerarchico (anni ‘60)
 Reticolare (anni ‘60)
 Relazionale (anni ‘70)
 A oggetti (anni ‘80)
 XML (anni ‘90)
9
MODELLO GERARCHICO
1.
Il modello gerarchico: è basato su strutture ad
albero, nato a metà degli anni ‘60 ma ancora
ampiamente usato
10
MODELLO GERARCHICO
Principali caratteristiche del modello gerarchico:
1.
Adatto per rappresentare situazioni nelle quali esiste
gerarchia fra i dati (es. memorizzare i dati dei
dipendenti che lavorano in un’azienda ed i loro figli)
2.
La radice è il record principale del database da cui
partono uno o più sottoalberi ad esso simili.
3. Ogni padre può avere più figli, un figlio può avere
un unico padre
4.
Da un nodo padre si riesce a raggiungere un nodo figlio
ma da questi è impossibile risalire al genitore.
Considerando l’esempio della figura precedente, se si ha la
necessità di risalire dal cliente al numero del conto occorre
cambiare il modello (vedi pagina seguente )
11
MODELLO GERARCHICO
CONTI
CLIENTI
Svantaggio : il record evidenziato in giallo relativo al
numero di conto 5100 si ripete due volte (ridondanza)!
12
MODELLO GERARCHICO
Principali svantaggi:
1.
Dipendenza fisica stretta e vincolante fra lo schema
logico e la realizzazione fisica
2.
Le operazioni di ricerca non sono efficaci
3.
Ridondanza dei dati come conseguenza del punto 2
13
MODELLO RETICOLARE
2.
Il modello reticolare: è basato sull’uso di grafi,
è stato sviluppato successivamente al modello
gerarchico (metà anni ‘70)
14
MODELLO RETICOLARE
Caratteristica delle strutture a grafo
Ogni nodo può essere connesso a più nodi e viceversa
Vantaggi:
•
Facilità di accesso e velocità di ricerca dei dati (grazie ai
puntatori del grafo)
Principali svantaggi:
1.
Spreco di spazio dovuto all’utilizzo di puntatori per i link
2.
Possibile ridondanza : per realizzare due reticoli
indipendenti occorre duplicare i dati
3.
Ricerca difficoltosa per dati non connessi tra loro
direttamente
4.
Rigidità : è difficile da modificare una volta realizzato
15
ALTRI MODELLI DI DATI….
3.
4.
Il modello a oggetti: sviluppato negli anni
Ottanta come evoluzione del modello relazionale,
che estende alle basi di dati il paradigma di
programmazione ad oggetti
Il modello XML , sviluppato negli anni Novanta
come rivisitazione del modello gerarchico.
16
IL MODELLO RELAZIONALE



– 1/4
Attualmente il modello relazionale dei dati è il più
diffuso.
È stato definito da Edgar Codd all’inizio degli anni ‘70
con l’obiettivo di non duplicare inutilmente le
informazioni.
Esso permette di definire tipi per mezzo del
costruttore relazione, che consente di organizzare i
dati in insiemi di record a struttura fissa.
17
IL MODELLO RELAZIONALE

– 2/4
Una relazione viene spesso rappresentata per mezzo di una
tabella, le cui righe rappresentano specifici record e le cui
colonne corrispondono ai campi del record.
(l’ordine delle righe e delle colonne è sostanzialmente irrilevante)
Punto di vista
del modello
relazionale
è una
relazione
è un
record
è un
campo
Punto di vista
logico (del
DBMS)
è una
tabella
è una riga
è una
colonna
18
IL MODELLO RELAZIONALE

– 3/4
Per esempio i dati relativi ai conti bancari e ai loro
movimenti possono essere organizzati per mezzo di due
relazioni rappresentabili per mezzo di due tabelle : conti e
movimenti.
19
IL MODELLO RELAZIONALE



– 4/4
Il modello relazionale, nasce nel 1970 e si è largamente
affermato nel secolo successivo.
È attualmente considerato il modello più semplice ed
efficace,
poiché è vicino al consueto modo di pensare i dati, e
si adatta in modo naturale alla classificazione e alla
strutturazione dei dati
Caratteristiche :
Utilizza un linguaggio matematico (concetto matematico di
relazione dalla teoria degli insiemi)
 Rivolto
ad eliminare problemi di ambiguità nella
terminologia e nella simbologia
20
 Indipendenza dai dati e dalla particolare struttura fisica.
