Welcome to my webpage

Laboratorio di Basi di Dati (in Italian)

2021-2022, I semestre, Laurea Triennale in Informatica, Università di Udine

Orari e aule delle lezioni di laboratorio di basi di dati

(eventuali cambiamenti dovuti ad impegni accademici dei docenti saranno comunicati tempestivamente)
  • giovedì, 15:30-18:30, aula C2

Lezioni

I link alle registrazioni delle lezioni dell'anno accademico 2020/2021 sono disponibili qui
  • Lezione 1 (giovedì 21/10/21, 15:30-18:30): Introduzione al corso, Introduzione alla progettazione di basi di dati, Raccolta e analisi dei requisiti [Parziale numero ore: 3]
  • Lezione 2 (martedì 26/10/21, 10:30-12:30): Raccolta e analisi dei requisiti, Pattern di progetto [Parziale numero ore: 5]
  • Lezione 3 (giovedì 04/11/21, 15:30-18:30): Pattern di progetto (cont'd) [Parziale numero ore: 8]
  • Lezione 4 (giovedì 11/11/21, 15:30-18:30): Pattern di progetto (cont'd), Progettazione concettuale (esempio preliminare), Strategie di progetto, Qualità di uno schema concettuale [Parziale numero ore: 11]
  • Lezione 5 (giovedì 18/11/21, 15:30-16:30): Attività di laboratorio sul progetto finale (raccolta e analisi dei requisiti) [Parziale numero ore: 14]
  • Lezione 6 (martedì 23/11/20, 10:30-12:30): Attività di laboratorio sul progetto finale (raccolta e analisi dei requisiti, progettazione concettuale) [Parziale numero ore: 16]

  • Lezione 7 (mercoledì 01/12/21, 10:30-12:30): Attività di laboratorio sul progetto finale (progettazione concettuale) [Parziale numero ore: 18]
  • Lezione 8 (giovedì 02/12/21, 15:30-18:30): Attività di laboratorio sul progetto finale (progettazione logica) [Parziale numero ore: 21]
  • Lezione 9 (giovedì 09/12/21, 15:30-18:30): Attività di laboratorio sul progetto finale (progettazione logica) [Parziale numero ore: 24]
  • Lezione 10 (giovedì 16/12/21, 15:30-18:30): Attività di laboratorio sul progetto finale (progettazione logica e fisica) [Parziale numero ore: 27]
  • Lezione 11 (martedì 11/01/22, 10:30-12:30): Introduzione ad R [Parziale numero ore: 29]
    Slides:
    [05_r_brevi_cenni_preliminari.pdf]
    [06_r_intro.pdf] *** slides gentilmente offerte da Nicola Vitacolonna ***
  • Lezione 12 (mercoledì 12/01/22, 10:30-12:30): Introduzione ad R (cont'd), Manipolazione dei dati [Parziale numero ore: 31]
    Slides:
    [06_r_intro.pdf] *** slides gentilmente offerte da Nicola Vitacolonna ***
    [07_r_data_operations.pdf] *** slides gentilmente offerte da Nicola Vitacolonna ***
  • Lezione 13 (giovedì 13/01/22, 15:30-18:30): Leggere da/scrivere su file in linguaggio R, Visualizzazione di dati attraverso grafici in linguaggio R, R e le basi di dati [Parziale numero ore: 34]
    Slides:
    [08_r_getting_data.pdf] *** slides gentilmente offerte da Nicola Vitacolonna ***
    [09_r_sample_graphs.pdf] *** slides gentilmente offerte da Nicola Vitacolonna ***
    [10_r_expository_graphs.pdf] *** slides gentilmente offerte da Nicola Vitacolonna ***
    [11_r_e_basi_di_dati.pdf]

    Extra:
  • Lezione 14 (venerdì 14/01/22, 11:30-13:30): R e le basi di dati (cont'd), Informazioni finali corso [Parziale numero ore: 36]

Software

  • Strumenti per disegnare diagrammi Entità-Relazione (ma state attenti alla notazione: utilizzare quella proposta dal prof. Montanari al corso)
  • ChronoGeoGraph (realizzato dalla dott.ssa Donatella Gubiani): tool grafico per la realizzazione di diagrammi Entità-Relazione (richiede Java).
    Il tool, al momento, presenta alcuni problemi; occuparsi di migliorarlo costituisce un possibile progetto per l'esame o tesi triennale (vedere sezione "Funzionalità da integrare nel tool ChronoGeoGraph" in basso e/o chiedere al docente per maggiori informazioni)
    Per eseguire ChronoGeoGraph su sistemi operativi Linux e Mac, utilizzare questo script realizzato da Riccardo Caranfil.
    Istruzioni per l'esecuzione (assumiamo java installato ed aggiornato all'ultima versione)
    • estrarre il file "ChronoGeoGraph.zip"
    • navigare in "ChronoGeoGraph/cgg/"
    • Sotto Windows (sembra non funzionare in WinXP e in Win10): lanciare (doppio click) "ChronoGeoGraph.cmd"
    • Sotto Linux (e probabilmente Mac): eseguire (da riga di comando; verificare che il file abbia i permessi di esecuzione) "run.sh"
    In caso di difficoltà nell'installazione, è possibile testare il "wrapper" realzzato da Simone Zanin, che consiste in un singolo .jar avviabile indipendentemente dal sistema operativo attraverso il quale è possibile configurare il tool in base al sistema operativo (i sorgenti del wrapper sono disponibili qui).
  • Istruzioni per installazione e configurazione di postgreSQL e pgadmin (in inglese)
    • PostgreSQL è un DataBasa Management System (DBMS) gratuito e open source
    • pgAdmin è una piattaforma per amministrazione e sviluppo di basi di dati in PostgreSQL
  • RStudio: ambiente di lavoro per R
  • mockaroo: applicazione web per la generazione di dati casuali realistici

Misc

  • Come risolvere errori di tipo SCRAM authentication error.
    • Problematica: l'errore potrebbe presentarsi quando ci si prova a connettere al server postgreSQL da R. Il messaggio di errore contiene qualcosa del tipo: "SCRAM authentication requires libpq version 10 or above".
    • Possibili soluzioni:
      1. modificare l'algoritmo di codifica della password da "SCRAM" a "MD5". Clicca qui per maggiori dettagli
      2. passare alla versione 11 o 12 di PostgreSQL (il problema dovrebbe presentarsi a partire dalla versione 13); disinstallare la versione 13 o superiore di postgreSQL prima di installare la versione 11 o 12

Funzionalità da integrare nel tool ChronoGeoGraph (possibili progetti e/o tesi triennali -- chiedere info ai docenti del corso)

  • Entità debole con due identificatori esterni
  • Due chiavi di entità (al momento si può indicare una chiave composta da un insieme di attributi ma non si possono specificare due insiemi di attributi chiave)
  • Eliminare lo sfarfallio