84339 - BASI DI DATI AVANZATE

Anno Accademico 2022/2023

  • Docente: Matteo Golfarelli
  • Crediti formativi: 6
  • SSD: ING-INF/05
  • Lingua di insegnamento: Italiano
  • Moduli: Matteo Golfarelli (Modulo 1) Alessandra Lumini (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Cesena
  • Corso: Laurea in Ingegneria e scienze informatiche (cod. 8615)

Conoscenze e abilità da conseguire

Al termine del corso, lo studente possiede competenze avanzate e capacità pratiche relativamente alle tecnologie legate alle basi di dati relazionali e non relazionali, nonché la capacità di realizzare applicazioni centrate sull'utilizzo di DBMS.

Contenuti

Amministrazione di basi di dati

Architettura logica e fisica dei DBMS
Gestione delle risorse
Il data dictionary
Problematiche di sicurezza

Programmazione avanzata di basi di dati

Costrutti avanzati di SQL
Basi di dati attive e Trigger
Stored procedure

Ottimizzazione delle prestazioni

Il processo di ottimizzazione delle query SQL
Tecniche di accesso ai dati dei DBMS relazionali
Tecniche di ottimizzazione
Interpretazione dei piani di esecuzione
Calcolo del costo di esecuzione per query SQL

 

DBMS NoSQL

Modelli dati non relazionali (Document-based, Graph-based, Column oriented)
Architetture per DBMS non relazionali
Cluster, Sharding e persistenza
Modellazione dei dati in DBMS  NoSQL
Esercitazioni di laboratorio

Testi/Bibliografia

Dispense a cura del docente
R. van der Lans Introduzione a SQL . Addison-Wesley, 2001.
R. A. Elmasri, S.B. Navathe. Sistemi di basi di dati - Complementi. Pearson, 2005.
Making Sense of NoSQ. Daniel G. McCreary and Ann M. Kelly. Manning, 2013.
Martin J. Fowler & Pramodkumar J. Sadalage. Nosql Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison Wesley, 2009.

Metodi didattici

Lezioni in aula ed esercitazioni in laboratorio

Modalità di verifica e valutazione dell'apprendimento

L'esame consta di due prove scritte. La prima prova è pratica e viene svolta in laboratorio, mira a vautare le capacità dello studente rispetto ai sistemi e alle tecnologie informatiche utilizzate durante il corso. La seconda prova si compone di un insieme di domande aperte su tutto il programma del corso. Durante la prima prova lo studente potrà consultare testi e appunti.
La realizzazione di un elaborato è opzionale e fornirà punti addizionali per il voto finale.

i voti vengono assegnati in base a una valutazione complessiva delle conoscenze, competenze, capacità di presentazione e discussione delle tematiche trattate. I range di voti corrispondono possono essere descritti come segue:

18-23: preparazione e capacità di analisi sufficienti ma relative ad un numero limitato di argomenti affrontati nel corso, utilizzo di un linguaggio complessivamente corretto;

24-27: preparazione tecnicamente adeguata ma con alcuni limiti rispetto agli argomenti trattati, capacità di analisi buone, anche se non particolarmente articolate, espresse in un linguaggio corretto;

28-30: ottima conoscenza di un ampio numero di temi affrontati nel corso, buone capacità di analisi e di critica, padronanza della terminologia specifica;

30L: conoscenza eccellente e molto approfondita ed esaustiva dei temi affrontati nel corso, capacità di analisi critica e di collegamento, padronanza della terminologia specifica.

Nel caso in cui, causa pandemia, non sia possibile svolgere gli esami in presenza ma solo a distanza la stturuttura dell'esame non cambierà.

Strumenti a supporto della didattica

Le esercitazioni saranno svolte utilizzando il DBMS Oracle 11g e il DBMS MongoDB

Link ad altre eventuali informazioni

http://bias.csr.unibo.it/golfarelli/BDA/index.htm

Orario di ricevimento

Consulta il sito web di Matteo Golfarelli

Consulta il sito web di Alessandra Lumini