GESTIONE della BASE di DATI

Transcript

GESTIONE della BASE di DATI
GESTIONE della BASE di DATI
• I dati sono una componente fondamentale di un GIS
• Devono essere valutati con attenzione gli strumenti usati per:
– creare l’archivio dei dati
– manipolare le informazioni contenute nell’archivio
– mantenere e aggiornare le informazioni nell’archivio
• I DBMS
Data
Base
Management
System
sono pacchetti software
in grado di gestire queste
operazioni
Basi di dati georeferenziate
1
GESTIONE della BASE di DATI
Una base di dati è una raccolta di uno o più file o tabelle di
dati archiviati in modo strutturato, tale che ad un
opportuno software per la gestione dei dati (DBMS) sia
possibile manipolare o recuperare i dati stessi.
Caratteristiche
di un DBMS
consistenza,
correttezza,
affidabilità
dei dati
minima ridondanza
dei dati
sicurezza
dei dati
integrità
dei dati
Basi di dati georeferenziate
gestione
facilitata
dei dati
accessibilità
dei dati
2
STRUTTURE di DBMS
L’archivio di dati viene creato secondo una struttura ben
definita, che di solito corrisponde ad uno dei seguenti modelli:
• modello gerarchico
• modello reticolare
• modello relazionale
Questi modelli ci guidano
nell’organizzazione dei dati
all’interno dei file e tabelle che
costituiscono la base di dati (cioè
l’archivio delle informazioni
contenute nel GIS)
Basi di dati georeferenziate
nell’ambito GIS
il modello più
usato è quello
relazionale
3
STRUTTURE di DBMS
E’ evidente che una
grande e complessa
quantità di dati non può
essere semplicemente
archiviata in un unico file
(o in un’unica tabella)
Questi modelli ci guidano
nell’organizzazione dei dati
all’interno dei file e tabelle che
costituiscono la base di dati (cioè
l’archivio delle informazioni
contenute nel GIS)
E’ necessario suddividere i
dati in più file o tabelle,
secondo un’organizzazione
che il DBMS sia in grado di
riconoscere e gestire
Basi di dati georeferenziate
4
Modelli (strutture)
GERARCHICO e RETICOLARE
E’ possibile implementare queste strutture per organizzare
l’archiviazione dei dati se è noto a priori un modello di
connessione fra i dati.
• Strutture di tipo GERARCHICO (o “ad albero”)
le connessioni fra i dati sono del tipo 1 : N
• Strutture di tipo RETICOLARE (“network”)
le connessioni fra i dati sono del tipo N : N
Basi di dati georeferenziate
5
Esempio di struttura GERARCHICA
6
Rappresentazione
gerarchica (ad albero)
della struttura dei dati
che rappresentano il
territorio in esame
b
B
i
5
4
c
h
TERRITORIO
A
a
A
e
C
B
C
7
g
a
c
e
d
2
2 1
b
i
c
6 4
4 5
e
i
h
g
f
7 3
3 2
3
f
1
d
1
2
Tabelle derivanti dalla struttura
di tipo ad albero
ID
Territorio
A1793
A1793
A1793
ID
Area
A
B
C
5
5
4
4
ID area
A
A
A
A
B
B
B
C
C
C
C
C
5
6
ID linea
a
c
e
d
b
i
c
e
i
h
g
f
Basi di dati georeferenziate
2
4
ID punto
Iniziale
1
5
4
2
5
6
4
2
4
6
7
3
4 6
6
7
ID punto
finale
5
4
2
1
6
4
5
4
6
7
3
2
6
Esempio di struttura RETICOLARE
6
Rappresentazione di tipo
reticolare della struttura dei
dati che rappresentano il
territorio in esame
b
B
i
5
4
c
TERRITORIO
h
Superfici
a
A
e
C
A
B
C
7
g
Linee
3
a
b
c
d
h
i
e
f
1
5
4
6
2
3
7
g
f
1
d
2
Punti
Tabelle derivanti dalla
struttura di tipo reticolare
ID area
A
A
A
A
B
B
B
C
C
C
C
C
ID linea
ID linea
a
c
e
d
b
i
c
e
i
h
g
f
a
c
e
d
b
i
c
e
i
h
g
f
Basi di dati georeferenziate
ID punto
iniziale
1
5
4
2
5
6
4
2
4
6
7
3
ID punto
finale
5
4
2
1
6
4
5
4
6
7
3
2
7
Esempio di struttura RELAZIONALE
6
b
B
i
5
Non si rappresenta il territorio
secondo uno schema “predefinito”
4
c
h
TERRITORIO
a
A
e
C
7
g
3
ID
territorio
A1793
f
1
d
2
Tabelle strutturate in modo relazionale
ID linea
A
B
C
D
E
F
G
H
I
ID punto
iniziale
1
5
4
2
2
3
7
6
4
ID punto
finale
5
6
5
1
4
2
3
7
6
ID area
Destra
A
B
B
A
C
C
C
C
C
SUPERFICI
PUNTI
ID
punto
1
2
3
4
5
6
7
X
0.
4.
7.
4.
1.
4.
7.
Y
0.
0.
1.
5.
5.
6.
2.
ID
area
A
B
C
Agricolo
Bosco
Riserva
LINEE
ID
linea
ID area
Sinistra
Esterno
Esterno
A
Esterno
A
Esterno
Esterno
Esterno
B
Basi di dati georeferenziate
Tipo
a
b
c
d
e
f
g
h
i
Tipo
Confine
Confine
Strada
Confine
Strada
Confine
Confine
Confine
Strada
8
Vantaggi delle strutture RELAZIONALI
• sono un mezzo efficiente per archiviare i dati
• sono strutture flessibili:
si possono fare collegamenti
fra le tabelle a seconda delle
proprie necessità
• sono strutture semplici, dal
punto di vista dell’utente: le
query sono formulate in termini
di COSA occorre trovare, e non
come lo si deve trovare
• al contrario, le strutture ad
albero e reticolare sono di
tipo rigido: i collegamenti fra
i dati sono stabiliti a priori
• al contrario, con le strutture
ad albero e reticolare occorre
sapere come sono collegate fra
loro le tabelle che contengono i
dati
Basi di dati georeferenziate
9
Progettazione di una base di dati
Classificazione ANSI SPARC (1975)
ANSI = American National
Standards Institute
SPARC = Standards Planning
and Requirements Commitee
Basi di dati georeferenziate
10
Livelli di progettazione di una base di dati
LIVELLO ESTERNO
descrizione in linguaggio naturale
delle entità di interesse
LIVELLO CONCETTUALE
rappresentazione schematica delle
entità e delle loro relazioni
LIVELLO LOGICO
trasformazione del mod. conc. per
implementazione nel computer
LIVELLO INTERNO
descrizione delle strutture dati
interne al computer
Basi di dati georeferenziate
11
Come si progetta una
base di dati relazionale?
Prendiamo in esame il livello concettuale e il livello logico
della progettazione di una base di dati relazionale:
• al livello concettuale si ottiene il modello concettuale
• al livello logico si ottiene il modello logico
MODELLO CONCETTUALE
Diagramma entità - relazioni
MODELLO LOGICO
Tabelle relazionali
Basi di dati georeferenziate
12
Diagramma entità - relazioni (ERD)
ENTITA’
fenomeno del mondo reale, che ha una
sua identità complessiva e non può essere
suddiviso in parti ad esso uguali (es. una
casa non può essere suddivisa in più case,
ma è suddivisa in più locali);
l’insieme delle diverse entità coinvolte nel
modello concettuale rappresenta tutti i
fenomeni che devono essere descritti nella
base di dati da progettare.
CLASSE DI ENTITA’
categoria che comprende entità che
presentano somiglianze fra di loro.
RELAZIONE FRA ENTITA’
(O CLASSI DI ENTITA’)
legame concettuale fra due o più
entità, di cui interessa tenere
memoria;
per ogni relazione viene indicato il
numero minimo e massimo di entità
coinvolte (cardinalità della
relazione).
ATTRIBUTI (di entità e relazioni)
caratteristiche proprie e descrittive di
una entità o di una relazione; ogni
attributo ha un range di possibili valori.
Basi di dati georeferenziate
13
Esempio di diagramma ERD
Modellizzazione della
geometria dell’aspetto
spaziale della carta in
figura.
Primitive geometriche:
• punti;
• segmenti.
Si suppone di avere anche informazioni relative a
nome e tipologia delle strade e dati relativi alle
particelle catastali e ai proprietari.
Basi di dati georeferenziate
14
Entità e loro attributi
Strada
Nome strada
Lunghezza
Tipologia
Particella
Catastale
Codice particella
Indirizzo
Proprietario
In questa fase è utile creare un
dizionario dei dati
(
metadati), contenente le
definizioni di entità, attributi e
relazioni.
Codice fiscale
Data di nascita
Comune di nascita
Cognome
Nome
Segmento
Punto
Numero segmento
Lunghezza
Numero punto
Coordinate x,y
Basi di dati georeferenziate
15
Relazioni
la strada ha bordi
definiti da segmenti
strada - segmento
particella - segmento
la particella ha bordi
definiti da segmenti
segmento - punto
il segmento ha estremi
definiti da due punti
particella - proprietario
la particella ha un
proprietario
Basi di dati georeferenziate
16
Diagramma ERD
Strada
Nome strada
Lunghezza
Tipologia
Segmento
la strada ha bordi
definiti da segmenti
Numero segmento
Lunghezza
il segmento ha estremi
definiti da due punti
la particella ha bordi
definiti da segmenti
Particella
Catastale
Codice particella
Indirizzo
Punto
Numero punto
Coordinate x,y
la particella ha
un proprietario
Proprietario
Codice fiscale
Data di nascita
Comune di nascita
Cognome
Nome
Basi di dati georeferenziate
17
Tabelle relazionali
• Il concetto fondamentale per l’archiviazione dei dati nel modello
relazionale è una
TABELLA
detta anche relazione.
• Le tabelle sono contenitori di dati.
In questa organizzazione dei dati in forma tabellare:
– ogni riga (record) rappresenta un dato;
– ogni colonna (campo) rappresenta una proprietà dei dati.
ID linea
A
B
C
D
E
F
G
H
I
ID punto
iniziale
1
5
4
2
2
3
7
6
4
ID punto
finale
5
6
5
1
4
2
3
7
6
ID area
Destra
A
B
B
A
C
C
C
C
C
Basi di dati georeferenziate
ID area
Sinistra
Esterno
Esterno
A
Esterno
A
Esterno
Esterno
Esterno
B
18
Tabelle relazionali
• I dati che appartengono a una stessa tabella sono caratterizzati dalle
stesse proprietà.
• Tutti i record della tabella hanno lo stesso formato, e quindi
contengono lo stesso numero di campi (colonne).
• Uno dei campi della tabella è detto chiave primaria: esso assume un
valore diverso per ogni record della tabella, e serve per identificare
univocamente il record a cui appartiene.
La chiave primaria è l’unico meccanismo di indirizzamento nel
modello di dati di tipo relazionale.
ID linea
A
B
C
D
E
F
G
H
I
ID punto
iniziale
1
5
4
2
2
3
7
6
4
ID punto
finale
5
6
5
1
4
2
3
7
6
ID area
Destra
A
B
B
A
C
C
C
C
C
Basi di dati georeferenziate
ID area
Sinistra
Esterno
Esterno
A
Esterno
A
Esterno
Esterno
Esterno
B
19
Trasformazione del modello entità-relazioni
in modello relazionale
• Torniamo all’esempio già
utilizzato per vedere come si
passa dal modello ERD
(modello concettuale) al
modello di dati archiviati con
tabelle di tipo relazionale
(modello logico).
Basi di dati georeferenziate
20
Trasformazione del modello entità-relazioni
in modello relazionale
Strada
Nome strada
Lunghezza
Tipologia
Segmento
la strada ha bordi
definiti da segmenti
Numero segmento
Lunghezza
il segmento ha estremi
definiti da due punti
Si costruisce una tabella di dati per
ogni entità e per ogni relazione
riportate nel diagramma entitàrelazioni (ERD).
Particella
Catastale
Codice particella
Indirizzo
Punto
Numero punto
Coordinate x,y
particelle
proprietari
strade
segmenti
punti
la particella ha bordi
definiti da segmenti
strada-segmento
particella-segmento
segmento-punti
particella-proprietario
Basi di dati georeferenziate
la particella ha
un proprietario
Proprietario
Codice fiscale
Data di nascita
Comune di nascita
Cognome
Nome
21
Trasformazione del modello entità-relazioni
in modello relazionale
Strada
Nome strada
Lunghezza
Tipologia
Segmento
la strada ha bordi
definiti da segmenti
Numero segmento
Lunghezza
Basi di dati georeferenziate
22
Trasformazione del modello entità-relazioni
in modello relazionale
Segmento
Numero segmento
Lunghezza
il segmento ha estremi
definiti da due punti
Punto
Numero punto
Coordinate x,y
Basi di dati georeferenziate
23
Trasformazione del modello entità-relazioni
in modello relazionale
Particella
Catastale
Codice particella
Indirizzo
la particella ha
un proprietario
Proprietario
Codice fiscale
Data di nascita
Comune di nascita
Cognome
Nome
Basi di dati georeferenziate
24