Universita' Roma Tre --- CD Ingegneria Informatica --- Dip Ingegneria

Basi di dati II

Anno accademico 2018-2019

Home page del corso -- Programma e materiale -- Avvisi

Esercizi di autovalutazione e progetti

Le indicazioni in grigio nel resto della pagina sono relative allo scorso anno accademico e sono quindi da considerare come riferimento preliminare.

Esercizi proposti

Sono facoltativi ma è estremamente importante svolgerli (e anche discuterli ad esempio sul forum), perché le domande proposte nei compiti di esame possono essere molto simili.

  1. esercizio discusso in aula il 06/03/2019: esercizio 4 del 28/03/2012 (gestione dei buffer);
  2. esercizio discusso in aula il 07/03/2019: esercizio 1 del 30/03/2015 (record e blocchi; inserimenti, eliminazioni e ricompattazione);
  3. esercizio discusso in aula l'11/03/2019: hashing dinamico;
  4. esercizi svolti in aula 14/03/2019: esercizi 2 e 4 del 28/03/2014 (selettività degli attributi e benefici degli indici, B+-tree); con riferimento all'esercizio 3 dello stesso compito e all'indice in esso mostrato, supporre di esguire ricerche dei record con valore della chiave AB, EA, HA, EC e indicare quali blocchi vengono effettivamente letti, con un buffer di otto pagine (buffer e B-tree)
  5. esercizio svolto in aula il 18/03/2019: esercizio 5 del 26/02/2013 (merge-sort a più vie)
  6. esercizio svolto in aula il 20 e il 25/03/2019: esercizio 7 del 25/09/2012 (hash join)
  7. esercizi proposti il 21/03/2019 e svolti in aula il 28/03/2019
  8. esercizi svolti in aula il 01/04/2019
  9. esercizi svolti in aula il 04/04/2019
  10. esercizio svolto in aula il 15/04/2019: esercizio 5 del 22/09/2017 (scelta del livello di isolamento)
  11. esercizi svolti in aula il 2/05/2019:
  12. esercizi svolti in aula il 3/05/2019:
  13. esercizi discussi in aula il 15/05/2019:
  14. esercizi discussi in aula il 16/05/2019:
  15. esercizi discussi in aula il 24/05/2019:
  16. esercizio discusso in aula il 30/05 e il 05/06/2019
  17. esercizi svolti in aula il 03/06/2019
  18. esercizo svolto in aula il 06/06/2019
  19. esercizio discusso in aula il 13/06/2019 (materializzazione di viste in uno schema dimensionale);
  20. esercizio 6 del 29/09/2013 (evoluzione delle dimensioni -- elezioni politiche), discusso in aula il 13/06/2019

Progetti

Sono finalizzati alla preparazione allo scritto e non vengono esplicitamente valutati, ma sono obbligatori (secondo le regole sotto specificate) e vanno consegnati su Moodle secondo le seguenti scadenze

  1. Progetto 1 (da consegnare su Moodle prima dell'esame oppure, se interessati alle prove parziali, entro l'8/04/2019 ore 7:00); scegliere fra le seguenti alternative (nel senso che è sufficiente consegnare una delle due; peraltro, entrambe sono utili per la preparazione e si consiglia quindi di svolgerle entrambe):
    1. Merge-sort a più vie in SimpleDB. Sono disponibili alcuni metodi ausiliari.
    2. Sperimentare le strutture fisiche di un DBMS, definendo alcune relazioni (ad esempio tre) e alcune interrogazioni (due o tre) che prevedano selezioni, proiezioni e join. Utilizzare relazioni di dimensioni sufficientemente grandi da rendere conveniente l’uso degli indici (si suggerisce di generare, con opportuni progammi, dati sintetici casuali). Mostrare, con riferimento al DBMS scelto (DB2, PostgresSQL, Oracle, etc.) il comportamento del sistema (in termini di piano di esecuzione delle interrogazioni), in presenza e assenza di indici e prima e dopo l’aggiornamento delle statistiche. Sintetizzare il tutto in una relazione di alcune pagine (con allegati i test), che permetta di comprendere il lavoro svolto e i risultati ottenuti.
    Consegnare un unico file zip, contenente i sorgenti, un'evidenza dei test effettuati (ma non i dati di test) e una breve relazione di testo che illustri sinteticamente il lavoro svolto.
  2. Progetto 2 (da consegnare su Moodle prima dell'esame oppure, se interessati alle prove parziali, entro il 27/05/2019 ore 7:00): sperimentare la gestione del controllo di concorrenza in uno o più DBMS: dettagli. Consegnare un unico file zip, contenente i sorgenti, un'evidenza dei test effettuati (ma non i dati di test) e una breve relazione di testo che illustri brevemente il lavoro svolto.
  3. Progetto 3: progettare e realizzare il flusso di ETL come proposto nelle esercitazioni con riferimento al progetto "Carriere degli studenti" (vedere anche i file csv con i dati da importare). Non va consegnato, ma si consiglia di svolgerlo, perché i concetti potrebbero essere ripresi in esercizi delle prove parziali o d'esame