| | | corso | | | |
Basi di dati: strutture e algoritmi
Codice: | AA022 | Crediti: | 6 | Semestre: | 1 | Sigla: | BSA | |
|
Settore disciplinare: | INF/01 - Informatica |
Docente
Antonio Albano
Tel. 0502212700Prerequisiti
Conoscenza dei DBMS relazionali e del linguaggio SQL. Raccomandato “Basi di dati”
Obiettivi di apprendimento
Il corso presenta le tecniche per la realizzazione di sistemi per la gestione di basi di dati relazionali.
Vengono discusse le funzionalità, le strutture e gli algoritmi dei moduli principali per (a) organizzare i dati nella memoria permanente, (b) per ottimizzare l’esecuzione delle operazioni sui dati espresse nel linguaggio SQL e (c) per gestire le transazioni e gli accessi concorrenti ai dati. Il corso presenta anche un approccio alla progettazione fisica e alla messa punto di basi dati per garantire le prestazioni attese.
Conoscenze. Lo studente acquisirà conoscenze di base, sia sui metodi che sulle tecnologie, per affrontare i problemi che si presentano quando occorre realizzare sistemi per la gestione di dati e la progettazione fisica di basi di dati relazionali
Capacità. Lo studente saprà progettare e realizzare (a) strutture di memorizzazione per dati persistenti, (b) algoritmi per ottimizzare l’esecuzione delle interrogazioni, (c) algoritmi per gestire transazioni e concorrenza. Lo studente saprà inoltre progettare gli aspetti fisici delle basi di dati, valutare la tecnologia dei prodotti commerciali disponibili sulla base della piena comprensione delle soluzioni tecniche utilizzate e comprendere le innovazioni tecnologiche del settore.
Comportamenti. Lo studente sarà essere indipendente nella valutazione degli strumenti di gestione di basi di dati, nella valutazione della tecnologia e nella comunicazione con gli esperti dei domini applicativi e tecnologici per la progettazione di basi di dati. Lo studente sarà essere inoltre consapevole delle problematiche della sicurezza.
Descrizione
Vengono presentate le tecniche per la realizzazione
di sistemi per la gestione di basi di dati, in particolare quelli
relazionali. Vengono discusse le funzionalità, le strutture e gli
algoritmi dei moduli principali per (a) organizzare i dati nella memoria
permanente, (b) per ottimizzare lesecuzione delle operazioni sui dati
espresse nel linguaggio SQL e (c) per gestire le transazioni e gli accessi
concorrenti ai dati.
English Description
The course presents the basic concepts, fundamental
data structures, and general techniques that are needed to implement a
database management system (DBMS) with the main emphasis on relational
DBMSs. The course will cover (a) the most frequently used data structures
to store and access efficiently sets of data and relationships between
them, (b) the techniques used in database management systems to process
and optimize queries specified in SQL, and (c) the techniques to implement
transactions, recovery, and concurrency control.
Programma
Ore lezione: | 32 | Ore esercitazione: | 16 | | | |
Bibliografia
- Appunti delle lezioni.
- Raccolta di esercizi e di soluzioni di prove d'esame.
- Testo di riferimento: A. Albano, Costruire sistemi per basi di dati, Addison-Wesley, Milano, 2001.
I libri consigliati sono alla pagina web del corso.
Modalità di esame
Una prova orale preceduta da una prova scritta della durata di un’ora.