Docenza presso Banca d'Italia in due edizioni di un corso su "Data Management for Big Data Analysis"
Il corso è ha presentato diverse tecnologie chiave utilizzate per manipolare, archiviare e processare big data. In particolare, si sono investigate alcune soluzioni per applicazioni distribuite ad alta intensità di dati, come il framework Hadoop, ed i sistemi di archiviazione NoSQL, tra cui database a grafo, key-value, document-based, e column-family.
Il corso è stato organizzato in 10 moduli da due ore ciascuno, accompagnate da 4 attività di laboratorio sui temi trattati.
Il corso è stato erogato a distanza. Prima edizione: 17,18,19,25 e 26 giugno 2020; Seconda edizione 9,10,11,14 e 15 Settembre 2020
Programma del corso:
Modulo 1: Richiami sulla modellazione concettuale dei dati e sul modello Entità-Relazione, sul modello relazionale ed il linguaggio SQL.
Modulo 2: Introduzione ai Big Data: principali caratteristiche e primi esempi. Cenni al Data Warehousing come approccio tradizionale al data management per l’analisi di grandi quantità di dati. Il framework Hadoop ed Il paradigma di programmazione map-reduce.
Esercitazione autoguidata 1: progettazione di un semplice schema Entità-relazione e successiva realizzazione tramite modello relazionale ed SQL.
Modulo 3: Graph Databases: caratteristiche principali; confronto con le basi di dati relazionali; Property Graph ed Hypergraph databases.
Modulo 4: Il sistema Neo4j per property graph databases ed il linguaggio Cypher.
Esercitazione autoguidata 2: progettazione di una semplice base di dati a grafo e sua codifica in Cypher
Modulo 5: Linked Open Data Management: lo standard RDF per la rappresentazione dei dati in forma di triple. RDF come base di dati a grafo.
Modulo 6: Il linguaggio SPARQL per l’interrogazione di dati RDF.
Esercitazione autoguidata 3: codificare in RDF la base dati vista nell’esercitazione precedente. Eseguire semplici query SPARQL sul dataset definito e su dataset disponibili on-line.
Modulo 7: Aggregate Data Models: caratteristiche principali delle basi di dati NoSQL key-value e document-based;
Modulo 8: Il formato JSON; introduzione al sistema MongoDB per basi dati document-based e confronto con i database relazionali Modelli di distribuzione dei dati;
Esercitazione autoguidata 4: definizione e caricamento in MongoDB di una base dati document-based. Esecuzione di interrogazioni in MongoDB.
Modulo 9: Caratteristiche principali delle basi di dati column-family e confronto con le basi di dati document-based.
Modulo 10: Modelli di distribuzione dei dati; consistenza nei sistemi distribuiti e confronto con i tradizionali sistemi transazionali.
Periodo:
Lunedì, 15 June, 2020 to Mercoledì, 15 September, 2021
Soggetti terzi coinvolti nell'organizzazione:
altre istituzioni pubbliche