BASI di Dati: Fondamenti e
modelli
Maurizio Fermeglia
[email protected]
www.caslab.units.it
Base di dati
(accezione generica)
collezione di dati, utilizzati per rappresentare le
informazioni di interesse per una o più applicazioni
di una organizzazione.
(accezione specifica)
collezione di dati gestita da un DBMS
Nome dell’evento
21 December, 2015 - slide
Sistema di gestione di basi di dati
DataBase Management System — DBMS
Sistema (prodotto software) in grado di gestire
collezioni di dati che siano (anche):



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 le utilizzano)
condivise (utilizzate da applicazioni diverse)
garantendo affidabilità (resistenza a malfunzionamenti
hardware e software) e privatezza (con una disciplina e
un controllo degli accessi). Come ogni prodotto
informatico, un DBMS deve essere efficiente (utilizzando
al meglio le risorse di spazio e tempo del sistema) ed
efficace (rendendo produttive le attività dei suoi
utilizzatori).
Nome dell’evento
21 December, 2015 - slide
DBMS vs file system
La gestione di insiemi di dati grandi e persistenti è possibile
anche attraverso sistemi più semplici — gli ordinari file system
dei sistemi operativi, che permettono di realizzare anche
rudimentali forme di condivisione.
Non esiste una linea netta di separazione fra DBMS e nonDBMS.
I DBMS estendono le funzionalità dei file system, fornendo più
servizi ed in maniera integrata (cfr. efficacia).
I file system prevedono forme di condivisione, permettendo
accessi contemporanei in lettura ed esclusivi in scrittura: se è in
corso un’operazione di scrittura su un file, altri non possono
accedere affatto al file. Nei DBMS, c’è maggiore flessibilità: si
può accedere contemporaneamente a record diversi di uno
stesso file o addirittura allo stesso record (in lettura).
Nome dell’evento
21 December, 2015 - slide
DBMS vs file system (2)
Nei programmi tradizionali che accedono a file, ogni
programma contiene una descrizione della struttura del
file stesso, con i conseguenti rischi di incoerenza fra le
descrizioni (ripetute in ciascun programma) e i file stessi.
Nei DBMS, esiste una porzione della base di dati (il
catalogo o dizionario) che contiene una descrizione
centralizzata dei dati, che può essere utilizzata dai vari
programmi.
Nome dell’evento
21 December, 2015 - slide
GESTIONE DI FILES
Basati su File systems
Logica di accesso ai dati contenuta nel codice (COBOL)
Problemi di manutenzione
Programma
di Update
Programma
di Report
File Dati
Storico
Programma
di Controllo
Nome dell’evento
21 December, 2015 - slide
Un Data Base è formato da
DATI,DATI,DATI
DatiPersistenti



In contrapposizione ai dati transitori
dati di Input: contenuti in una maschera
dati di output: risposta del sistema
DEFINIZIONE:
Il Data Base è una collezione di dati persistenti
che è usata dal sistema di una certa azienda
(organizzazione tecnica, commerciale, scientifica)
Nome dell’evento
21 December, 2015 - slide
BENEFICI DELL’ USO DI DATA BASE
Riduzione delle informazioni ridondanti


Eliminando I files privati
Eliminando I doppiono (Forme normali)
Consistenza della informazioni


Conseguenza del punto precedente (ridondanza)
Se c’è ridondanza, allora il DB deve garantire consistenza
Dati condivisi
E’ possibile imporre standard aziendali (DBA e DA li
impongono
Sicurezza
Integrità


Nome dell’evento
Legata alla ridondanza e consistenza
Fondamentale in ambiente multiutente
21 December, 2015 - slide
Vantaggi e svantaggi di un DBMS
Vantaggi





I dati sono considerati come un risorsa comune
La base di dati fornisce un modello unificato del business
Permette un controllo centralizzato dei dati permettendo
standardizzazione ed economie di scala
Riduzione di ridondanze ed inconsistenze
Indipendenza dei dati
Svantaggi


Nome dell’evento
Costo e la complessità - investimenti
Potrebbero fornire servizi ridondanti e non richiesti effettivamente
21 December, 2015 - slide
MA IL BENEFICIO MAGGIORE E’
L’ INDIPENDENZA DEI DATI
Nei vecchi sistemi il modo in cui venivano
organizzati i dati e le tecniche per accedervi
facevano parte della logica e del codice del
programma.
Architettura standard (ANSI/SPARC) tre livelli
per DBMS
utente
utente
Schema
esterno
utente
Schema
esterno
utente
utente
Schema
esterno
Schema logico
Schema interno
BD
Nome dell’evento
21 December, 2015 - slide
Architettura ANSI/SPARC: schemi
schema logico: descrizione dell’intera base di dati nel
modello logico “principale” del DBMS
schema esterno: descrizione di parte della base di dati in
un modello logico (“viste” parziali, derivate, anche in
modelli diversi)
schema fisico: rappresentazione dello schema logico per
mezzo di strutture fisiche di memorizzazione.
Nome dell’evento
21 December, 2015 - slide
Indipendenza dei dati
conseguenza della articolazione in livelli:
l’accesso avviene solo tramite il livello esterno (che può
coincidere con il livello logico); due forme:
fisica: il livello logico e quello esterno sono indipendenti da quello
fisico; una relazione è utilizzata nello stesso modo qualunque sia la
sua realizzazione fisica (che può anche cambiare nel tempo senza
che debbano essere modificate le forme di utilizzo)
logica: il livello esterno è indipendente da quello logico
 aggiunte o modifiche alle viste non richiedono modifiche al livello
logico;
 modifiche allo schema logico che lascino inalterato lo schema
esterno sono trasparenti
Nome dell’evento
21 December, 2015 - slide
Una vista
Corsi
Corso
Basi di dati
Sistemi
Reti
Controlli
Docente
Rossi
Neri
Bruni
Bruni
Aula
DS3
N3
N3
G
Aule
Nome
DS1
N3
G
Edificio
Ex-OMI
Ex-OMI
Pincherle
Piano
Terra
Terra
Primo
CorsiSedi
Corso
Sistemi
Reti
Controlli
Nome dell’evento
Aula
N3
N3
G
Edificio
Ex-OMI
Ex-OMI
Pincherle
Piano
Terra
Terra
Primo
21 December, 2015 - slide
INDIPENDENZA DEI DATI
Esiste il concetto di VISTA del Data Base
L’amministratore del DB può modificare la struttura
interna dei dati senza toccare la visibilità esterna allo
stesso
IMMUNITA’ DELLE APPLICAZIONI A
MODIFICHE DI STRUTTURA
Nome dell’evento
21 December, 2015 - slide
TIPI DI SISTEMI DI BASI DI DATI
Sistemi basati sulla gestione di Files (FMS)
Modelli Gerarchici
Modelli Reticolari (Network)
Modelli Relazionali
Nome dell’evento
21 December, 2015 - slide
GESTIONE DI FILES
Basati su File systems
Logica di accesso ai dati contenuta nel codice (COBOL)
Problemi di manutenzione
Programma
di Update
Programma
di Report
File Dati
Storico
Programma
di Controllo
Nome dell’evento
21 December, 2015 - slide
DATA BASE GERARCHICI
Struttura gerarchica dei dati (tipico di un file system)
Utilizzato nell industrie di manufatti (Automobili)
Introduzione della relazione Padre-Figlio
Vantaggi



Struttura semplica
Eccellente per relazioni padre - figlio (A è parte di B oppure A contiene B)
Performance: movimenti rapidi in virtù della struttura gerarchica
Automobile
Motore
Porta sinistra
Finestrino
Nome dell’evento
Carrozzeria
Porta destra
Motore elettrico
Chassis
Tetto
Cofano
Maniglia
21 December, 2015 - slide
DATA BASE RETICOLARI
Modello gerarchico è poco flessibile (gestione ordini)
Un record partecipa a relazioni padre-figlio multiple
Il programmatore naviga nel data base dando anche le
direzioni di movimento
Vantaggi: Flessibilità e Performance
Svantaggi: certa rigidezza dovuta alle relazioni definite a
priori e necessità di aggiornamento del SW
Clienti
Prodotti
Ordini
Nome dell’evento
21 December, 2015 - slide
DATA BASE
RELAZIONALI
Scarica

02_DataBAse fondamenti e modelli_TD