Big Data: Tecnologie e Problematiche
Descrizione
I Big Data rappresentano la principale tendenza in campo informatico degli ultimi anni. Con Big Data si intendono dataset aventi dimensioni e caratteristiche tali da non essere facilmente trattati con sistemi tradizionali quali, ad esempio, i database relazionali.
Questo non vuol dire che gli strumenti di gestione dati normalmente presenti in azienda non siano in grado di trattare i Big Data ma che il loro utilizzo può essere poco produttivo in termini di tempi e costi di elaborazione.
A tal fine, gli strumenti tradizionali, possono essere affiancati (mai sostituiti) da nuovi prodotti quali file system distribuiti, database NoSQL e framework di elaborazione distribuita come map reduce. La scelta degli strumenti non può essere fatta in modo superficiale e deve essere basata sui requisiti di business dell’azienda.
Ma quali caratteristiche devono avere i dati per essere considerati “Big”? Quali vantaggi di business possono derivare dalla loro elaborazione? Quali sono le principali tecnologie per la loro memorizzazione, elaborazione e gestione?
Questo corso vuole fornire una panoramica sullo stato dell’arte delle tecnologie e dei processi per la gestione di Big Data.
Gli argomenti sono descritti tramite l’esposizione di casi di studio reali.
A chi si rivolge
- Capi progetto
- Analisti
- Progettisti
- Sviluppatori
- Chiunque sia interessato ad approfondire i concetti relativi ai Big Data
Prerequisiti
Conoscenze base sui database, sulle tecnologie internet e sulle applicazioni distribuite.
Argomenti trattati
Introduzione ai Big Data
- Cosa sono i Big Data
- Quanto sono grandi i Big Data?
- Le principali proprietà: volume, velocità, varietà, valore, veracità
- Classificazione dei Big Data
- Come individuare i Big Data
- Sorgenti di provenienza dei Big Data
- Quali opportunità per il business? Vantaggi e svantaggi nel loro utilizzo
- Come si posizionano i Big Data rispetto agli strumenti tradizionali (RDBMS, DWH, BI…)
- Il processo di gestione dei Big Data
Come memorizzare i Big Data
- Pattern architetturali
- Utilizzo di file system distribuiti (es. HDFS)
- Database NoSQL e loro classificazione
- Criteri per la scelta dello strumento di storage
- Il concetto di Data Lake: cos’è e come implementarlo
- Come trasferire i dati da e verso il Data Lake
- Memorizzare i dati in base alle esigenze del business
- Strumenti per il trasferimento dei dati
Come elaborare e analizzare i Big Data
- Elaborazione distribuita
- Map/Reduce
- Strumenti per l’implementazione del Map/Reduce (YARN, TEZ, PIG…)
- Integrazione con i linguaggi di programmazione tradizionali
- Real-time analytics e complex event processing
- Utilizzo di Spark, Python e R; concetti base di Data Mining
Come interrogare e come visualizzare i Big Data
- Utilizzo degli strumenti e dei linguaggi di interrogazione nativi
- Mapping su SQL (Hive, Drill, Impala…)
- Integrazione con RDBMS e con strumenti di Business Intelligence tradizionali
Big Data Governance
- Che cos’è la Data Governance
- Processo di governance
- Il repository dei metadati
- Ruoli e responsabilità
- Nuove figure professionali (es. Data Scientist)
Introduzione ad Hadoop
- Che cos’è Hadoop
- Principali strumenti forniti
- Principali pattern architetturali
- Principali distribuzioni a confronto (MapR, Cloudera, Hortonworks)
Principali NoSQL Database a confronto
- Architettura, caratteristiche e funzionalità di MongoDB, Cassandra, CouchDB e altri
Integrazione con i sistemi aziendali esistenti
- Architetture di integrazione
- Strumenti utilizzabili
Problematiche di sicurezza e privacy
- Come memorizzare i dati in modo sicuro
- Gestione multitenancy
- Politiche di accesso
Casi di studio ed esempi pratici