Gestione dei dati, a.a. 2011/2012 (prof. Riccardo Rosati)

Lezioni svolte

I riferimenti tra parentesi quadre si riferiscono ai lucidi del corso:


  1. Mer 29/2 [0], [1, pag. 1-11]
    Presentazione del corso. Architettura di un DBMS. Transazioni. Proprietà delle transazioni.
  2. Ven 2/3 [1, pag. 12-30]
    Schedule seriali. Schedule serializzabili. Anomalie degli schedule non serializzabili.
  3. Mer 7/3 [1, pag. 31-58]
    View-equivalenza e view-serializzabilità. Conflict-equivalenza e conflict-serializzabilità.
  4. Ven 9/3 [1, pag. 59-94]
    Confronto tra conflict-serializzabilità e view-serializzabilità. Controllo della concorrenza tramite lock. Il protocollo two-phase locking (2PL). Il protocollo 2PL. Confronto tra 2PL e conflict-serializzabilità. Lock condivisi. Protocollo 2PL con lock condivisi.
  5. Mer 21/3 [1, pag. 95-112]
    Tecniche di gestione dello stallo. Recuperabilità delle transazioni. Anomalie causate da rollback. Schedule recuperabili.
  6. Ven 23/3 [1, pag. 113-154]
    Schedule ACR. Schedule stretti. Protocollo 2PL stretto. Locking gerarchico. Gestione della concorrenza mediante timestamp. Scheduler nel metodo dei timestamp. Confronto tra metodo dei timestamp e conflict-serializzabilità. Confronto tra metodo dei timestamp e 2PL. Metodo dei timestamp multiversione.
  7. Mer 28/3 [1, pag. 155-163]
    Transazioni e gestione della concorrenza in SQL. Gestione della concorrenza nei sistemi commerciali.
  8. Ven 30/3 [2], [3, pag. 1-19]
    Esercitazione sulla gestione della concorrenza. Gestione del buffer. Gestione del recovery: tipi di guasti.
  9. Mer 4/4 [3, pag. 20-56]
    Gestione del recovery: tipi di guasti, file di log, checkpoint e dump. Undo e redo. Politiche di scrittura sulla memoria stabile. Politiche di scrittura sulla memoria di massa, warm restart, cold restart.