David Mugnai
27 Gennaio 2019Guernica di Picasso
27 Gennaio 2019Informatica
Un sistema informativo organizza e gestisce le informazioni necessarie per eseguire gli scopi di un organizzazione. Sistema informativo: insieme di regole che permettono gli scambi informativi nell’ambito delle strutture aziendali.
Un sistema informativo automatizzato diventa un sistema informatico, cioè un sistema in cui l’informazione fluisce in maniera automatica. Questo sistema ha in se due nozioni fondamentali:
DATO Ciò che è immediatamente presente alla conoscenza, prima di ogni elaborazione. |
INFORMAZIONE Notizia o elemento che consente di avere una maggiore conoscenza, più o meno esatta, dei fatti. |
I dati costituiscono una risorsa per l’organizzazione che li gestisce, un patrimonio da sfruttare e proteggere.
Archivi e data base
A causa della rapida crescita della complessità dei dati da gestire, il settore della conservazione e della elaborazione dei dati è stato il primo in cui linformatica si è affermata, proprio per le possibilità offerte dai nuovi sistemi. Infatti per questo scopo sono nati prima gli archivi che sono insiemi organizzati di informazioni, conservati su appositi supporti e disponibili per l’uso.
Un archivio deve avere una struttura ed una forma ben definiti, divenendo quindi un sistema organizzato per la conservazione ed il trattamento dei dati. Tale struttura è quindi caratterizzata da una organizzazione che si distingue in:
organizzazione fisica (supporto), ad es. nastri e dischi;
Successivamente nel 1968 si forma il Data Base Task Group (DBTS) per stabilire le norme generali per la gestione e supervisione dei dati. Nel 1971 il DBTS propone la definizione standard di Data Base e Data Base Management Sistem.
Un Data base può essere definito come un insieme di dati strettamente correlati, memorizzati su un supporto di memoria di massa, costituenti un tutt’uno, che possono essere manipolati da più programmi applicativi.
I programmi di gestione di Data Base realizzano una serie di operazioni che consentono l’accesso a dati immagazzinati in un PC e che ne permettono altresì una certa manipolazione.
Lantenato dei Data Base relazionali odierni può essere identificato con lagenda telefonica: se guardiamo com’è fatta la nostra agenda scopriremo una notevole affinità con i suoi parenti più tecnologici attuali.
Infatti è organizzata tramite un indice (la serie di linguette sul fianco che ci permette di accedere più rapidamente a tutti i nominativi che iniziano con una certa lettera) che gestisce una tabella composta da colonne che identificano il tipo di dato sotto riportato (nome, numero di telefono, a volte indirizzo) all’interno delle registrazioni (le quali possiamo chiamare record”) che, pur differendo l’una dall’altra per i dati riportati al loro interno hanno tutti la stessa struttura”, cioè riportano le stesse informazioni nella medesima maniera.
L’approccio convenzionale alla gestione dei dati sfrutta la presenza di files da memorizzare sulle memorie di massa. Dati di interesse per più applicazioni devono allora essere replicati, con problemi di ridondanza e di incoerenza (di cui si parlerà più avanti).
Le tecniche di gestione delle basi di dati nascono, infatti, per superare i problemi e i limiti degli archivi classici.
I problemi principali di un archivio sono:
Le caratteristiche fondamentali di una Base di Dati sono:
Indipendenza dalla struttura fisica dei dati: non esiste un legame tra un file ed un altro se non c’è una chiave che li lega.
Indipendenza dalla struttura logica dei dati: se si modifica uninformazione non c’è bisogno di modificare il programma che utilizza il data base perché viene modificato solo lo schema.
Gestione di una base dati
Un Data Base Management System (DBMS) è un sistema software per la gestione di basi dati; esso si occupa dellaggiornamento, della manutenzione e della consultazione di un insieme di registrazioni contenute in un supporto di memoria di massa.
Il DBMS, pertanto, è uninsieme di programmi che sono rivolti alla gestione di dati che siano grandi (di dimensioni molto maggiori della memoria centrale dei sistemi di calcolo utilizzati), persistenti (con un periodo di vita indipendente dalle singole esecuzioni dei programmi che attingono ai dati,nel senso che non vengono modificati se cambiano i programmi che svolgono operazioni su di essi), condivisi (utilizzati da applicazioni diverse).
Ovviamente tra Data Base e DBMS esiste un forte legame, per cui spesso si tende a considerarli due parti distinte di un unico oggetto: il DBMS rappresenta la parte attiva, il Data Base quella passiva, su cui il DBMS opera.
Dal punto di vista della gestione e distribuzione dei dati, i DBMS possono essere classificati in due categorie: sistemi centralizzati, sistemi distribuiti. Nel caso di sistemi centralizzati, i dati sono mantenuti in un unico sito(o memoria di massa). In un sistema distribuito, i dati sono fisicamente suddivisi su più siti; anche se fisicamente distribuiti, i dati sono comunque accessibili come se fossero logicamente centralizzati in un unico sito. Il database viene quindi visto come se fosse un unico grande insieme.
Architettura di sistemi centralizzati
In queste architetture, il compito di mantenere i dati è demandato al server.
Architettura di sistemi distribuiti
Un sistema distribuito è composto da più DBMS locali, cooperanti e residenti su siti diversi.Ciascun DBMS locale gestisce una parte dei dati.Il sistema rende invisibile la distribuzione fisica dei dati.
L’attività del DBMS consiste nel ricevere comandi, metterli in relazione con il modello dei dati, verificarne leseguibilità e tradurli in operazioni sugli archivi. La caratteristica principale del DBMS consiste nel mantenimento di un modello dei dati, ovvero di un’astrazione che permette all’utente di vedere i dati non in termini di record, files o campi ma in termini di informazioni riferibili agli oggetti della realtà descritti dall’informazione stessa. La forma con cui sono organizzati i dati viene solitamente detta: modello dei dati.
Questastrazione è organizzata su più livelli:
-
Livello fisico, formato dalle strutture di memoria di massa e dei dati che esse contengono, inclusi quegli elementi che consentono l’accesso ai dati stessi come indici, puntatori ecc. E questo il livello più basso che si occupa della memorizzazione dei dati su supporti di memoria di massa; la sua gestione è tutta ad opera del DBMS e pertanto risulta trasparente all’utente.
-
Livello logico, corrisponde alla definizione della struttura logica dell’archivio mediante un modello astratto.E il livello mediante il quale il DBMS sinterfaccia all’utente e ci fa capire come sono organizzati i dati. Il modello è formato da entità che rappresentano i soggetti descritti nell’archivio ed ogni entità possiede degli attributi che contengono le informazioni relative a quel particolare soggetto.
Il livello logico viene definito attraverso lo schema dei dati, cioè una rappresentazione sintetica (di solito presentata in forma grafica) degli elementi fondamentali che caratterizzano la realtà osservata.
-
Livello concettuale o esterno, è il livello a cui l’utente vede il database. Il sistema di sicurezza del DBMS permette di attribuire ad ogni utente l’autorizzazione di accedere all’intera mole di dati oppure solamente ad una parte di essa;
questo consente di creare degli accessi e della navigazioni personalizzate, che prendono il nome di viste logiche. Una vista è lastrazione di una parte del Data Base concettuale, essa coinvolge i dati dell’archivio fisico limitatamente alla porzione limitata o consentita.
Il DBMS costituisce quindi uninterfaccia tra gli utenti di un data base con le loro applicazioni e le risorse costituite dall hardware e dagli archivi di dati presenti in un sistema di elaborazione.
Interfaccia: aspetto con il quale un programma si presenta sullo schermo al suo utilizzatore.
Le funzioni che il DBMS è in grado di offrire agli utenti del Data Base sono raggruppate nei seguenti aspetti principali:
-
Implementazione del modello logico sul sistema di elaborazioneImplementare: caricare, rendere disponibile sul sistema di elaborazione.
Per far ciò, il DBMS si appoggia al Sistema Operativo della macchina ed attraverso questo accede ai file su disco tramite il File System. E bene dunque non confondere i due strumenti”: il File System è un insieme di programmi che gestiscono tutti i file sui dischi, e sono parte integrante del Sistema Operativo; al contrario, il DBMS si occupa solamente dei Data Base e sfrutta il File System per gestire le informazioni in modo da rendere questa fase del tutto trasparente all’utente.
-
Manipol’azione ed interrogazione sulla base di dati
-
Controllo dell’integrità dei dati
-
Sicurezza e protezione
Procedure di recovery: insieme delle procedure per la ripresa del corretto funzionamento di un sistema dopo il verificarsi di una condizione di errore.
Le prestazioni del DBMS vengono attivate dall’utente usando appositi comandi, che costituiscono un linguaggio, attraverso il quale l’utente può comunicare con il sistema di elaborazione che gestisce il database. I comandi che il DBMS mette a disposizione possono essere classificati nelle seguenti categorie di linguaggi detti linguaggi per basi di dati:
Il DDL possiede inoltre specifici comandi per definire i sottoschemi relativi alle applicazioni contenute nei programmi dei singoli utenti, oltre che per eliminare tabelle e viste già esistenti; il linguaggio comprende anche la possibilità di generare in modo automatico, a partire dalle tabelle e dai loro attributi, le maschere video (screen form), che servono a facilitare all’utente nell’inserimento, nella modifica e nella consultazione dei dati, e i prospetti di output (report) per la rappresentazione ordinata e facilmente leggibile dei dati estratti dalla base di dati;
Nei sistemi a linguaggio ospite il DML è in realtà un’estensione di un linguaggio di programmazione ad alto livello con comandi che permettono la gestione dei dati in forma integrata. Nei sistemi a sé stanti, invece, è un linguaggio indipendente, di tipo non procedurale, spesso radicalmente diverso dai consueti linguaggi di programmazione;
Un Data Base viene utilizzato da persone diverse per funzione e per applicazioni diverse:
-
la responsabilità della gestione del database è affidata all Amministratore della Base di Dati (DBA, Data Base Administrator), che avvalendosi del DBMS, ha i seguenti compiti: