1.2 Basi di dati e DBMS
I processi informativi ai diversi livelli della piramide usano dati con la finalità di produrre informazioni utili per gestione e decisioni.
Per esempio, “Mario 06-123456” non significano molto su un pezzo di carta. Ma se questo viene fornito in risposta alla domanda “A chi devo rivolgermi per il tal problema e qual è il suo numero di telefono”, allora i dati possono essere interpretati per fornire informazione e arricchire la conoscenza.
I primi sistemi EDP1 erano general purpose e non scindevano in maniera indipendente i dati dai programmi, con conseguente spesa in termini di tempo e risorse e in portabilità ridotta.
1.2.1 La rivoluzione copernicana dei dati
Nel 1968 si forma il Data Base Task Group (DBTG) per stabilire le norme generali per la gestione e supervisione dei dati. Vengono stabiliti come obiettivi fondamentali:
- Indipendenza fisica dei programmi dai dati;
- Aggregazione di dati omogenei;
- Dichiarazione dei soli dati utili nel programma applicativo.
Da un modello centrato sul processo, cioè, si vuole passare a un modello centrato sui dati:
Electronic Data Processing
1.2 Basi di dati e DBMS
I processi informativi ai diversi livelli della piramide usano dati con la finalità di produrre informazioni utili per gestione e decisioni.
Per esempio, “Mario 06-123456” non significano molto su un pezzo di carta. Ma se questo viene fornito in risposta alla domanda “A chi devo rivolgermi per il tal problema e qual è il suo numero di telefono”, allora i dati possono essere interpretati per fornire informazione e arricchire la conoscenza.
I primi sistemi EDP1 erano general purpose e non scindevano in maniera indipendente i dati dai programmi, con conseguente spesa in termini di tempo e risorse e in portabilità ridotta.
1.2.1 La rivoluzione copernicana dei dati
Nel 1968 si forma il Data Base Task Group (DBTG) per stabilire le norme generali per la gestione e supervisione dei dati. Vengono stabiliti come obiettivi fondamentali:
- Indipendenza fisica dei programmi dai dati;
- Aggregazione di dati omogenei;
- Dichiarazione dei soli dati utili nel programma applicativo.
Da un modello centrato sul processo, cioè, si vuole passare a un modello centrato sui dati:
1 Electronic Data Processing
1.2 Basi di dati e DBMS
Nel 1971 il DBTG propone la definizione standard di base di dati e di sistema di gestione di basi di dati.
Definizione. Una base di dati è una collezione di dati che supportano le operazioni dell’organizzazione.
Definizione. Un sistema di gestione di basi di dati (DBMS) è un sistema software per la gestione di collezioni di dati, cioè di basi di dati:
- Grandi: le dimensioni sono molto maggiori della memoria centrale dei sistemi di calcolo usati.
- Persistenti: hanno un tempo di vita indipendente dalle singole esecuzioni dei programmi che le usano.
- Condivise: ogni organizzazione (specie se grande) è divisa in settori o comunque svolge diverse attività; ciascun settore/attività ha un (sotto)sistema informativo (non necessariamente disgiunto).
In grado di garantire:
- Privatezza;
- Affidabilità;
- Efficienza;
- Efficacia.
Esempi di DBMS:
- Access;
- DB2;
- 10Oracle;
- SQLServer.
L'architettura di un DBMS è la seguente:
Per mostrare la differenza tra una soluzione “artigianale” e una sotto l'impiego di DBMS, si osservino le seguenti due figure:
Situazione con archivi tradizionali:
1.2 Basi di dati e DBMS
- Situazione con DBMS:
Le basi di dati sono condivise:
- Nei programmi tradizionali che accedono a file, ogni programma contiene una descrizione della struttura del file stesso, coi conseguenti rischi di incoerenza fra le descrizioni (ripetute in ciascun programma) e i file stessi;
- Nel DBMS, esiste una porzione della base di dati (il catalogo o dizionario) che consente una descrizione centralizzata dei dati, che può essere usata dai vari programmi.
1.2.2 Schema e istanza
In ogni base di dati esistono:
- Lo schema:
- Invariante nel tempo sostanzialmente;
- Descrive la struttura (aspetto intensionale) della base di dati;
- Per esempio, le intestazioni delle tabelle.
- L'istanza: