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