Post on 15-Feb-2019
09/11/2009
1
Corso Corso di di
Basi di Dati SpazialiBasi di Dati Spaziali
Angelo MontanariAngelo MontanariDonatella GubianiDonatella Gubiani
Progettazione concettuale e Progettazione concettuale e progettazione logicaprogettazione logica
2
Progettazione di Progettazione di una base di datiuna base di dati
•• È una delle attività svolte nell’ambito del È una delle attività svolte nell’ambito del processo di sviluppo dei sistemi processo di sviluppo dei sistemi informativi e va inquadrata in tale informativi e va inquadrata in tale contestocontesto
•• IlIl ciclo di vita dei sistemi informativiciclo di vita dei sistemi informativi::–– insieme delle attività svolte da analisti, progettisti e insieme delle attività svolte da analisti, progettisti e
utenti nel corso dello sviluppo e dell’utilizzo dei utenti nel corso dello sviluppo e dell’utilizzo dei sistemi informativisistemi informativi
–– attività iterativa (ciclo)attività iterativa (ciclo)
3
Studio di fattibilità
Raccolta e analisi dei requisiti
Progettazione
Realizzazione
Validazione ecollaudo
Funzionamento
4
Schema concettuale
Requisiti della base di dati
PROGETTAZIONE CONCETTUALE
PROGETTAZIONE LOGICA
Schema logico
Schema fisico
PROGETTAZIONE FISICA
5
Progettazioneconcettuale
Progettazione logica
Progettazionefisica
6
Progettazione concettualeProgettazione concettuale
•• Passaggio da una descrizione Passaggio da una descrizione informale del dominio applicativo informale del dominio applicativo ad un ad un modellomodello
–– conforme al dominioconforme al dominio–– indipendente dalla struttura indipendente dalla struttura
logica e fisica dei datilogica e fisica dei dati
09/11/2009
2
7
Modellazione concettuale Modellazione concettuale dei datidei dati
Primitive concettuali
Modalità di descrizione
Linguaggio testuale
Notazione grafica
Processo di modellazione
REALTÀ
SCHEMACONCETTUALE
sintassi e simboli grafici
costrutti e regole
8
Modello concettualeModello concettuale•• Collezione di concetti/costrutti che Collezione di concetti/costrutti che possono essere utilizzati per possono essere utilizzati per descrivere un insieme di dati e, in descrivere un insieme di dati e, in taluni casi, le relative operazioni taluni casi, le relative operazioni (tipi di dato astratti)(tipi di dato astratti)
•• Permettono di rappresentare in Permettono di rappresentare in modo strutturato (un’astrazione di) modo strutturato (un’astrazione di) la realtàla realtà
9
Per modellare dati spaziali…Per modellare dati spaziali…•• (Come visto in precedenza,) (Come visto in precedenza,) requisiti requisiti sostanzialmente diversisostanzialmente diversi delle delle applicazioni tradizionali:applicazioni tradizionali:–– dati con estensione e posizione spazialedati con estensione e posizione spaziale–– dualità delle visioni ad oggetti e a campidualità delle visioni ad oggetti e a campi–– informazioni incompleteinformazioni incomplete–– diverse rappresentazioni degli oggettidiverse rappresentazioni degli oggetti–– relazioni spaziali fra oggettirelazioni spaziali fra oggetti
•• SoluzioneSoluzione: estendere i modelli dei : estendere i modelli dei dati tradizionalidati tradizionali
10
FormalismiFormalismi
•• I modelli proposti in letteratura I modelli proposti in letteratura si basano su:si basano su:––Formalismo EntitàFormalismo Entità--Relazioni (ER)Relazioni (ER) ––Formalismi Orientati agli Oggetti Formalismi Orientati agli Oggetti (OO)(OO)
––Formalismo IFOFormalismo IFO
11
Modelli basati sul Modelli basati sul formalismo ERformalismo ER
•• Caratterizzato da due concetti Caratterizzato da due concetti fondamentali:fondamentali:
entitàentità e e relazionerelazione
più alcuni concetti addizionali quali attributo, più alcuni concetti addizionali quali attributo, generalizzazione, ...generalizzazione, ...
•• Introducono Introducono entità con riferimento entità con riferimento spazialespaziale e e relazioni di tipo spazialerelazioni di tipo spaziale
•• Rappresentanti principali di questa famiglia Rappresentanti principali di questa famiglia di modelli: di modelli: -- MODULMODUL--R, GISER, R, GISER, GeoERGeoER, (, (ChronoChrono))GeoGraphGeoGraph
12
ModelliModelli basatibasati sui sui formalismiformalismi OOOO
•• Elementi comuni:Elementi comuni:–– Classi di oggettiClassi di oggetti -- MetodiMetodi
–– AttributiAttributi -- SpecializzazioniSpecializzazioni
•• Distinguono Distinguono classi di oggetti classi di oggetti georeferenziategeoreferenziateo non o non georeferenziategeoreferenziate e introducono costrutti e introducono costrutti semantici come ad esempio semantici come ad esempio relazioni relazioni topologichetopologiche e e aggregazioni spaziali aggregazioni spaziali
•• Rappresentanti principali di questa famiglia di Rappresentanti principali di questa famiglia di modellimodelli::-- MGEO/MGEO/MGEO+MGEO+, , GeoOOAGeoOOA, OMT, OMT--G, G, ObjectObject--
RelationalRelational, MADS, , MADS, GeoFrameGeoFrame, GMOD, CONGOO, GMOD, CONGOO
09/11/2009
3
13
ModelliModelli basatibasati sulsulformalismoformalismo IFOIFO
•• Concetti chiave:Concetti chiave:–– tipi atomicitipi atomici
–– tipi complessitipi complessi
–– frammentiframmenti
•• Utilizzano una modellazione deUtilizzano una modellazione deii concetticoncettigeograficigeografici complessa e poco intuitivacomplessa e poco intuitiva
•• Rappresentanti principali di questa famiglia Rappresentanti principali di questa famiglia di modelli:di modelli:-- GeoIFOGeoIFO, Modello IFO per applicazioni geografiche, Modello IFO per applicazioni geografiche
14
UnaUna propostaproposta originaleoriginale::ilil modellomodello ((ChronoChrono))GeoGraphGeoGraph
•• Un’analisi dei modelli proposti in letteratura Un’analisi dei modelli proposti in letteratura rispetto ad alcuni criteri fondamentali, quali:rispetto ad alcuni criteri fondamentali, quali:–– potenza espressivapotenza espressiva–– semplicitàsemplicità–– prossimitprossimità ai modelli logici spazialià ai modelli logici spaziali
ha rivelato come nessun modello sia del tutto ha rivelato come nessun modello sia del tutto soddisfacentesoddisfacente
•• A livello spaziale, i modelli più significativi A livello spaziale, i modelli più significativi sono due modelli appartenenti OO: sono due modelli appartenenti OO:
OMTOMT--G e MADSG e MADS
15
((ChronoChrono))GeoGraphGeoGraph: : caratteristichecaratteristiche spazialispaziali
•• EstendeEstende ilil modellomodello EntitàEntità--RelazioniRelazioni per per ililtrattamentotrattamento deidei datidati spazialispaziali (e (e temporalitemporali))
•• DalDal modellomodello EntitEntitàà--RelazioniRelazioni mutua i mutua i concetti di:concetti di:–– EntitàEntità–– AttributoAttributo–– RelazioneRelazione–– Relazione di specializzazioneRelazione di specializzazione
•• Inoltre, introduce nuovi concetti quali..Inoltre, introduce nuovi concetti quali..
16
EntitàEntità spazialispaziali
•• Le entità georeferenziate sono associate Le entità georeferenziate sono associate ad uno dei seguenti tipi geometrici: ad uno dei seguenti tipi geometrici: POINT, MULTIPOINT, LINE, MULTILINE, POINT, MULTIPOINT, LINE, MULTILINE, POLYGON, MULTIPOLYGON, POLYGON, MULTIPOLYGON, COLLECTION, OTHER GEOMETRYCOLLECTION, OTHER GEOMETRY
Entità Spaziale
?
17
AttributiAttributi spazialispaziali
•• Gli attributi spaziali assumono il loro Gli attributi spaziali assumono il loro valore di uno specifico valore di uno specifico tipi tipi geometricigeometrici
•• Non rappresentano l’estensione spaziale Non rappresentano l’estensione spaziale di un’entità ma una sua caratteristicadi un’entità ma una sua caratteristica-- l’entità potrebbe non essere spazialel’entità potrebbe non essere spaziale
Persona residenza
18
Relazioni spazialiRelazioni spaziali•• Tipi di relazioni spaziali:Tipi di relazioni spaziali:
-- relazioni topologicherelazioni topologiche
-- relazioni metricherelazioni metriche
-- relazioni relazioni direzionalidirezionali
Entità Spaziale Entità SpazialeRelazionespaziale
09/11/2009
4
19
Relazioni topologiche Relazioni topologiche -- 22•• GeoGraphGeoGraph supporta un insieme supporta un insieme
completo e minimale di relazioni completo e minimale di relazioni topologiche tra due geometrie arbitrarie topologiche tra due geometrie arbitrarie in in RR2:2:
-- disgiunzionedisgiunzione, adiacenza, uguaglianza, , adiacenza, uguaglianza, inclusione, coperturainclusione, copertura, sovrapposizione con , sovrapposizione con bordi disgiunti e sovrapposizione con bordi disgiunti e sovrapposizione con intersezione dei intersezione dei bordibordi
20
Relazioni topologiche Relazioni topologiche -- 33•• Sono stati introdotti dei vincoli di Sono stati introdotti dei vincoli di
integrità sulle relazioni tra coppie di integrità sulle relazioni tra coppie di entità georeferenziateentità georeferenziate
Disgiunzione, adiacenza, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordiPolygon
Line
TutteLine
Disgiunzione, inclusionePoint
Disgiunzione, adiacenzaMultipolygon
Disgiunzione, adiacenzaMultiline
Disgiunzione, adiacenza, uguaglianzaMultipoint
Disgiunzione, adiacenzaPolygonPoint
Disgiunzione, adiacenzaLine
Disgiunzione, uguaglianzaPoint
Possibili relazioni2a entità1a entità
21
Relazioni topologiche Relazioni topologiche -- 44
TutteMultipolygon
Disgiunzione, adiacenza, inclusione, copertura, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Multiline
Disgiunzione, adiacenza, inclusione, copertura, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
MultipointPolygon
TuttePolygon
Disgiunzione, adiacenza, inclusione, copertura, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Line
Disgiunzione, adiacenza, inclusionePoint
Disgiunzione, adiacenza, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordiMultipolygon
TutteMultilineLine
Disgiunzione, adiacenza, inclusione, copertura, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Multipoint
Relazioni possibili2a entità1a entità
22
Relazioni topologiche Relazioni topologiche -- 55
Disgiunzione, adiacenza, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Polygon
TutteLineMultiline
Disgiunzione, inclusionePoint
Disgiunzione, adiacenza, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Multipolygon
Disgiunzione, adiacenzaMultiline
Disgiunzione, adiacenza, uguaglianza, inclusione, copertura, sovrapposizione con intersezione dei bordi
Multipoint
Disgiunzione, adiacenza, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
PolygonMultipoint
Disgiunzione, adiacenzaLine
Disgiunzione, adiacenza, uguaglianza, coperturaPoint
Relazioni possibili2a entità1a entità
23
Relazioni topologiche Relazioni topologiche -- 66
TutteMultipolygon
Disgiunzione, adiacenza, inclusione, copertura, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Multiline
Disgiunzione, adiacenza, inclusione, copertura, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Multipoint
TuttePolygonMultipolygon
Disgiunzione, adiacenza, inclusione, copertura, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Line
Disgiunzione, adiacenza, inclusionePoint
Disgiunzione, adiacenza, sovrapposizione con bordi disgiunti, sovrapposizione con intersezione dei bordi
Multipolygon
TutteMultilineMultiline
Disgiunzione, adiacenza, inclusioneMultipoint
Relazioni possibili2a entità1a entità
24
Relazioni topologiche Relazioni topologiche -- 77
Esempio.Esempio. Ogni Stato (Ogni Stato (MultipoligonoMultipoligono) ) contiene al suo interno una o più entità contiene al suo interno una o più entità Città (Punto)Città (Punto)
NotaNota: la relazione non è simmetrica!: la relazione non è simmetrica!
Stato CittàContienecontiene è contenuta
1:N 1:1
09/11/2009
5
25
Relazioni metricheRelazioni metriche
Esempio.Esempio. Ogni scuola fa riferimento ad Ogni scuola fa riferimento ad un ospedale che dista meno di un ospedale che dista meno di 50 50 KmKm
Scuola Ospedaleriferisce
0:N1:1 0-50
26
Aggregazioni spaziali Aggregazioni spaziali -- 11
•• Aggregazione spaziale tra due entità Aggregazione spaziale tra due entità georeferenziategeoreferenziate–– situazione in cui un’entità Intero è situazione in cui un’entità Intero è
composta da un’insieme di entità Partecomposta da un’insieme di entità Parte
Entità Spaziale Entità Spaziale
Intero Parte
•• Le parti non possono sovrapporsi e la Le parti non possono sovrapporsi e la geometria dell’intero è pienamente geometria dell’intero è pienamente coperta dalla geometria delle particoperta dalla geometria delle parti
27
Aggregazioni spaziali Aggregazioni spaziali -- 22•• Sono stati introdotti dei vincoli (ovvi) sulla Sono stati introdotti dei vincoli (ovvi) sulla
partecipazione delle entità georeferenziate partecipazione delle entità georeferenziate alle aggregazioni spazialialle aggregazioni spaziali
tutteOther geometry
tutteCollection
Polygon e MultipolygonMultipolygon
PolygonPolygon
Line e MultilineMultiline
LineLine
Point e MultipointMultipoint
nessunaPoint
Entità parteEntità intero
28
Aggregazioni spaziali Aggregazioni spaziali -- 33
Regione Provincia
Esempio.Esempio. L’entità Regione (poligono) è L’entità Regione (poligono) è composta da un aggregato di entità composta da un aggregato di entità Provincia (poligono)Provincia (poligono)
29
Specializzazioni cartografiche Specializzazioni cartografiche -- 11
•• Specializzazione cartografica: Specializzazione cartografica: –– caso particolare di specializzazione, in cui caso particolare di specializzazione, in cui
ad un’entità vengono associate molteplici ad un’entità vengono associate molteplici geometriegeometrie
•• Si distingue in:Si distingue in:–– variazione di forma: rappresentazione variazione di forma: rappresentazione
simultanea di più forme geometriche di una simultanea di più forme geometriche di una stessa entità (totale e sovrapposta)stessa entità (totale e sovrapposta)
–– variazione di scala: rappresentazione di variazione di scala: rappresentazione di diverse geometrie a seconda della scala diverse geometrie a seconda della scala (totale e disgiunta)(totale e disgiunta)
30
SpecializzazioniSpecializzazioni cartografichecartografiche -- 22
CimiteroCroce CimiteroArea
Cimitero
Variazione di forma
CittàPunto CittàPoligono
Città
Variazione di scala
09/11/2009
6
31
TerritorioTerritorio didi schemaschema
•• Il territorio di schema rappresenta il dominio Il territorio di schema rappresenta il dominio spaziale all’interno del quale devono essere spaziale all’interno del quale devono essere incluse tutte le istanze spaziali dello schemaincluse tutte le istanze spaziali dello schema
•• Condizioni più vincolanti possono Condizioni più vincolanti possono eventualmente essere definiteeventualmente essere definite
TerritorioDiSchema
ProvinciaRegioneFVG
32
CampiCampi
•• Permettono di modellare la visione a campi del Permettono di modellare la visione a campi del mondo realemondo reale
•• Possono essere associati all’intero territorio di Possono essere associati all’intero territorio di schema o a singole entità spazialischema o a singole entità spaziali
•• Hanno associato uno specifico tipo di Hanno associato uno specifico tipo di campionamento, oltre che uno specifico dominiocampionamento, oltre che uno specifico dominio
Campo
33
Strumento sviluppatoStrumento sviluppato
•• Strumento grafico per la sintesi di schemi Strumento grafico per la sintesi di schemi GeoGraphGeoGraph
•• Linguaggio di programmazione usato: JavaLinguaggio di programmazione usato: Java•• Funzionalità:Funzionalità:
–– Strumenti per disegnare i diagrammiStrumenti per disegnare i diagrammi–– Dialoghi per modificare le caratteristiche degli Dialoghi per modificare le caratteristiche degli
elementi del diagrammaelementi del diagramma–– Visualizzazione di un albero che definisce la struttura Visualizzazione di un albero che definisce la struttura
del modellodel modello–– Salvataggio su file e stampa dei diagrammiSalvataggio su file e stampa dei diagrammi–– TagliaTaglia--copiacopia--incolla, annullamento e ripristino, zoom, incolla, annullamento e ripristino, zoom,
visualizzazione di righello, griglia e porte visualizzazione di righello, griglia e porte didiconnessione tra i nodi del graficoconnessione tra i nodi del grafico
34
CGG Software Tool
35
Caso di studioCaso di studio
Progetto diProgetto di un un sistemasistema informativoinformativogeograficogeografico per la per la gestionegestione delle delle
risorse risorse faunisticofaunistico--venatorievenatorie di una di una regioneregione
36
Risorse faunisticoRisorse faunistico--venatorievenatorie
09/11/2009
7
37
Granularità dei dati spazialiGranularità dei dati spaziali
•• Obiettivo: Obiettivo: –– analizzare in dettaglio uno degli aspetti analizzare in dettaglio uno degli aspetti
che caratterizzano i dati spazialiche caratterizzano i dati spaziali–– proporre un metodo di gestione a livello proporre un metodo di gestione a livello
concettualeconcettuale
•• Idea di base: Idea di base: –– passare da una rappresentazione unica passare da una rappresentazione unica
ad una rappresentazione multiplaad una rappresentazione multipla
•• Due aspetti:Due aspetti:–– spazialespaziale–– semanticosemantico
38
Granularità spazialeGranularità spaziale•• CONCETTO: livello di dettaglio legato alla CONCETTO: livello di dettaglio legato alla
rappresentazione spaziale (geometria) dei datirappresentazione spaziale (geometria) dei dati•• Elementi basilari:Elementi basilari:
–– RISOLUZIONE: dimensione geometrica minima RISOLUZIONE: dimensione geometrica minima distinguibile nella rappresentazione, e quindi, livello distinguibile nella rappresentazione, e quindi, livello di dettaglio a cui un oggetto è memorizzatodi dettaglio a cui un oggetto è memorizzato
–– SCALA: rapporto fra la dimensione nella realtà e SCALA: rapporto fra la dimensione nella realtà e quella della rappresentazione sulla mappaquella della rappresentazione sulla mappa
•• Estensione dei modelli esistenti con Estensione dei modelli esistenti con l’introduzione di costrutti adeguati: l’introduzione di costrutti adeguati: –– specializzazioni cartografiche, diagrammi di specializzazioni cartografiche, diagrammi di
trasformazione e presentazione (OMTtrasformazione e presentazione (OMT--G), G), raffinamento e ridefinizione (MADS)raffinamento e ridefinizione (MADS)
39
Granularità semanticaGranularità semantica
•• CONCETTO: livello di dettaglio semantico CONCETTO: livello di dettaglio semantico legato alle informazioni che l’utente desidera legato alle informazioni che l’utente desidera rappresentarerappresentare
•• Meccanismi per analizzare la struttura Meccanismi per analizzare la struttura semantica delle informazioni:semantica delle informazioni:–– classificazioneclassificazione–– scomposizione in parti (relazione partescomposizione in parti (relazione parte--intero)intero)
•• Modelli concettuali e relazione parteModelli concettuali e relazione parte--intero: intero: –– estensione dei modelli esistenti con l’introduzione estensione dei modelli esistenti con l’introduzione
della relazione di aggregazionedella relazione di aggregazione
40
Relazioni tra granularità Relazioni tra granularità spaziale e semanticaspaziale e semantica
•• Struttura ad alberoStruttura ad albero
•• Allo stesso livello Allo stesso livello semantico possono semantico possono corrispondere più corrispondere più livelli spazialilivelli spaziali
•• Talvolta, allo stesso Talvolta, allo stesso livello spaziale livello spaziale possono possono corrispondere più corrispondere più livelli semanticilivelli semantici
41
•• Al costrutto di entità spaziale è stato Al costrutto di entità spaziale è stato aggiunta la risoluzioneaggiunta la risoluzioneRisoluzione : minima distanza a cui due punti possonoessere distinguibili
((ChronoChrono))GeoGraphGeoGraph e la e la granularità spazialegranularità spaziale
•• Ripercussioni sul resto del modello:Ripercussioni sul resto del modello:–– sspecializzazione pecializzazione cartografica cartografica –– rrelazioni elazioni topologichetopologiche–– aaggregazione spazialeggregazione spaziale
42
Specializzazione CartograficaSpecializzazione Cartografica
•• Data una specifica entità spaziale la sua Data una specifica entità spaziale la sua rappresentazione può variare:rappresentazione può variare:-- nome (semantica)nome (semantica)
-- forma geometricaforma geometrica
-- risoluzionerisoluzione
09/11/2009
8
43
Relazioni Spaziali Relazioni Spaziali -- 11
44
Relazioni Spaziali Relazioni Spaziali -- 22
45
Aggregazione SpazialeAggregazione Spaziale• Rilassamento dei vincolo:
- completa copertura dell’intero
-- non non sovrapposizionesovrapposizione delledelle partiparti
46
Caso di studioCaso di studio
Integrazione servizi comunali:Integrazione servizi comunali:-- sorveglianza di luoghi rischiosisorveglianza di luoghi rischiosi
-- gestione di retigestione di reti-- analisi dei campi analisi dei campi elettromagneticielettromagnetici
47
Servizi ComunaliServizi Comunali
48
Il Il modellomodello GeoERGeoER
•• Estensione del modello EREstensione del modello ER•• Elementi distintivi:Elementi distintivi:
––posizione dell’oggetto nello spazioposizione dell’oggetto nello spazio––viste di oggetti geograficiviste di oggetti geografici––attributi dipendenti dallo spazioattributi dipendenti dallo spazio––relazioni spazialirelazioni spaziali––oggetti geografici complessioggetti geografici complessi
09/11/2009
9
49
Elementi distintiviElementi distintivi•• Spazio di riferimento: Spazio di riferimento:
piano euclideopiano euclideo
•• Nuovi costruttiNuovi costrutti::––territorio di schematerritorio di schema––entità geometricaentità geometrica––generalizzazione di entità generalizzazione di entità geometrichegeometriche
––composizione di entità geometrichecomposizione di entità geometriche––contenimento di entità geometrichecontenimento di entità geometriche
50
Territorio di schemaTerritorio di schema
•• Territorio di schemaTerritorio di schema: poligono : poligono che rappresenta il territorio che rappresenta il territorio contenente tutti i valori geometrici contenente tutti i valori geometrici che possono essere ottenuti a che possono essere ottenuti a partire da un dato schema partire da un dato schema concettualeconcettuale
•• Spazio di riferimento: Spazio di riferimento: ℜℜ22
51
EntitàEntità
•• Un’Un’entitàentità è un insieme di oggetti del è un insieme di oggetti del mondo reale, rilevanti per l’applicazione, mondo reale, rilevanti per l’applicazione, caratterizzati da proprietà comuni e dotati caratterizzati da proprietà comuni e dotati di esistenza autonomadi esistenza autonoma
•• Tipi di entità:Tipi di entità:–– Entità (standard)Entità (standard)
–– Entità geometricaEntità geometrica
–– Entità (standard) con attributo geometricoEntità (standard) con attributo geometrico
52
Tipi Tipi didi entitàentità geometricageometrica•• La dichiarazione di un tipo di entità geometrica La dichiarazione di un tipo di entità geometrica
definisce una proprietà valida su alcune definisce una proprietà valida su alcune porzioni del territorio di schema. porzioni del territorio di schema. E’ possibile dichiarare proprietà aggiuntive E’ possibile dichiarare proprietà aggiuntive qualiquali–– attributiattributi–– relazioni geometricherelazioni geometriche
•• Ogni tipo di entità geometrica ha Ogni tipo di entità geometrica ha obbligatoriamente associato un obbligatoriamente associato un tipo tipo geometricogeometrico–– PUNTO (PT) PUNTO (PT) –– LINEA (LN)LINEA (LN) –– POLIGONO (PG)POLIGONO (PG)
53
TipoTipo geometricogeometrico poligonopoligono•• Un poligono è l'unione di:Un poligono è l'unione di:
–– insiemi chiusi regolari e connessi di insiemi chiusi regolari e connessi di ℜ2
–– linee linee –– punti isolatipunti isolati
contenente almeno contenente almeno un insieme chiuso un insieme chiuso regolare e connesso regolare e connesso
•• Gli insiemi chiusi regolari e connessi possono Gli insiemi chiusi regolari e connessi possono contenere buchicontenere buchi
•• Le linee e i punti isolati rappresentano Le linee e i punti isolati rappresentano poligoni degeneripoligoni degeneri
54
TipoTipo geometricogeometrico linealinea
•• Una linea è l'unione di:Una linea è l'unione di:–– archi sempliciarchi semplici–– punti isolatipunti isolati
contenente almeno un insieme contenente almeno un insieme omeomorfo a un segmento di rettaomeomorfo a un segmento di retta
•• I punti rappresentano curve degeneriI punti rappresentano curve degeneri
09/11/2009
10
55
TipoTipo geometricogeometrico puntopunto
•• Un qualsiasi insieme di punti isolati Un qualsiasi insieme di punti isolati del pianodel piano
56
VincoloVincolo didi mutuamutua esclusioneesclusionetratra puntipunti e e lineelinee
•• Tra le istanze di entità geometriche Tra le istanze di entità geometriche di tipo linea e di tipo punto viene di tipo linea e di tipo punto viene fatta implicitamente la seguente fatta implicitamente la seguente assunzione (se la si vuole rilasciare, assunzione (se la si vuole rilasciare, occorre farlo in modo esplicito):occorre farlo in modo esplicito):
UN PUNTO NON È MAI UN PUNTO NON È MAI CONTENUTO IN UNA LINEACONTENUTO IN UNA LINEA
57
IstanzaIstanza didi entitàentitàdidi tipotipo geometricogeometrico
•• Porzione del territorio di uno schema Porzione del territorio di uno schema avente le seguenti caratteristiche:avente le seguenti caratteristiche:
–– su tutta la porzione di territorio che la su tutta la porzione di territorio che la costituisce, vale la proprietà definita dal tipo di costituisce, vale la proprietà definita dal tipo di entità geometrica cui l'istanza appartieneentità geometrica cui l'istanza appartiene
–– tutte le proprietà aggiuntive definite per quel tutte le proprietà aggiuntive definite per quel tipo di entità geometrica hanno lo stesso tipo di entità geometrica hanno lo stesso valore su tutta la porzione di territoriovalore su tutta la porzione di territorio
–– due diverse istanze di entità geometrica due diverse istanze di entità geometrica differiscono o nella geometria o nel valore di differiscono o nella geometria o nel valore di almeno una delle proprietà aggiuntivealmeno una delle proprietà aggiuntive
58
EsempioEsempio didi istanzaistanza didientitàentità didi tipotipo geometricogeometrico
•• Si noti che la definizione non richiede che le Si noti che la definizione non richiede che le porzioni di territorio costituenti due diverse porzioni di territorio costituenti due diverse istanze di entità geometrica siano disgiunteistanze di entità geometrica siano disgiunte
59
Entità standard con attributo geometrico
• E’ una funzione che, data un’istanza e dell’entità normale, restituisce un’istanza e’ di entità geometrica. Tale istanza e’ è totalmente individuata dall’essere il valore dell’attributo geometrico di e.
• L’attributo geometrico di un’entità normale, se presente, è unico.
60
GeneralizzazioneGeneralizzazione
•• Una Una generalizzazionegeneralizzazione consiste di un consiste di un tipo di entità genitore E tipo di entità genitore E ee di un di un insieme di tipi di entità figlio (Einsieme di tipi di entità figlio (E11,...,E,...,Enn))
•• Per ogni i, le istanze di EPer ogni i, le istanze di Eii sono un sono un sottoinsieme delle istanze di Esottoinsieme delle istanze di E
09/11/2009
11
61
GeneralizzazioneGeneralizzazione didientitàentità geometrichegeometriche -- 11
•• Caratteristiche distintive:Caratteristiche distintive:–– l'entità geometrica E non possiede proprietà l'entità geometrica E non possiede proprietà
aggiuntiveaggiuntive–– ogni istanza di un’entità geometrica Ei, ogni istanza di un’entità geometrica Ei,
entità figlio dell'entità geometrica E, è entità figlio dell'entità geometrica E, è anche istanza di Eanche istanza di E
–– ogni istanza dell’entità geometrica E è ogni istanza dell’entità geometrica E è necessariamente anche istanza di una e una necessariamente anche istanza di una e una sola delle entità geometriche Ei (la sola delle entità geometriche Ei (la gerarchia è sempre gerarchia è sempre totale/esclusivatotale/esclusiva))
62
GeneralizzazioneGeneralizzazione didientitàentità geometrichegeometriche -- 22
63
VincoloVincolo didi intersezioneintersezionenon non nullanulla -- 1 1
•• Lega tra loro due tipi di entità Lega tra loro due tipi di entità geometriche, imponendo che:geometriche, imponendo che:–– tutte le istanze del primo tipo di entità tutte le istanze del primo tipo di entità
geometrica abbiano intersezione non nulla geometrica abbiano intersezione non nulla con almeno un'istanza del secondo tipo di con almeno un'istanza del secondo tipo di entità (entità (unidirezionaleunidirezionale), oppure), oppure
–– tutte le istanze del secondo tipo di entità tutte le istanze del secondo tipo di entità geometrica abbiano intersezione non nulla geometrica abbiano intersezione non nulla con almeno un'istanza del primo tipo di con almeno un'istanza del primo tipo di entità (entità (unidirezionaleunidirezionale), oppure), oppure
–– entrambe (entrambe (bidirezionalebidirezionale)) 64
VincoloVincolo didi intersezioneintersezionenon non nullanulla -- 22
65
RelazioneRelazione didi composizionecomposizione -- 11•• Una Una relazione di composizionerelazione di composizione consiste consiste
di un tipo di entità geometrica genitore E di un tipo di entità geometrica genitore E ee di un insieme di tipi di entità geometrica di un insieme di tipi di entità geometrica figlio Efiglio E11,...,E,...,Enn
•• Le istanze di E sono costituite dall'unione Le istanze di E sono costituite dall'unione di istanze di Edi istanze di E11,...,E,...,Enn
•• I tipi geometrici delle entità geometriche I tipi geometrici delle entità geometriche che partecipano alla relazione sono ugualiche partecipano alla relazione sono uguali
66
RelazioneRelazione didi composizionecomposizione -- 22
09/11/2009
12
67
RelazioneRelazione didi contenimentocontenimento -- 11
•• Una Una relazione di contenimentorelazione di contenimentoconsiste di un tipo di entità geometrica consiste di un tipo di entità geometrica genitore E genitore E ee di un insieme di tipi di di un insieme di tipi di entità geometrica figlio Eentità geometrica figlio E11,...,E,...,Enn
•• Ogni istanza di EOgni istanza di E11,...,E,...,Enn è interamente è interamente contenuta in una e una sola istanza di Econtenuta in una e una sola istanza di E
68
RelazioneRelazione didi contenimentocontenimento -- 22
69
FormeForme sintetichesintetiche -- 11
•• Attributo Attributo a trattia tratti: : –– funzione che associa un valore di un funzione che associa un valore di un attributo a porzioni delle istanze di attributo a porzioni delle istanze di un'entità geometrica lineareun'entità geometrica lineare
–– le porzioni alle quali la funzione associa le porzioni alle quali la funzione associa uno stesso valore per l'attributo a tratti A uno stesso valore per l'attributo a tratti A sono dette sono dette tratti omogenei rispetto ad Arispetto ad A
70
FormeForme sintetichesintetiche -- 22
71
FormeForme sintetichesintetiche -- 33
•• Attributo Attributo a sottoareea sottoaree::–– funzione che associa un valore di un funzione che associa un valore di un attributo a porzioni delle istanze di attributo a porzioni delle istanze di un'entità geometrica poligonaleun'entità geometrica poligonale
–– le porzioni alle quali la funzione associa lo le porzioni alle quali la funzione associa lo stesso valore dell'attributo a sottoaree A stesso valore dell'attributo a sottoaree A sono dette sono dette aree omogeneearee omogenee rispetto ad Arispetto ad A
72
Progettazione logicaProgettazione logica
•• Trasformazione dello schema Trasformazione dello schema concettuale ottenuto dalla progettazione concettuale ottenuto dalla progettazione concettuale in uno schema logico che concettuale in uno schema logico che rappresenti i dati in maniera corretta ed rappresenti i dati in maniera corretta ed efficienteefficiente
•• Non si tratta di una pura e semplice Non si tratta di una pura e semplice traduzionetraduzione–– analisi delle prestazionianalisi delle prestazioni–– semplificazione della traduzione (alcune componenti semplificazione della traduzione (alcune componenti
non sono direttamente/facilmente traducibili)non sono direttamente/facilmente traducibili)
09/11/2009
13
73
Traduzione nelmodello logico
Ristrutturazione dello schema E-R
Schema ERCarico
applicativo
Schema ER
ristrutturatoModello
logico
Schema
logico74
RistrutturazioneRistrutturazione
•• È possibile ottimizzare lo schema di una È possibile ottimizzare lo schema di una base di dati attraverso un’analisi delle base di dati attraverso un’analisi delle prestazioni svolte a livello concettualeprestazioni svolte a livello concettuale
•• Le prestazioni possono essere Le prestazioni possono essere analizzate sulla base di alcuni indicatorianalizzate sulla base di alcuni indicatori–– spazio:spazio: numero di occorrenze previstenumero di occorrenze previste–– tempo:tempo: numero di occorrenze (di entità e numero di occorrenze (di entità e
relazioni) visitate durante un’operazionerelazioni) visitate durante un’operazione
75
Attività di ristrutturazioneAttività di ristrutturazione
•• Analisi delle ridondanzeAnalisi delle ridondanze•• Eliminazione delle generalizzazioniEliminazione delle generalizzazioni•• Partizionamento/accorpamento di Partizionamento/accorpamento di entità e relazionientità e relazioni
•• Scelta degli identificatori primariScelta degli identificatori primari
76
TraduzioneTraduzione
•• A partire dal modello ristrutturato si può A partire dal modello ristrutturato si può effettuare una vera e propria traduzioneeffettuare una vera e propria traduzione
•• Idea di base:Idea di base:–– le entità diventano relazioni sugli le entità diventano relazioni sugli stessi attributistessi attributi
–– le relazioni diventano relazioni sugli le relazioni diventano relazioni sugli identificatori delle entità coinvolte identificatori delle entità coinvolte (più eventuali attributi propri) o (più eventuali attributi propri) o chiavi esterne delle entità coinvoltechiavi esterne delle entità coinvolte
77
Per tradurre i dati Per tradurre i dati spaziali…spaziali…
•• Il sistema Il sistema ChronoGeoGraphChronoGeoGraph integra un integra un insieme di moduli che consentono di insieme di moduli che consentono di tradurre lo schema concettuale tradurre lo schema concettuale ottenuto in un corrispondente schema ottenuto in un corrispondente schema logicologico
-- modello relazionale di Oracle modello relazionale di Oracle SpatialSpatial-- XML XML schemaschema
•• La traduzione è effettuata utilizzando La traduzione è effettuata utilizzando un opportuno insieme di regoleun opportuno insieme di regole
78
Regole di traduzione dello Regole di traduzione dello schema concettualeschema concettuale
•• Le regole proposte garantiscono Le regole proposte garantiscono che lo schema logico ottenuto:che lo schema logico ottenuto:––sia in terza forma normalesia in terza forma normale––esprima le geometrie associate agli esprima le geometrie associate agli elementi del modello concettualeelementi del modello concettuale
––esprima i vincoli topologici esistenti esprima i vincoli topologici esistenti tra tali tra tali geometriegeometrie
09/11/2009
14
79
CreazioneCreazione delledelle tabelletabelle//temitemi•• Per gli elementi non spaziali si segue il Per gli elementi non spaziali si segue il
processo di traduzione classico dal processo di traduzione classico dal modello (E)ER al modello relazionalemodello (E)ER al modello relazionale
•• Costrutti spaziali:Costrutti spaziali:–– le entità le entità georeferenziategeoreferenziate vengono modellate vengono modellate
introducendo un attributo (colonna) di tipo introducendo un attributo (colonna) di tipo SDO_GEOMETRYSDO_GEOMETRY nelle relazioni nelle relazioni corrispondenticorrispondenti
–– le relazioni topologiche e le aggregazioni le relazioni topologiche e le aggregazioni spaziali sono assimilate alle relazioni non spaziali sono assimilate alle relazioni non spaziali spaziali
80
Specifiche dei Specifiche dei vincoli di integritàvincoli di integrità
•• Indici spaziali:Indici spaziali:–– associano alle istanze della relazione corrispondente associano alle istanze della relazione corrispondente
ad una data entità ad una data entità georeferenziatageoreferenziata il tipo di il tipo di geometria specificato a livello concettualegeometria specificato a livello concettuale
•• TriggerTrigger–– di vincolo spaziale (di vincolo spaziale (inserimento e modifica): inserimento e modifica):
garantiscono i vincoli topologici imposti dalle relazioni garantiscono i vincoli topologici imposti dalle relazioni spazialispaziali
–– di aggregazione spaziale (inserimento, di aggregazione spaziale (inserimento, modifica e cancellazione): modifica e cancellazione): garantiscono i garantiscono i vincoli di aggregazione spaziale “interovincoli di aggregazione spaziale “intero--parte” parte” introducendo una geometria fittizia “introducendo una geometria fittizia “GhostGhost””
81
EsempioEsempio
Regione (nome, geometria) Città (nome, sindaco, geometria, regione)
con
- un vincolo not null sull’attributo regione in Città- un vincolo di chiave esterna da regione in Città a nome in Regione- due indici spaziali, associati uno all’attributo geometria di Regione
e uno all’attributo geometria di Città- un trigger di topologia associato alla tabella Città
Regione CittàContiene
nome nome sindaco
(0,N) (1,1)