Big Data
L’ecosistema Hadoop
Giovedì 21 aprile
Programma del corso
9.45-10.15 Smart Data. A cosa servono e perché cambiano il paradigma attuale
10.15-10.45: Hadoop, la piattaforma e la sua evoluzione
10.45 - 11.00: Coffee break
11.00 - 11.45: Hadoop, 5 esempi di applicazioni reali
11.45 - 12.00: Q&A
Relatore
Matteo Durighetto:
●
●
●
●
Big Data Architect & DBA ( Oracle, PostgreSQL, MySQL, Sqlserver, HBase,
Accumulo, … )
Cloudera Certified Hadoop Administration ( CCDH )
Cloudera Certified for Production System
Presidente del PostgreSQL Italian User Group, internal committee
Smart Data
●
●
●
●
L’evoluzione del dato
Le sfide attuali per amministratori e sviluppatori e manager
Dalla statistica alla real time analytics
Advanced Analytics
Smart Data
( cit. Ruggero Bacone )
Smart Data
●
L’evoluzione del dato:
○ tipologie di fonti
○ tipologie di formati
○ dimensione
○ dimensione/costo
Smart Data
●
L’evoluzione del dato:
Una volta
Ora
File csv
JSON / XML
ERP
Messaging protocol / Sensori
CRM
Social / New media
Mainframe / AS400
Cloud Service PaaS
3NF
Dinamico / Denormalizzato
Smart Data
●
L’evoluzione del dato:
Anno
Quantità di dato
2009
0,79Z
2010
1.2Z
2015
7,9Z
2020
35Z
N.B: 1Z = 1 milione di Petabyte
Smart Data
●
L’evoluzione del dato:
Smart Data
●
L’evoluzione del dato:
Smart Data
●
L’evoluzione del dato:
○ Un disco attuale varia da 4TB a 10TB e il costo varia attorno ai 200300$
○ In caso di rottura di un sistema la quantità di dato è notevolmente più
ampia che in passato ed anche il business coinvolto
○ Sono aumentate le dimensioni, ma non le velocità: un disco viaggia
attorno ai 100mb/s, ma con capacità notevoli, e impiega fino a
qualche minuto per leggere un device totalmente.
Smart Data
●
Le sfide:
○ Manager
○ IT Administrator
○ Developer
Smart Data
●
Le sfide:
○ Manager:
■ Come può il business sfruttare i dati ?
■ Come rendiamo agile la nostra infrastruttura?
■ Troppo lunghi i tempi di sviluppo!
■ Troppo lunghi i tempi di deploy dei sistemi !
■ Non efficienza delle soluzioni attuali o perché troppo lente o non
efficaci
Smart Data
●
Le sfide:
○ IT Administrator:
■ Dove mettiamo i dati ?
■ Forse si trova il posto.. ma come facciamo il backup dei dati
sempre più grandi ?
■ Come monitoriamo e analizziamo sempre più log ?
■ Come facciamo a far scalare il sistema se ho uno storage
centrale e layer non scale out ?
■ Ah mi servono 10 db, 20 macchine, 160GB di ram, 50TB di
storage .. mi affossa l’infrastruttura e va pure lento !
Smart Data
●
Le sfide:
○ Developer :
■ Come analizzo i dati ? Cambiano struttura..
■ Devo aspettare ore..
■ Devo cambiare una tabella/file/accesso .. attendo l’
amministratore..
■ Dove sono i dati ?!? Aspetto..
■ Devo rispettare le milestone/deadline..
Smart Data
●
Ci vuole una soluzione SMART !
○ Chi ha avuto questo problema? Google & Yahoo !
○ Come hanno risolto ?
■ Automazione
■ Distribuite filesystem
■ Data Locality
■ Distribute Resource Manager
■ Analisi avanzata del dato in streaming
○ Paper: Big Table / Spanner / F1 /etc ..
Smart Data
●
Dalla Statistica alla Real Time Analytics
○ Normalmente la BI/Analisi tradizionale si focalizza su una mole di
dati statica o con batch ben determinati di update e strutture dati
statiche. Perché? Perché state analizzando legami già conosciuti.
○ Ora abbiamo :
■ Strutture dati dinamiche
■ Moli di dati su cui non basta lo scale up
■ Domande diverse, le cui riposte portano a decisioni diverse
■ Tempi diversi
■ Tecniche non più top down, ma bottom up
Smart Data
●
Dalla Statistica alla Real Time Analytics
Smart Data
●
Dalla Statistica alla Real Time Analytics:
○ batch => streaming di dato su sistemi distribuiti
○ analisi batch => analisi in streaming
○ report/pdf/statici => report realtime
○ statistica tradizionale => Forecasting , Pattern Recognization, etc
Smart Data
●
Advanced Analytics - Dataming / Machine Learning
○ Usare il nostro Data Hub per addestrare una AI in modo da scoprire :
■ Associazioni: A & B
■ Sequenze: Dato A ⇒ Segue B
■ Classificazioni: il gruppo G1 è dominato dalle caratteristiche X1,
X2,X3 ..
■ Forecasting: A al 75% , B al 25%
■ Anomalie: è improbabile un evento A, anomalia
■ Clustering: A e B sono nel gruppo G1 , C è nel gruppo G2 etc..
Smart Data
Obiettivo: Estrarre “conoscenza” dai dati,
ad esempio scoprendo patterns, strutture, trends...
Smart Data
Machine
Learning
Databases
Data Mining
Data
Visualization
Statistics
Predictive Analysis
Utilizzo di tecniche di Data Mining e Machine Learning per analizzare dati
correnti e storici e fare previsioni su dati futuri o regressioni o
classificazioni
Descriptive Analysis
Utilizzo di tecniche di Data Mining e Machine Learning per riconoscere i
pattern o clusters
Supervised
Il dataset ha sempre un valore ben definito, ovvero un campione di
confronto
Unsupervised
Il dataset NON HA un valore ben definito, ovvero un campione di
confronto
Smart Data
Advanced Analytics comprende più steps:
1.
2.
3.
4.
5.
6.
Business Understanding
Data Understanding
Data Preparation
Modeling
Evaluation
Deployment
Little Break
Hadoop Architettura
●
Architettura Attuale:
○ HDFS
○ HBase & Accumulo
○ Flume & Sqoop
○ Kafka
○ Search
○ Hive & Pig & Impala
○ Hue
○ MR & Spark
○ Sentry
Hadoop Architettura
●
Architettura Futura:
○ Alluxion vs Ignite
○ Phoenix
○ Record Service
○ Kudu & Arrow
○ Oryx2
○ Caffè
Hadoop Architettura
●
HDFS
○ Filesystem basato sul modello di Google distribuito a blocchi di
64mb/128mb/etc..
○ Lavora in sequenziale
○ HA & Replication & Compression inline & Snapshot COW
○ Futuro => Erasure Code Inline ( Cpu Intel )
○ Scalabilità ampiamente dimostrata ( Yahoo .. )
Hadoop Architettura
●
HDFS
Hadoop Architettura
●
HDFS
Hadoop Architettura
●
HDFS extreme Scalability
Hadoop Architettura
●
HBASE
○ Hadoop Database Colonnare Dinamico
○ Il dato recente è sempre in Ram
○ Possibilità di accesso estremamente veloce via Row Key
○ Versioning della riga in maniera trasparente
○ Strong Consistency
○ Integrato in spark & map reduce & hive & impala
○ HA & Scalabilità lineare
○ Geo Replication
○ Possibilità di indicizzazione con Search
○ Coprocessor
Hadoop Architettura
●
HBASE
Hadoop Architettura
●
HBASE
Hadoop Architettura
●
Flume:
○ Agenti per raccogliere dati e scriverli su una destinazione
○ HA
○ Distribuiti
○ Nativamente integrabili con Kafka
Hadoop Architettura
●
Flume
Hadoop Architettura
●
Flume
Hadoop Architettura
●
Sqoop
○ Sistema per estrarre velocemente e in parallelo i dati da RDBMS o
SQL-Like
Hadoop Architettura
●
Kafka
○ Streaming distribuito in HA e Alta resilienza
Hadoop Architettura
●
Search
○ Indicizzazione Full Text Search
○ Distribuito
○ HA
○ Scalabile
○ indicizzabile anche HBase
Hadoop Architettura
●
Hive & Pig & Impala
○ Hive & Impala: Query
○ Pig: Scripting
○ Hive & Impala: il metadato è separato dal dato
○ Impala in C++ : solo HDFS
○ Hive in Java ( Map Reduce / Spark ): può caricare classi jar per
accedere a tipologie di strutture diverse es. Elastic Search o Solr
○ Pig può essere usato per elaborare il dato, mentre gli altri due per
interrogazioni
○ HA & Parallelizzazione & Partition Pruning
Hadoop Architettura
●
Hue
○ Interfaccia web per interfacciarsi col dato
Hadoop Architettura
●
Map Reduce
○ Stile di programmazione Goog like
Hadoop Architettura
●
Map Reduce
○ Stile di programmazione Goog like
Hadoop Architettura
●
Spark
○ Stile di programmazione in memory
Hadoop Architettura
●
Sentry & Kerberos
○ Centralizzazione della security
○ Integrazione con Active Directory
Hadoop Architettura
●
Future : Alluxion (ex Tachion) vs Apache Ignite
○ Filesystem in memory centric
○ Ignite può fare da cache trasparente per HDFS
○ Per tempi di risposta real time
Hadoop Architettura
●
Future : Phoenix
○ SQL-on-Hbase
○ Transazionale
○ Secondary Index : Immutable, Local (Write Heavy) e Global (ReadHeavy)
○ Locking di tipo ottimistico: no deadlock, no concurrency
Hadoop Architettura
●
Future : Phoenix
Hadoop Architettura
●
Future: Record Service
○ Column level security e Row level security basata sul ruolo dell’
utente
○ Transparent encryption basata sul ruolo dell’utente
○ Transparent Data masking basata sul ruolo dell’utente
○ Cell Encryption?
Hadoop Architettura
●
Future : Kudu & Arrow
○ Kudu : cluster store table ottimizzato per random access e analitica
○ Arrow : Struttura colonnare in memoria, sfrutta una struttura
gerarchica a offset
people = [
{
name: ‘mary’, age: 30,
places_lived: [
{city: ‘Akron’, state: ‘OH’},
{city: ‘Bath’, state: OH’}
]
},
{
name: ‘mark’, age: 33,
places_lived: [
{city: ‘Lodi’, state: ‘OH’},
{city: ‘Ada’, state: ‘OH’},
{city: ‘Akron’, state: ‘OH}
]
}
]
Hadoop Architettura
●
Future : Oryx 2
○ Motore di raccomandazioni
○ Lambda architecture
Hadoop Architettura
●
Future : Caffè
○ Deep Learning
○ GPU Cluster
Hadoop Architettura
●
Future : Caffè:
○ Deep Learning
○ GPU Cluster
Coffee Break
Hadoop 5 esempi di applicazioni reali
●
Finance: Anti frode
●
Retail & Marketing: Customer Intelligence
●
Energy & Utility: Saving Energy Prediction
●
Industry: San Disk Production Quality
●
Logistica: Operation Efficiency in DHL
Finance: Anti-frode
Overview:
The Problems:
●
Data Warehouse su DB2,
●
Costi molto elevati,
●
Replica di tutti i dati di produzione,
●
Eccessivo carico computazionale,
●
Investimento: $ 1 miliardo all’anno.
●
Necessità di riposte veloci e analisi
complesse, per la ricerca di frodi e fattori di
rischio finanziario.
Finance: Anti-frode
The Solution:
●
Hadoop:
○ Possibilità di immagazzinare più dati storici (300TB + 2TB al giorno),
○ Operazioni di aggregazione ETL sul cluster,
○ Data mining più dettagliato e veloce.
●
Risultati:
○ Joining dei dati da diverse fonti e report nel giro di ore (invece che giorni),
○ Risparmio del 10%-15% sui costi dell’ETL,
○ Risparmio di $30 milioni all’anno per la replica.
Retail & Marketing: Customer
Intelligence
The Project:
●
Obiettivo: offerte mirate al cliente, basate sulle sue preferenze,
●
Data mining sulle attività di milioni di utenti sul sito web dell’azienda.
Retail & Marketing: Customer
Intelligence
The Solution:
●
Hadoop & Impala:
○ Applicazione efficace di diverse e complicate regole di normalizzazione sui dati,
○ Costruzione di modelli statistici sulle preferenze dei clienti.
●
Risultati:
○ Identificazione di nuovi potenziali clienti a partire dai dati,
○ Offerte personalizzate,
○ Previsioni accurate su quanti clienti in media compreranno il prodotto offerto.
○ Vendite aumentate del 230% sui clienti che ricevono offerte personalizzate.
Energia: Saving Energy Prediction
Overview:
●
Raccolta dati da termostati, contatori, etc…
●
Database standard (MySQL)
The Challenges:
●
All’aumentare del numero di clienti, il
sistema non è facilmente scalabile,
●
Necessità di analizzare nel dettaglio i
consumi di energia dei clienti, con l’
obiettivo di ridurre i costi e guidare i clienti
verso il risparmio energetico.
Energia: Saving Energy Prediction
The Solution:
●
Hadoop & HBase:
○ Architettura altamente scalabile ed efficiente,
○ Importazione e analisi dei dati da diverse fonti in parallelo,
○ Web front ends e email automatiche che utilizzano i dati immagazzinati in HBase.
●
Risultati:
○ Clienti informati sul loro consumo energetico,
○ Large-scale real-time analyses.
Industry: San Disk production quality
The Project:
●
Creazione di un “data hub” per organizzare i dati, dal design all’assemblaggio dei prodotti,
●
Necessità di un sistema scalabile ed efficiente per scrivere, processare e pulire le
informazioni generate ad ogni stadio del processo manifatturiero.
Industry: San Disk production quality
The Solution:
●
Hadoop, Sentry & Spark:
○ End-to-end analytics sulle operazioni manufatturiere,
○ Machine Learning su vasti dataset.
●
Risultati:
○ Previsioni e riduzione di errori,
○ Analisi sulla qualità dei prodotti,
○ Real-time data encryption.
Logistica: Operation Efficiency in DHL
The Project:
●
Ottimizzazione del tempo di consegna, utilizzo di risorse, copertura…
●
Analisi della grande quantità di informazioni nella “rete” delle consegne.
Logistica: Operation Efficiency in DHL
The Solution:
●
Ottimizzazione del percorso in real time:
○ Percorso iniziale ottimizzato sui basato sulle destinazioni programmate,
○ Adattamento dinamico sulla consegna corrente e situazione del traffico.
●
Pianificazione anticipata e strategica della rete:
○ Anticipazione delle domande con Machine Learning,
○ Pianificazione nella distribuzione di risorse
○ Integrazione e correlazione real time di dati esterni con i dati interni della rete.
Q&A
Domande? Dubbi?
Grazie per l’attenzione!
Per saperne di più sui nostri corsi di formazione visita
www.miriade.it/training