Architetture dei sistemi di gestione dati - a.a. 2004-2005




AVVISI








Programma del corso

Organizzazione dei dati su memoria secondaria

Dispositivi di memorizzazione. File con record a lunghezza fissa e variabile. Clustering. Indici densi e sparsi. B-alberi e B+-alberi. Hashing statico e dinamico (hash virtuale, hash estendibile). Cenni a indici bitmap, per testo, per dati spaziali.

Strategie di elaborazione di interrogazioni

Ordinamento di dati su memoria secondaria. Elaborazione degli operatori relazionali. Ottimizzazione logica: equivalenza di espressioni algebriche. Ottimizzazione fisica: fattori di selettivita', stima delle dimensioni dei risultati intermedi, strategie di enumerazione e scelta dei piani di esecuzione per interrogazioni su singola relazione e con join.

Controllo della concorrenza

Nozione di transazione. Introduzione alla teoria della serializzabilita'. Concetto di schedule, schedule seriale, schedule serializzabile. Serializzabilita' rispetto ai conflitti e serializzabilita' rispetto alle viste. Protocolli di controllo della concorrenza: Two-Phase locking, timestamp ordering, validazione.

Ripristino

Memoria volatile, non volatile e stabile. Tecniche di log. Log incrementale con modifiche rimandate ed immediate.

Autorizzazione

Politiche di autorizzazione. Modelli discrezionali e non. L'autorizzazione nel System R: comandi di Grant e Revoke, struttura dei cataloghi di autorizzazione e algoritmi di Grant e Revoke, autorizzazione attraverso le viste.

Architetture distribuite

Basi di dati distribuite e loro applicazioni. Frammentazione orizzontale e verticale. Ottimizzazione di interrogazioni distribuite (semijoin, bloomjoin). Transazioni in ambiente distribuito, protocollo di Two-Phase commit. Concetti di parallelismo e di replicazione dei dati.




Modalita' d'esame

L'esame consiste in una prova orale. La prova orale puo' essere sostuita dai compitini che si terranno durante il corso. Il voto e' ottenuto da:




Testi di riferimento

Libro di testo

E.Bertino, B.Catania, E.Ferrari, G.Guerrini. Sistemi di basi di dati: concetti e architetture. UTET Libreria, 1997.

Altri testi consigliati