- Docente: Damiano Marino Somenzi
- Crediti formativi: 6
- SSD: ING-INF/05
- Lingua di insegnamento: Inglese
- Modalità didattica: Convenzionale - Lezioni in presenza
- Campus: Bologna
- Corso: Laurea Magistrale in Statistica, economia e impresa (cod. 6811)
Conoscenze e abilità da conseguire
Aim of the course is to understand the concepts and learn the techniques to access data stored in database systems for analytical purposes. In particular, the student will understand the main concepts of relational and noSQL database systems and will learn how to effectively extract data from those systems in order to prepare them for subsequent application of statistical and machine learning techniques. The course will deal with both the query languages of databases and the interfaces with programmatic languages, such as R or Python. At the end of the course the student is able: - to understand the structure of a given database, either relational or noSql; - to access the data stored in a Database Management System either with the specific standard languages or with programmatic interfaces.
Contenuti
Capire i dati: elementari, complessi e del Web
Modellare i dati
Tecniche per organizzare i dati:
Basi di dati relazionale:
- Modello concettuale (diagramma Entità-Relazione)
- Modello logico (schema delle relazionali)
Basi di dati noSQL:
- Modello document
- Modello key-value
Gestire le basi di dati
- Sistemi per la gestione delle basi di dati
Il linguaggio per interrogare le basi di dati:
- Interrogare le basi di dati relazionali (SQL)
- Interrogare le basi di dati noSQL
Analizzare i dati
- Estrarre dati, informazioni
- Realizzare viste sui dati
Esperienze con Python di Analisi Statistiche su dati da Database e dal Web
Testi/Bibliografia
Le lezioni si baseranno per la parte basi di dati relazionali sul testo di Jeff Ullman e Jennifer Widom: "A First Course in Database Systems", per la parte basi di dati noSQL sulla documentazione disponibile sul Web.
Approfondimenti, esempi e esercizi saranno messi a disposizione settimanalmente su “Virtual Learning Environment”.
Metodi didattici
Le lezioni si svolgeranno sia in aula tradizionale sia in aula informatica. La partecipazione alle lezioni (teoriche e pratiche) è un valido supporto alla comprensione degli argomenti trattati.
Le sessioni pratiche sono prevalenti e fondamentali per acquisire le conoscenze e competenze dei concetti e degli strumenti trattati.
Modalità di verifica e valutazione dell'apprendimento
Prova scritta e pratica (durata 2 ore). La prova si articola in due parti.
Una prima parte scritta con la richiesta di disegnare un modello di dati sulla base di requisiti (40%) ed inoltre con brevi esercizi e/o quesiti sul programma dell’insegnamento (20%). Non è ammesso l'uso del materiale didattico.
Una seconda parte pratica con la richiesta di realizzare delle interrogazioni, nel linguaggio SQL, su una base di dati reale (40%). E' ammesso l'uso del solo materiale didattico.
Il voto finale (in trentesimi) è determinato applicando le percentuali - pesi - assegnate a ciascun tipo di richiesta.
Strumenti a supporto della didattica
Personal Computer e Open Source software per la gestione e interrogazione di basi di dati relazionali e Open Source software per l’analisi di dati (Python).
Orario di ricevimento
Consulta il sito web di Damiano Marino Somenzi