BASI DI DATI

Giuseppe FENZA BASI DI DATI

0212800011
DIPARTIMENTO DI SCIENZE ECONOMICHE E STATISTICHE
CORSO DI LAUREA
STATISTICA PER I BIG DATA
2024/2025

OBBLIGATORIO
ANNO CORSO 2
ANNO ORDINAMENTO 2018
SECONDO SEMESTRE
CFUOREATTIVITÀ
1060LEZIONE
AppelloData
FENZA10/12/2024 - 09:30
FENZA10/12/2024 - 09:30
Obiettivi
IL CORSO HA L’OBIETTIVO DI INTRODURRE I CONCETTI FONDAMENTALI, LE TECNOLOGIE E LE ARCHITETTURE DI RIFERIMENTO, NONCHÉ I REQUISITI, PER LA PROGETTAZIONE E LA REALIZZAZIONE DI SISTEMI INFORMATIVI ORIENTATI AI BIG DATA.
LA CONOSCENZA E LA CAPACITÀ DI COMPRENSIONE SI SVILUPPERANNO PRINCIPALMENTE MEDIANTE LO STUDIO DI ALCUNI DEI FRAMEWORK TECNOLOGICI PIÙ RILEVANTI NEL CONTESTO DEI BIG DATA, QUALI: HADOOP, SPARK, SPARK STREAMING, KAFKA, STORM, ETC. INOLTRE, SI STUDIERANNO TECNOLOGIE DI MEMORIZZAZIONE BASATE SU NOSQL (MONGODB, NEO4J, ETC.), FORMATI DI FILE PER BIG DATA (AVRO, PARQUET, ETC.), E SARANNO FORNITI CENNI INTRODUTTIVI ALLA VISUALIZZAZIONE DATI MEDIANTE STACK TECNOLOGICI, QUALI: APACHE SOLR+BANANA, ELASTICSEARCH+KIBANA, ETC.
IN PARTICOLARE, TALI FRAMEWORK SARANNO SPERIMENTATI NELL’AMBITO DI ATTIVITÀ PROGETTUALI PER IMPLEMENTARE IN MODO SCALABILE LE FASI DI: ACQUISIZIONE, MEMORIZZAZIONE ED ELABORAZIONE DISTRIBUITA, SIA IN MODALITÀ BATCH CHE STREAM, PER IL CALCOLO DI ANALITICHE DEDUCIBILI DA RISORSE NON STRUTTURATE, O SEMI-STRUTTURATE.
ALLA FINE DEL CORSO, LO STUDENTE SARÀ IN GRADO DI SELEZIONARE ED UTILIZZARE I FRAMEWORK PIÙ APPROPRIATI PER REALIZZARE UN INFORMATION SYSTEM ORIENTATO AI BIG DATA. LO STUDENTE SARÀ INCORAGGIATO A SVOLGERE LAVORO DI GRUPPO IN CUI SARANNO APPLICATE LE CONOSCENZE ACQUISITE PER L’IMPLEMENTAZIONE DI UN PROGETTO CHE ESIBISCA FUNZIONALITÀ DI BIG DATA ANALYTICS IN UN AMBITO A SCELTA TRA: OPEN SOURCE INTELLIGENCE, MISINFORMATION E FAKE NEWS, SMART ENVIRONMENT, ETC. IN QUESTO MODO SI ESERCITERÀ LA CAPACITÀ DI SELEZIONARE E ADOTTARE SCELTE TECNOLOGICHE IN DIPENDENZA DI ESIGENZE ETEROGENEE DERIVATE DAL CONTESTO DI PROGETTO.
Prerequisiti
È AUSPICABILE CHE GLI STUDENTI CONOSCANO: I CONCETTI RELATIVI AGLI ALGORITMI E ALLE STRUTTURE DATI FONDAMENTALI; UNO DEI LINGUAGGI DI PROGRAMMAZIONE TRA JAVA, PYTHON, SCALA PER SCRIVERE PROGRAMMI ATTI A RISOLVERE SEMPLICI PROBLEMI; I FONDAMENTI DELLE BASI DI DATI E DEL LINGUAGGIO SQL.
Contenuti
DOPO UNA BREVE INTRODUZIONE AI PRINCIPALI OBIETTIVI FORMATIVI DEL CORSO, GLI STUDENTI SARANNO INTRODOTTI AL MONDO DEI BIGDATA.
SIN DAI MOMENTI INIZIALI DEL CORSO GLI STUDENTI SARANNO INCORAGGIATI A LAVORARE IN GRUPPO ALLA DEFINIZIONE DI UN PROGETTO CHE REALIZZERANNO APPLICANDO LE CONOSCENZE ACQUISITE SEGUENDO UN APPROCCIO STEP-BY-STEP.
PERTANTO, IL CORSO SARÀ ARTICOLATO NELLE SEGUENTI PARTI PRINCIPALI.

(4 ORE) INTRODUZIONE AI BIGDATA ED ALLE ARCHITETTURE BIGDATA ENABLED
PANORAMICA SUI BIGDATA
REQUISITI BIGDATA INFORMATION SYSTEM
ARCHITETTURA LAMBDA E KAPPA

(4 ORE DI CUI 1 DI LABORATORIO) ACQUISIZIONE
FORMATI DI SCAMBIO E SERIALIZZAZIONE DATI: CSV, JSON, AVRO, PARQUET, ETC.
REST E STREAM API PER L’ACCESSO A SORGENTI DATI, QUALI: TWITTER, DROPBOX, ETC.

(10 ORE DI CUI 7 DI LABORATORIO) ELABORAZIONE ED ANALISI DISTRIBUITA DEI BIG DATA
HADOOP E TECNOLOGIE AD ESSO RELATE.
SPARK, E ALTRI ENGINE DI ELABORAZIONE DISTRIBUITA.
ESERCITAZIONI CON SPARK DATAFRAME
ESERCITAZIONI CON SPARK MACHINE LEARNING

(10 ORE DI CUI 7 DI LABORATORIO) STORAGE
NOSQL DB, QUALI KEY-VALUE STORE, DOCUMENT-ORIENTED DATABASE, COLUMN-ORIENTED E GRAPH DB.
ESERCITAZIONI CON MONGODB
ESERCITAZIONI CON NEO4J

(10 ORE DI CUI 4 DI LABORATORIO) DISTRIBUTED STREAM PROCESSING
INTRODUZIONE ALL’ELABORAZIONE DISTRIBUITA DI STREAM DI DATI.
APACHE STORM
ESERCITAZIONI CON SPARK STREAMING
ESERCITAZIONI CON KAFKA STREAMING

(4 ORE DI CUI 2 DI LABORATORIO) BIG DATA ANALYTICS
INTRODUZIONE ALLA REALIZZAZIONE DI DASHBOARD PER LA VISUALIZZAZIONE DI ANALYTICS MEDIANTE APPLICAZIONI WEB, INCLUDENDO D3.JS E GLI STACK TECNOLOGICI PIÙ UTILIZZATI, QUALI: APACHE SOLR E BANANA, ELASTICSEARCH E KIBANA
ESERCITAZIONI CON APACHE SOLR E BANANA
Metodi Didattici
IL CORSO SI PROPONE DI SPRONARE GLI STUDENTI AL PROCESSO DI FORMAZIONE PERMANENTE, CHE COMPORTA L’AGGIORNAMENTO CONTINUO (PER TUTTA LA VITA) DELLE CONOSCENZE E DELLE COMPETENZE, CERCANDO DI STIMOLARE LO SPIRITO CRITICO IN MERITO ALLE NUOVE TECNOLOGIE EMERGENTI NELL’AMBITO DI RIFERIMENTO.
AL FINE DI ABITUARLI ALL'AUTO-APPRENDIMENTO, GLI STUDENTI SARANNO INVITATI AD APPROFONDIRE GLI ARGOMENTI DEL CORSO PROPONENDO LORO L’ACCESSO A RISORSE ONLINE DI PARTICOLARE INTERESSE.
DURANTE IL CORSO IL DOCENTE FARÀ UN AMPIO USO DI ESEMPI, ESERCITAZIONI GUIDATE.
DA UN PUNTO DI VISTA STRUTTURALE, LE LEZIONI CONSISTERANNO IN:
(21 ORE) LEZIONI FRONTALI.
(21 ORE) LABORATORIO.

LA FREQUENZA ALLE LEZIONI NON È OBBLIGATORIA MA È FORTEMENTE CONSIGLIATA.
Verifica dell'apprendimento
IL RAGGIUNGIMENTO DEGLI OBIETTIVI DELL’INSEGNAMENTO È CERTIFICATO MEDIANTE IL SUPERAMENTO DI UN ESAME VALUTATO IN TRENTESIMI, CHE INCLUDE LA CONSEGNA DI UN PROGETTO, UNA PROVA SCRITTA E UNA PROVA ORALE, CIASCUNA VALUTATA IN TRENTESIMI.

PROGETTO: IL PROGETTO, CHE PUÒ ESSERE SVOLTO INDIVIDUALMENTE O IN GRUPPO, HA L’OBIETTIVO DI VERIFICARE LA CAPACITÀ DELLO STUDENTE DI PROGETTARE UN DATABASE PER ORGANIZZARE LE INFORMAZIONI NECESSARIE ALLA REALIZZAZIONE DI UN PROGRAMMA CHE UTILIZZA SIA UN DBMS RELAZIONALE CHE UN NOSQL DOCUMENTALE PER LA GESTIONE DEI DATI. NEL CASO DI UN PROGETTO DI GRUPPO, LA DOCUMENTAZIONE DEVE SPECIFICARE IL RUOLO E IL CONTRIBUTO DI CIASCUN MEMBRO, ASSICURANDO CHE OGNI MEMBRO ABBIA PARTECIPATO EQUAMENTE A TUTTE LE FASI: MODELLAZIONE, PROGETTAZIONE FISICA E IMPLEMENTAZIONE DI QUERY SIA TRANSAZIONALI CHE ANALITICHE VERSO IL DATABASE RELAZIONALE E IL NOSQL DOCUMENTALE. LA VALUTAZIONE DEL PROGETTO SI BASA SULLA VALIDITÀ TECNICA E SULL’USO APPROPRIATO DEI CONCETTI E DEGLI STRUMENTI STUDIATI DURANTE IL CORSO.

PROVA SCRITTA: LA PROVA SCRITTA VALUTA LA CAPACITÀ DI MODELLARE E INTERROGARE DATABASE RELAZIONALI E NOSQL. ESSA CONSISTE IN TRE ESERCIZI DA SVOLGERE IN 90 MINUTI:
REALIZZAZIONE DI UN DIAGRAMMA EER IN CONFORMITÀ ALLA DESCRIZIONE TESTUALE FORNITA (10 PUNTI).
ESERCIZI IN SQL SU UN MODELLO RELAZIONALE ASSEGNATO (16 PUNTI).
ESERCIZI SU DATABASE NOSQL DOCUMENTALI (4 PUNTI).

PER ACCEDERE ALLA PROVA ORALE, LO STUDENTE DEVE AVER CONSEGNATO IL PROGETTO AL DOCENTE E SUPERATO LA PROVA SCRITTA CON UN MINIMO DI 18/30.

PROVA ORALE: LA PROVA ORALE VALUTA LA CONOSCENZA DELLO STUDENTE SUI CONCETTI INTRODOTTI DURANTE IL CORSO. IL MINIMO PUNTEGGIO DI 18/30 È ATTRIBUITO A CHI DIMOSTRA INCERTEZZE NELL’APPLICAZIONE DEI CONCETTI STUDIATI, UNA LIMITATA CONOSCENZA DEGLI STRUMENTI PRINCIPALI E SCARSE CAPACITÀ ESPOSITIVE. IL MASSIMO PUNTEGGIO DI 30/30 È ASSEGNATO A CHI MOSTRA UNA CONOSCENZA COMPLETA E CAPACITÀ OPERATIVA NELLA PROVA SCRITTA E NEL PROGETTO SVOLTO.

IL VOTO FINALE, ESPRESSO IN TRENTESIMI CON EVENTUALE LODE, SI OTTIENE COME MEDIA DELLE DUE PROVE. LA LODE È ASSEGNATA A CHI DIMOSTRA UNA SIGNIFICATIVA PADRONANZA DEI CONTENUTI TEORICI E OPERATIVI, E PRESENTA GLI ARGOMENTI CON NOTEVOLE PROPRIETÀ DI LINGUAGGIO E CAPACITÀ DI ELABORAZIONE AUTONOMA ANCHE IN CONTESTI DIVERSI DA QUELLI PROPOSTI DAL DOCENTE.
Testi
MARZ, N., & WARREN, J. (2015). BIG DATA: PRINCIPLES AND BEST PRACTICES OF SCALABLE REAL-TIME DATA SYSTEMS. NEW YORK; MANNING PUBLICATIONS CO.

LIBRI SUGGERITI:

BAHGA, ARSHDEEP, AND VIJAY MADISETTI. BIG DATA SCIENCE & ANALYTICS: A HANDS-ON APPROACH. VPT, 2016.
Altre Informazioni
SARANNO FORNITI LINK A MATERIALE DISPONIBILE ONLINE E MATERIALE DIDATTICO USATO A LEZIONE.
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2024-11-18]