• Non ci sono risultati.

PARTE 2: SISTEMI INFORMATIVI PER L’ANALISI DEI SISTEMI DI

2 I SISTEMI INFORMATIVI GEOGRAFICI NELL’ANALISI SPAZIALE E DI

2.1 DBMS: Caratteristiche e funzionalità

2.1.1 Definizione e vantaggi di un DBMS

2.1 DBMS: Caratteristiche e funzionalità

2.1.1 Definizione e vantaggi di un DBMS

Un sistema informativo è costituito da un insieme di risorse umane, strumenti e procedure (manuali o automatizzate) finalizzati all’acquisizione, memorizzazione, elaborazione e scambio di informazioni.

I sistemi informativi, svolgendo un ruolo fondamentale nella organizzazione delle attività complesse, esistono da ben prima dell’avvento dell’informatica e quindi in linea teorica non richiedono necessariamente lo strumento costituito dal calcolatore elettronico. Tuttavia le potenzialità di tali strumenti, unite alla creazione di forme sempre più sistematizzate ed efficaci di codifica dell’informazione, hanno aumentato enormemente le possibilità dei sistemi informativi.

Nei sistemi informatici le informazioni sono presenti come dati, codificati secondo modalità ben definite, che una volta interpretati e correlati possono fornire informazioni, ossia vera e propria conoscenza1.

Un approccio nell’archiviazione dell’informazione è fornito dall’utilizzo di file di tipo standard, che memorizzano i dati nella memoria di massa dell’elaboratore. Tuttavia questa opzione fornisce meccanismi non efficienti per quanto concerne le modalità di accesso e condivisione dell’informazione, con la necessità di replicare le informazioni nelle tipologie di file di tutti i programmi che le utilizzano.

Pertanto, al fine di limitare ridondanze e conseguenti possibili incoerenze sono state sviluppate le basi di dati, che gestiscono in modo integrato e flessibile i dati.

Un sistema di gestione di basi di dati (Data Base Management System: DBMS) è infatti un sistema software in grado di gestire collezioni di dati che siano grandi, condivise e persistenti, assicurando loro affidabilità e privatezza. Si dice quindi base di dati una collezione di dati gestita da un DBMS.

La condivisione della base dati implica la possibilità, garantita da un meccanismo detto controllo di coerenza, di accesso da parte di diversi utenti ed applicazioni a dati comuni, riducendo la possibilità di ridondanze ed inconsistenze in tali dati.

La persistenza delle basi di dati è basata sul fatto che il loro tempo di vita non è limitato a quello delle singole esecuzioni, a differenza delle comuni applicazioni (create coi linguaggi di programmazione), in cui i dati vengono gestiti nella memoria centrale e cancellati al termine dell’applicazione. Su tale continuità nel tempo si basa il requisito dell’affidabilità, ossia la conservazione del contenuto della base dati perfino in caso di inconvenienti di tipo hardware e software, grazie anche a specifiche funzionalità di salvataggio e ripristino.

Un’ulteriore condizione di sicurezza consiste nella garanzia della privatezza dei dati. Infatti l’accesso degli utenti è regolato da meccanismi di autorizzazione, che prevedono l’identificazione di ogni utente e l’attribuzione di specifiche abilitazioni a svolgere operazioni sui dati.

Per organizzare i dati e permetterne l’elaborazione da parte di un calcolatore elettronico si utilizza un insieme di concetti detto modello dei dati.

1

Il modello dei dati fornisce meccanismi di organizzazione dei dati che sono analoghi ai costruttori di tipo1 dei linguaggi di programmazione, i quali permettono di definire nuovi tipi sulla base di tipi predefiniti (detti elementari) mediante meccanismi detti, appunto, costruttori di tipo.

Attualmente il modello dei dati più diffuso è il modello relazionale, basato sui concetti di tabella e relazione, che verrà presentato nel successivo paragrafo. Tale modello ha soppiantato quelli di tipo gerarchico e reticolare, appartenenti alla prima fase di sviluppo dei DBMS (compresa fra gli anni sessanta e i primi anni settanta del secolo scorso). Il modello ad oggetti, invece, costituisce un’estensione alle basi di dati del paradigma della programmazione ad oggetti e, come si vedrà nel seguito della trattazione, costituisce un’importante evoluzione per particolari tipologie di sistemi informativi.

I modelli dei dati presentati, appartengono alla categoria dei modelli logici, i quali, pur astraendo dalla modalità operativa con cui sono archiviati i dati nella memoria del calcolatore (descritta nei modelli di tipo fisico), descrivono l’organizzazione dei dati mediante particolari strutture logiche (ad alberi, a grafi, a tabelle o ad oggetti). Un livello ulteriore di astrazione è presente invece nei modelli di tipo concettuale, in cui vengono descritti i concetti del mondo reale rappresentati nella base dati, evidenziandone le proprietà e interazioni, a prescindere dalle modalità di archiviazione utilizzate nel calcolatore. Fra quest’ultimi il più diffuso è il modello E-R che prevede l’utilizzo di una serie di costrutti, di cui due sono da considerarsi fondamentali: l’entità e la relazione.

Le entità rappresentano classi di oggetti del mondo reale che presentano proprietà comuni ed un’esistenza “autonoma” nel contesto di interesse. Le relazioni, in tale ambito2 rappresentano legami logici tra due o più entità. Particolare attenzione viene posta nello specificare la cardinalità delle relazioni, ossia il numero minimo e massimo di occorrenze di relazione a cui una singola occorrenza di entità può partecipare. Le proprietà di interesse di entità e relazioni vengono dette attribuiti.

1

Con tipo di dato, o più semplicemente tipo, si intende un nome cui si associa l'insieme di valori che una variabile, o il risultato di un'espressione, possono assumere e le operazioni che su tali valori si possono effettuare.

2

A tali costrutti vengono associate rappresentazioni grafiche che complessivamente consentono di visualizzare i modelli concettuali attraverso i cosiddetti schemi entità-relazioni (schema E-R).

Una caratteristica fondamentale della strutturazione delle basi di dati è costituita pertanto dalla indipendenza dei dati, ossia dalla possibilità di interagire con la base di dati prescindendo dai dettagli e modalità di implementazione. Ciò è reso possibile attraverso una strutturazione su diversi livelli interagenti, ma distinti (schema logico, schema interno, schema esterno), che possono essere modificati separatamente. In tal modo è possibile ad esempio cambiare le strutture fisiche di memorizzazione, senza modificare la presentazione dei dati all’esterno della base di dati e quindi influire sui programmi che vi interagiscono.

La strutturazione della base dati assume inoltre particolare rilievo in quanto componente invariante nel tempo e viene denominata schema della base dati. In tal modo viene distinta dalla componente variabile nel tempo, costituita dai valori effettivi presenti, ossia l’istanza o stato della base dati.