ADVANCED DATA MANAGEMENT

ADVANCED DATA MANAGEMENT

_
iten
Codice
61884
ANNO ACCADEMICO
2018/2019
CFU
9 cfu al 1° anno di 10852 COMPUTER SCIENCE (LM-18) GENOVA

6 CFU al 1° anno di 8733 INGEGNERIA INFORMATICA (LM-32) GENOVA

SETTORE SCIENTIFICO DISCIPLINARE
INF/01
LINGUA
Inglese
SEDE
GENOVA (COMPUTER SCIENCE )
periodo
1° Semestre
materiale didattico

PRESENTAZIONE

Quando la dimensione dei dati strutturati e non supera la capacità dei sistemi di gestione dati tradizionali, sono necessari nuovi strumenti e metodi per l'acquisizione, l'archiviazione e la gestione degli stessi. Tali enormi quantità di dati sono in genere memorizzati in ambienti distribuiti su larga scala, elaborate utilizzando specifici ambienti, possono essere già disponibili o arrivare come un flusso continuo in fase di elaborazione, e richiedere strumenti specifici per la loro gestione.

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Students will be provided with a sound grounding on theoretical, methodological, and technological fundamentals concerning data management for advanced data processing architectures, with a specific reference to large-scale distributed environments. Students will learn key elements of NoSQL and stream-based systems as well as basic issues in parallel and distributed query processing, multi-query processing, and high-throughput transactional systems. Students will be involved in project activities.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

DESCRIVERE i principi di gestione dati in ambienti distribuiti, gli ambienti per l’elaborazione dati su larga scala, i sistemi per la gestione dati su larga scala e gli approcci per la gestione di flussi di dati

COMPRENDERE le differenze tra le problematiche relative alla elaborazione e gestione dati tradizionali e quelle relative alla elaborazione e gestione dati su larga scala

COMPRENDERE le differenze tra i principali approcci di elaborazione dati e di gestione dati su larga scala presentati nell’ambito dell’insegnamento

SELEZIONARE il sistema e la metodologia per l’elaborazione o la gestione dati ritenuti idonei in un determinato contesto applicativo

UTILIZZARE i principali sistemi di elaborazione dati e di gestione dati su larga scala, presentati nell’ambito dell’insegnamento, per la risoluzione di problemi semplici

UTILIZZARE almeno uno tra i sistemi presentati nell’ambito dell’insegnamento per la risoluzione di problemi non banali

RISPONDERE a domande sui sistemi per l’elaborazione e la gestione di dati su larga scala

RISOLVERE esercizi relativi progettazione di data store nei sistemi proposti e all’interazione con essi, mediante i linguaggi resi disponibili dai sistemi

PREREQUISITI

I prerequisiti riguardano i concetti di base relativi alla gestione dei dati tradizionale:

  • Modelli dei dati, concetti di schema e  istanza
  • Modelli concettuali
  • Modello relazione (modello logico)
  • —Progettazione concettuale
  • Progettazione logica
  • Concetti di base teoria della normalizzazione
  • Algebra relazionale
  • SQL
  • Indici
  • Transazioni

Modalità didattiche

Per LM in Computer Science: Lezioni, progetto e studio a casa

Per LM in Computer Engineering: Lezioni, progetto (facoltativo) e studio a casa

PROGRAMMA/CONTENUTO

Introduzione alla gestione dati in ambienti distribuiti
Introduzione ai Big Data
Introduzione alle architetture distribuite
Principi di gestione dei dati su larga scala
Approcci architetturali alla gestione dati su larga scala

Ambienti per elaborazioni di dati su larga scala (data-intensive computing)

Batch processing e il paradigma Map-Reduce
Da (Hadoop) Map-reduce a Spark
Linguaggi di alto livello per elaborazioni di dati su larga scala

Sistemi per la gestione dati su larga scala
Introduzione ai sistemi NoSQL
I modelli NoSQL
I sistemi column-family
I sistemi basati sui grafi

Gestioni di flussi di dati
Introduzione alla gestione di flussi di dati
Modelli e linguaggi per la gestione di flussi di dati
Gestione di flussi di dati su larga scala
 

TESTI/BIBLIOGRAFIA

Serge Abiteboul, Ioana Manolescu, Philippe Rigaux, Marie-Christine Rousset, Pierre Senellart. Web Data Management. Cambridge University Press, 2011.
Martin Kleppmann. Designing Data-Intensive Applications. O'Reilly, 2017.
+
Materiale e riferimenti aggiuntivi forniti dai docenti.

 

DOCENTI E COMMISSIONI

Ricevimento: Su appuntamento, via email. Stanza: Valle Puggia – 327

Commissione d'esame

GIOVANNA GUERRINI (Presidente)

BARBARA CATANIA (Presidente)

ELENA ZUCCA

LAURA DI ROCCO

LEZIONI

Modalità didattiche

Per LM in Computer Science: Lezioni, progetto e studio a casa

Per LM in Computer Engineering: Lezioni, progetto (facoltativo) e studio a casa

INIZIO LEZIONI

Martedi' 2 ottobre (lezione 0, introduzione al corso), ore 9.00, aula 216
Da martedi' 9 ottobre: orario come da calendario online

ESAMI

Modalità d'esame

LM In Computer Science: esame scritto (parte I e II) e orale (include discussione progetto)

LM in Computer Engineering: lo studente potra' scegliere tra:

  • esame scritto (parte I e II) oppure
  • esame scritto (parte I) e orale (include discussione progetto)

Modalità di accertamento

I dettagli sulle modalità di preparazione per l’esame e sul grado di approfondimento di ogni argomento verranno forniti nel corso delle lezioni. 

Durante il semestre, verranno proposte alcune prove in itinere (teoriche e pratiche) che gli studenti dovranno svolgere a piccoli gruppi, e un progetto, da svolgere utilizzando un sistema a propria scelta tra quelli introdotti nell’ambito dell’insegnamento.
Il progetto è obbligatorio per gli studenti iscritti alla LM in Computer Science, facoltativo per gli studenti iscritti alla LM in Computer Engineering. Nel caso in cui gli studenti iscritti alla LM in Computer Engineering optino per il progetto, verrà proposta una prova scritta ridotta (solo parte I).

Nel caso di valutazione positiva delle prove in itinere:

  • l’esame scritto consiste in un insieme di domande (parte I) ed esercizi (parte II) su argomenti di base del corso. L'obiettivo di questa prova è quello di accertare la comprensione delle problematiche principali affrontate durante le lezioni;
  • la prova orale consiste in: per gli studenti che hanno svolto il progetto, discussione approfondita delle soluzioni elaborate dallo studente per il progetto assegnato, al fine di valutare non soltanto se lo studente ha raggiunto un livello adeguato di conoscenze, ma se ha acquisito la capacità di analizzare criticamente problemi relativi alla gestione di dati in ambienti su larga scala.

Nel caso di valutazione negativa delle prove in itinere o nel caso in cui queste prove non vengano svolte:

  • l’esame scritto consiste in un insieme di domande ed esercizi esercizi su argomenti di base del corso. L'obiettivo di questa prova è quello di accertare la comprensione delle problematiche principali affrontate durante le lezioni;
  • la prova orale consisterà in: (i) per gli studenti che hanno svolto il progetto: discussione approfondita delle soluzioni elaborate dallo studente per il progetto assegnato, al fine di valutare non soltanto se lo studente ha raggiunto un livello adeguato di conoscenze, ma se ha acquisito la capacità di analizzare criticamente problemi relativi alla gestione di dati in ambienti su larga scala; (ii) domande teoriche e/o pratiche su argomenti svolti nell'ambito dell'insegnamento, con particolare riferimento agli argomenti sui quali sono state evidenziate carenze nella prova scritta o nello svolgimento del progetto.

Calendario appelli

Data Ora Luogo Tipologia Note
26/07/2019 09:00 GENOVA Esame su appuntamento
20/09/2019 09:00 GENOVA Esame su appuntamento
14/02/2020 09:00 GENOVA Esame su appuntamento