Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
II anno I semestre
Loredana Vigliano
Stanza O103 TEL. 0672594645
Vigliano@mat.uniroma2.it
L. Vigliano
Obiettivi del corso
• Conoscere l' algebra su cui si basa la teoria
dei Database Relazionali
• Imparare a progettare e a costruire un
Database Relazionale
• Utilizzare al meglio l' SQL
L. Vigliano
Programma del corso di
Basi di dati
• Introduzione e Definizioni
• Algebra relazionale e cenni di Calcolo
relazionale
• Flusso di progetto e visione dei dati
– Dai concetti allo schema fisico
• Modello concettuale dei dati
– Entità, relazioni e cardinalità
– Chiavi e attributi
L. Vigliano
Programma del corso di
Basi di dati (2)
• Disegno logico DB
– Schema Entity-Relationship ed esempi.
• Disegno fisico DB
– Integrità, congruenza, consistenza e non ridondanza
• Forme normali
– Le prime 5 forme normali
– Dipendenze funzionali
• Query language e implementazioni su mySQL
– Creazioni tabelle e DML
L. Vigliano
Programma del corso
Basi di dati (3)
– SQL
• Select
– Opzioni, confronti, appartenenza, operatori ed ordinamenti
– Join, equijoin e nonequijoin
• Select nidificate e unioni di select
• Operatori aritmetici
• Funzioni aritmetiche, di insieme, di stringa
– Viste
– Creazione indici e integrità semantica
L. Vigliano
Programma del corso di
Basi di dati (4)
– Sicurezza
– Uso concorrente (se c’è tempo)
• Concetto di transazione
• Uso di lock
• Deadlock e prevenzione
• Simulazione progetto
• Realizzazione progetto (esame)
L. Vigliano
Libri consigliati
L. Vigliano
Modalità d' esame
• Prova scritta
• Consegna di un progetto di Database
– Solo se si supera la prova scritta
– Seguendo le linee guida di progetto
• Prova orale
– Solo se si supera la prova scritta e il progetto
viene accettato
L. Vigliano
Definizione
• Nei sistemi informatici (e non solo) tutte le
informazioni vengono rappresentate per
mezzo di dati
L. Vigliano
Definizione
• Data independence
– La struttura di un DB deve dare garanzia che modifiche
dei dati non richiedano modifiche ai programmi
applicativi e/o alle tecniche di accesso ai dati stessi
L. Vigliano
Definizione
L. Vigliano
Definizione di Ullman (2)
– o anche ……..
• Un Modello di dati è un formalismo
matematico composto da :
– una notazione per descrivere i dati
– un insieme di operazioni per manipolare tali
dati
L. Vigliano
Modelli di dati nella storia
Tipi di database
Gerarchico
A
B C
D E
L. Vigliano
Modelli di dati nella storia
Tipi di database (2)
Reticolare
A B
C D
L. Vigliano
Modelli di dati nella storia
Tipi di database (3)
Relazionale E.F.Codd anni ‘70
A R1 B
R2
C
L. Vigliano
… vai a Modello relazionale
L. Vigliano
2 punti di vista
• Come costruisco un DB ?
Flusso di progetto
L. Vigliano
Flusso di progetto di un database
• Analisi dei requisiti (definizione environment)
L. Vigliano
Strati della conoscenza
• Vista utente
• Vista fisica
– Schema interno : catene, hash, indici
L. Vigliano
Organizzazione fisica dei dati
L. Vigliano
Organizzazione fisica dei dati (2)
• I dati sono organizzati in file
– I file sono divisi in record
• Record logici, quelli visibili
• Record fisici, con informazioni del record e campi
INFORMAZIONI CAMPI
L. Vigliano
Organizzazione fisica dei dati (3)
• INFORMAZIONI
– Puntatore al prossimo record
– Tipo record
– Lunghezza record
– Bit di cancellazione
– Eventuali Offset dei campi
L. Vigliano
Organizzazione fisica dei dati (4)
• CAMPI
– Eventuale offset del campo
– Campo vero e proprio
L. Vigliano
Organizzazione fisica dei dati (5)
Tipi di file
• File Heap
– Record inseriti nei blocchi senza ordine
– Accesso ai record tramite directory di puntatori
ai blocchi
– Proliferazione di indirizzi indiretti
L. Vigliano
Organizzazione fisica dei dati (6)
Tipi di file
• File Hash
– Record ripartiti in ‘bucket’ in base al valore
della chiave
– Ogni bucket ha 1 o più blocchi ed è organizzato
come un Heap
– Funzione Hash “buona”
– Puntatori a lista collegano i blocchi di un
bucket
L. Vigliano
Organizzazione fisica dei dati (7)
Tipi di file
• File con indice (sparso) ISAM
– ISAM (indexed sequential access method)
– Record ordinati in crescenza (lasciando il 20%
dei blocchi liberi) e non puntati
– File indice formato da coppie (v,b)
– Directory del file indice
– Metodi di scansione
• Ricerca binaria o dicotomica
• Ricerca per interpolazione
L. Vigliano
Organizzazione fisica dei dati (8)
Tipi di file
• File B-tree
– Generalizzazione del file con indice
– Concetto dell’ albero binario evita spreco di
spazio
L. Vigliano