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