2. ARCHIVI
ARCHIVIO: insieme organizzato di dati, relativi ad
un certo oggetto, con le seguenti caratteristiche:
• i dati sono inerenti uno stesso argomento
• sono organizzati in modo da permettere una facile
consultazione
• sono registrati su un supporto su cui è possibile
scrivere e rileggere anche a distanza di tempo
Esempio: la rubrica telefonica è un archivio
3. ARCHIVI
La gestione di un archivio, qualunque esso sia, viene
realizzata attraverso alcune operazioni principali
• Creazione
• Inserimento
• Modifica o aggiornamento
• Cancellazione
• Ricerca o consultazione
4. ARCHIVI
ARCHIVIO INFORMATICO: file memorizzato in
modo permanente su memoria di massa, costituito
da una sequenza di elementi dello stesso tipo e
dimensione (record), ognuno dei quali può essere
composto da più campi, di tipo e dimensione diversi
tra loro.
Matricola Cognome Nome Indirizzo Città Corso
010 Bianchi Lucia Via roma Bari Medicina
011 Giglio Maria Via verdi Foggia Fisica
012 Marini Claudia Via cavour Napoli Informatica
CAMPO RECORD
5. codcliente cognome nome indirizzo città
010 Bianchi Lucia Via roma Sapri
011 Giglio Maria Via neri Napoli
codcliente Città descrizione quantità
010 Sapri Calze 3
010 Sapri Top 1
011 Napoli Pantaloni 2
011 Napoli Top 2
CLIENTI
VENDITE
LIMITI DEGLI ARCHIVI TRADIZIONALI
RIDONDANZA: si verifica quando in diversi archivi si trovano
memorizzati gli stessi tipi di dati (il problema è quello di dover
fare gli aggiornamenti in tutti gli archivi interessati)
6. codcliente cognome nome indirizzo città
010 Bianchi Lucia Via verdi Roma
011 Giglio Maria Via neri Napoli
codcliente Città descrizione quantità
010 Sapri Calze 3
010 Sapri Top 1
011 Napoli Pantaloni 2
011 Napoli Top 2
CLIENTI
VENDITE
LIMITI DEGLI ARCHIVI TRADIZIONALI
INCONSISTENZA: è una conseguenza della ridondanza, si
verifica quando gli aggiornamenti non vengono fatti in tutti gli
archivi in cui si dovrebbe e nascono incongruenze tra dati nuovi e
dati vecchi.
7. DEFINIZIONE DATABASE
Un Database o Base di Dati è un insieme di dati tra loro
correlati, memorizzati su un supporto di memoria di massa,
che permettono di rappresentare le informazioni relative ad una
certa realtà, senza problemi di ridondanza e inconsistenza e che
possono essere usati da differenti applicazioni e utenti diversi
Le operazioni principali operazioni su un database sono:
immissione e cancellazione di dati
modifica di dati già introdotti
ricerca di dati attraverso criteri definiti dall'utente
ordinamento e classificazione dei dati
stampa di rapporti o relazioni.
8. DEFINIZIONE DBMS
Un Data Base Management System (DBMS) è un
software che permette di creare e di interagire con una
base di dati, consentendo opportune operazioni agli
utenti autorizzati, nel rispetto delle regole prestabilite.
Le funzioni di un DBMS sono:
Permettere la creazione di una nuova base di dati
Facilitare gli utenti nell’inserimento, cancellazione,
modifica
Rendere possibile l’estrazione di informazioni
interrogando la base di dati
Superare i limiti che si presentano con gli archivi
tradizionali (eliminazione di ridondanza e di
inconsistenza)
9. DATABASE RELAZIONALE
Ci sono diversi modelli di database, il più semplice e
diffuso è il modello relazionale, progettato nel 1970
da Edgar Codd (IBM)
I database relazionali rappresentano i dati con delle
tabelle messe in relazione tra loro tramite i campi
(le colonne delle tabelle).
Campi comuni tra tabelle stabiliscono le relazioni
del database
10. Esempio
studente esame corso
Cognome Nome MATRICOLA D_Nascita Città
Rossi Mario 01034 … …
Neri Anna 02010
TABELLA STUDENTI
TABELLA CORSI
TABELLA ESAMI
studente esame corso
CODICE Nome Durata
12345 Informatica semestrale
56789 Matematica semestrale
CODICE MATRICOLA Data Voto
12345 01034 20/02/2013 27/30
56789 01034 06/05/2012 30/30
12345 02010 21/02/2013 28/30
11. FASI DI PROGETTAZIONE DEL DATABASE
LIVELLO CONCETTUALE
Modello Entità /Relazioni
LIVELLO LOGICO
Modello relazionale
LIVELLO FISICO
Il livello concettuale consiste in
un’analisi della realtà per raccogliere le
informazioni che si devono utilizzare nel
database. In questa fase si costruisce il
modello E/R per rappresentare i
concetti (entità) e le relazioni tra essi
Il livello logico permette di rappresentare i dati
e i legami tra essi in formato adatto al
computer. Il modello logico più usato è il
modello relazionale, che converte il modello
E/R in tabelle collegate tra loro da campi
Il livello fisico permette di creare e memorizzare
su memoria di massa le tabelle create al livello
logico, per consentire l’accesso ai dati, la ricerca
e l’aggiornamento delle informazioni
12. DBMS (Database Management System)
Un DBMS (Database Management System) è un
software che permette di generare il modello logico e
fisico di un database, partendo dallo schema concettuale
ideato e di effettuare operazioni di ricerca, modifica,
inserimento e cancellazione dei dati
DBMS:
ACCESS
IBM DB2
Oracle
Informix
MySQL (open source)
13. Sistema software che gestisce basi di
dati:
grandi
persistenti
condivise
garantendo:
privatezza
affidabilità
efficienza
Caratteristiche DBMS
14. 14
Le basi di dati sono ... grandi
• Hanno dimensioni (molto) maggiori della
memoria centrale dei sistemi di calcolo
utilizzati e sono memorizzate su memoria di
massa
Hanno un tempo di vita indipendente dalle
singole esecuzioni dei programmi che le
utilizzano
Le basi di dati sono ... persistenti
15. Le basi di dati sono
condivise
• Una base di dati è una risorsa integrata,
condivisa fra applicazioni e utenti diversi.
• Di conseguenza considerano e gestiscono:
– Attivita' diverse su dati condivisi
•
(meccanismi di autorizzazione)
– Accessi di più utenti ai dati condivisi:
•
(controllo della concorrenza)
15
16. I DBMS garantiscono ...
privatezza
La presenza di più utenti comporta infatti anche più
possibilità che male intenzionati o incauti accedano a
dati su cui non hanno privilegi di accesso. Il DBMS
deve allora anche gestire il controllo degli accessi per
assicurare che i dati siano visibili solo da particolari
utenti o gruppi di utenti.
• Si possono definire meccanismi di autorizzazione
– l'utente A è autorizzato a leggere tutti i dati e a
modificarne solo alcuni
– l'utente B è autorizzato a leggere solo X (una parte
die dati) e a modificare Y
16
17. I DBMS garantiscono...
affidabilità
Una base di dati è una risorsa pregiata e
quindi deve essere conservata a lungo
termine
Affidabilità per le basi di dati:
resistenza a malfunzionamenti hardware e
software
gestione delle transazioni
17
18. Le transazioni sono …
atomiche
Transazione = unità di lavoro atomico (insieme di
operazioni indivisibile), che deve essere
completata nella sua interezza per essere
considerata valida
• La sequenza di operazioni sulla base di dati viene
eseguita per intero o per niente:
– trasferimento di fondi da un conto A ad un
conto B: o si fanno il prelevamento da A e il
versamento su B o nessuno dei due
18
19. Le transazioni sono … concorrenti
• L'effetto di transazioni concorrenti deve essere coerente
(equivalente all'esecuzione separata)
• Esempio: se due assegni emessi sullo stesso conto corrente
vengono incassati contemporaneamente devono essere
considerati entrambi
19
Se la transazione va a buon fine le modifiche vengono
trasmesse al database e qualsiasi malfunzionamento di
sistema (hardware o software) non deve comportare la perdita
di tali modifiche.
I risultati delle transazioni sono permanenti
20. I DBMS debbono essere...efficienti
Devono utilizzare al meglio le risorse di spazio di
memoria (principale e secondaria) e tempo di
esecuzione e di risposta.
• I ritmi lavorativi odierni ci impongono di
sviluppare applicazioni che abbiano bisogno solo
di pochi secondi per fornire una soluzione o
un’elaborazione. Il DBMS, pertanto, non deve
assolutamente rappresentare un collo di bottiglia
nei tempi di elaborazione.
20