Il corso si propone di fornire i concetti fondamentali dei sistemi di calcolo distribuito che devono gestire grandi quantità di dati, insieme ai paradigmi di programmazione adottati da tali sistemi. Al termine del corso lo studente dovrà dimostrare di avere acquisito le conoscenze necessarie per valutare le possibili alternative nella progettazione dell'analisi di grandi moli di dati, considerando i benefici e le limitazioni delle possibili alternative. Queste conoscenze consentiranno allo studente di: i) configurare sistemi paralleli di elaborazione di dati; ii) progettare soluzioni per analizzare grandi moli di dati; iii) valutare le soluzioni per l'analisi dei dati con sistemi paralleli, considerando le risorse di sistema necessarie all'analisi stessa; iv) proseguire gli studi in modo autonomo nell’ambito dello sviluppo di analisi avanzate di grandi moli di dati.
* Framework di programmazione:
-- Filesystem distribuiti (HDFS);
-- Analisi di dati e grafi (MapReduce, Pregel);
-- Sistemi SQL-like (Pig, Hive);
-- Sistemi NoSQL (HBase, Cassandra).
* Algoritmi:
-- Progettazione di algoritmi per l'analisi dei testi;
-- Algoritmi per l'indicizzazione (inverted indexing);
-- Analisi dei grafi (PageRank).
* Architetture dei data center:
-- Struttura e organizzazione di un data center;
-- Connettività di rete;
-- Gestione degli errori e dei guasti.
Autore | Titolo | Casa editrice | Anno | ISBN | Note |
Jimmy Lin, Chris Dyer | Data-Intensive Text Processing with MapReduce (Edizione 1) | Morgan & Claypool Publishers | 2010 | 978-1608453429 | |
Tom White | Hadoop: The Definitive Guide (Edizione 3) | Oreilly & Associates Inc | 2012 | 978-1449311520 |
L'esame consiste nello svolgimento di un progetto e relativa documentazione. Obiettivo del progetto è quello di accertare la comprensione dei contenuti del corso e la capacità di applicare tali contenuti nella risoluzione di problemi. Il tema del progetto viene concordato con il docente e riguarda l'applicazione delle nozioni viste durante il corso in casi di studio specifici. Lo svolgimento del progetto include la valutazione delle prestazioni al variare delle dimensioni dell'input da analizzare, nonché la valutazione delle possibili alternative implementative. Dopo una valutazione della documentazione, è possibile sostenere una prova orale in cui viene discusso il progetto stesso.
Strada le Grazie 15
37134 Verona
Partita IVA
01541040232
Codice Fiscale
93009870234
© 2021 | Università degli studi di Verona | Credits