en
Politecnico di Torino
Anno Accademico 2016/17
01QYDOV, 01QYDBH, 01QYDNG, 01QYDOQ, 01QYDPE
Big data: architectures and data analytics
Corso di Laurea Magistrale in Ingegneria Informatica (Computer Engineering) - Torino
Corso di Laurea Magistrale in Ict For Smart Societies (Ict Per La Societa' Del Futuro) - Torino
Corso di Laurea Magistrale in Ingegneria Matematica - Torino
Espandi...
Docente Qualifica Settore Lez Es Lab Tut Anni incarico
Garza Paolo ORARIO RICEVIMENTO A2 IINF-05/A 40 5 15 15 7
SSD CFU Attivita' formative Ambiti disciplinari
ING-INF/05 6 D - A scelta dello studente A scelta dello studente
Esclusioni:
01NIF; 01NVP
Presentazione
Nell’era dei big data i tradizionali sistemi per la gestione e l’analisi dei dati non sono più adeguati. Quindi, al fine di gestire e sfruttare la grande mole di dati eterogenei a disposizione, sono necessari nuovi modelli per i dati, nuovi paradigmi di programmazione, nuovi sistemi informatici e nuove architetture di rete.
Il corso affronta le sfide poste dai big data, principalmente dal punto di vista dell’analisi dei dati. In particolare, il corso coprirà le soluzioni usate per acquisire, memorizzare, interrogare e analizzare grandi moli di dati al fine di estrarre conoscenza e informazione utile. Il corso non copre solo gli aspetti di modellazione e analisi dei dati ma anche nuovi paradigmi di programmazione (ad esempio Map Reduce e Spark RDDs), sistemi distribuiti (ad esempio Hadoop) e infrastrutture di rete per i Big data, e descrive come essi possano essere utilizzati per supportare i big dta scientists durante l’estrazione di informazione utile dai dati.
Risultati di apprendimento attesi
Il corso ha l’obiettivo di fornire:
• Conoscenza delle principali caratteristiche delle infrastrutture e dei sistemi distribuiti usati per acquisire e gestire grandi moli di dati (ad esempio Hadoop e Spark)
• Capacità di scrivere programmi distribuiti per analizzare grandi moli di dati tramite nuovi paradigmi di programmazione: Map Reduce e Spark Resilient Distributed Dataset
• Conoscenza delle basi di dati non relazionali (ad esempio HBase) e delle relative metodologie di progettazione
Prerequisiti / Conoscenze pregresse
Competenze di base di programmazione (linguaggio Java) e conoscenza dei concetti fondamenti delle basi di dati (modello relazionale e linguaggio SQL).
Programma
Lezioni in aula (45 ore)
• Introduzione: caratteristiche dei big data, problemi e opportunità (3 ore).
• Il sistema Hadoop e il suo ecosistema: infrastruttura e componenti base (3 ore).
• Programmazione secondo il paradigma Map Reduce (13.5 ore).
• Spark: l’archietttura di Spark e la programmazione basata sui Resilient Distributed Dataset (15 ore).
• Librerie di data mining e machine learning per big data: MLlib (3 ore)
• Basi di dati NoSQL: modelli dei dati non relazionali, progettazione di basi di dati non relazionali (ad esempio HBase), linguaggi di interrogazione (7.5 ore).

Laboratori (15 ore)
• Sviluppo di applicazioni tramite l’uso di Hadoop e Spark (15 ore).
Organizzazione dell'insegnamento
Il corso comprende delle esercitazioni in laboratorio relative agli argomenti principali del corso (Map Reduce, Spark, MLlib e HBase) (15 ore). L'attività di laboratorio permette di sperimentare l'uso dei prodotti open-source più diffusi.
Testi richiesti o raccomandati: letture, dispense, altro materiale didattico
Testi di riferimento:
• Tom White. Hadoop, The Definitive Guide. (Third edition). O’Reilly, Yahoo Press, 2012.
• Holden Karau, Andy Konwinski, Patrick Wendell, Matei Zaharia. Learning Spark: Lightning-Fast Big Data Analytics. O’Reilly, 2015.
• Sandy Ryza, Uri Laserson, Sean Owen, Josh Wills. Advanced Analytics with Spark. O’Reilly, 2014.

Sono disponibili copie dei lucidi utilizzati nelle lezioni, esempi di scritti di esame ed esercizi, e i manuali per le esercitazioni di laboratorio. Tutto il materiale didattico è scaricabile da un sito web o attraverso il portale.
Criteri, regole e procedure per l'esame
L'esame è costituito da una prova scritta. Lo scritto comprende esercizi di programmazione (programmazione basata su Map Reduce e RDD) e alcune domande relative ai principali argomenti trattati durante il corso (caratteristiche tecnologiche di Hadoop e Spark, basi di dati non relazionali e modelli dei dati per basi di dati non relazionali, infrastrutture di rete nell’ambito delle applicazioni per Big data).
Orario delle lezioni
Statistiche superamento esami

Programma definitivo per l'A.A.2016/17
Indietro