Big Data - Concetti, Architetture, Prodotti (24!02!2016)

download Big Data - Concetti, Architetture, Prodotti (24!02!2016)

of 60

Transcript of Big Data - Concetti, Architetture, Prodotti (24!02!2016)

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    1/60

    Big Data:

    Concetti Generali, Architetture NoSQL,Prodotti Open Source.

    Seminario tecnico gratuito 24 febbraio 2016

    Information and Communication Technology Internal Use Only1

    First TimeBig Data

    Second Time

    NoSQLThird Time

    Products

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    2/60

    Big Data

    2 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    3/60

    Big Data

    I Big Data costituiscono un nuovo paradigma per larealizzazione di database.

    COME SI COSTRUISCE

    UN SISTEMA BIG DATA?

    BIG DATA = INGEGNERIA

    3 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    4/60

    Big Data

    I Big Data non nascono da speculazioni teoriche,ma da reali esigenze pratiche.

    Come si vedr,Doug Cuttingper supportare il suo lavoro suNutch, un motore di ricerca web open source, fupraticamente costretto ad implementareunapplicazionediMapReduceed unFile Systemdistribuito (HDFS), che unitiinsieme formarono il sistema Hadoop.

    BIG DATA = TECNOLOGIA

    4 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    5/60

    Big Data

    CHE COSA SI CERCA DI OTTENERE CON IL NUOVO PARADIGMA

    Localit dei dati(evitando i tempi di attesa e di trasferimento).

    Assenza di lock e quindi il massimo parallelismo possibile.

    Accesso sequenziale ai dati, con velocit prossime al transfer-rate(tempo di trasferimento) massimo consentito dall'hardware ed indipendente dalseek-time (tempo di ricerca).

    Assenza di uno schema rigido che consentemaggiore flessibilite riduceil rischio diperditadidati(schema-on-read).

    Alto grado di scalabilit e fault-tolerance.

    5 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    6/60

    Big Data

    Paradigma delle 3Vconiato daDoug Laney nel 2001 e

    riutilizzato da Russom nel 2011.

    Volume

    Velocity

    Variety

    Le maggiori sfide per la

    gestione distribuita dei dati.

    Si possono trovare altre V odaltre lettere, come le 3W

    presenti in figura.

    6

    Paradigma

    Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    7/60

    Big Data

    La dimensione fa la differenza !

    Se si chiede ad un astrofisico quanto grande un chilometro, ci risponder che sitratta di una misura molto piccola.

    (1 anno luce1015 m).

    Se si chiede ad un fisico nucleare quanto piccolo un millimetro, ci risponder che sitratta di una misura molto grande.

    (1 fermi10-15 m).

    La scienza ci insegna a definire una scala diriferimento, ununit di misura, per avere unavalutazione coerente nello specifico contestodinteresse.

    7 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    8/60

    Big Data

    Con i Big Data la mole dei dati dell'ordine degli exabyte, ovvero milionidi terabyte(un terabyte un milione di megabyte, che a sua volta un milionedi byte).E,per questo, necessaria una potenza di calcolo parallelonotevole.

    Lesperienzainsegna cha gia livello di petabytes opportuno prendere inconsiderazione strutture di tipo Big Data.

    8 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    9/60

    Volume

    Gestire grandi volumi di dati in rapida crescita, risultata una sfida per moltidecenni. In passato, questa sfida stata mitigata da processori sempre piveloci, la cui produzione ha rispettato la Legge di Moore.

    Oggi non pi cos:il volume di dati cresce pi velocemente delle risorse dicalcolo. Le velocit di clock delle CPU sono praticamente in fase di stallo,mentre i processori sono in forte espansione, dotati di un numero semprecrescente di core. La prima dimensione dei Big Data il volume.

    Legge di Moore: formulata negli anni 70, affermava che la potenza

    computazionale sarebbe raddoppiata nel tempo una volta ogni due anni. Lostesso Gordon Moore ha successivamente dichiarato che questo fenomeno sisarebbe fermato, tendendo asintoticamente ad un valore massimo.

    9 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    10/60

    Volume

    Dal 1450 al 1500 furono stampati in Europa circa 8 milioni di libri, unnumero superiore a quelli prodotti dagli amanuensi, in tutti gli anni precedenti.Il patrimonio della conoscenza (rappresentato dai libri) impiegava, in quelperiodo, circa 50 anniper raddoppiare.

    Oggi sono sufficienti solo3 anni, per duplicare la quantit di datidisponibili su Internet e questo numero destinato a diminuire.

    10 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    11/60

    Velocity

    La seconda dimensione, con cui si devono fare i conti, la velocit .Pi grande il set di dati da elaborare, pi tempo ci vorr per analizzarlo.Tuttavia, non solo in questo senso,puramente computazionale, che di solitosintendeper velocit, nel contesto dei Big Data.

    La velocit legata allacapacit dei dati di fluireverso centri di elaborazione,nelminor tempo possibile, offrendo cos la possibilit di effettuare analisiin tempi brevi ed ottenere informazioni sempre aggiornate.

    Ci possono essere situazioni in cui si richiede un risultato immediato. Ad

    esempio, se si sospetta che durante una transazione con carta di credito ci siauna possibile frode, dovrebbe essere possibilesegnalare il pericolo primache la transazione sia completata, per impedire cheloperazioneavvenga.

    11 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    12/60

    Velocity

    La necessit di comprimere i tempi di utilizzo deidati, dettata dal fatto che le informazioniinvecchiano molto pi velocemente che inpassato, diventando presto obsolete.

    Un settore dove questo aspetto molto sentito, laMeteorologia. Ci sono milioni di sensori,rilevatori e telecamere che raccolgono informazioniin tutto il mondo, per avere un quadro il pipossibile veritiero delle condizioni climatiche.Questi dati, in poche ore, possono diventarecompletamente obsoleti.

    Argomenti Correlati:

    Sistemi Dinamici Logica Fuzzy

    12 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    13/60

    Variety

    Quando gli esseri umani scambiano informazioni, lo fanno esprimendo unafiorita variet di espressioni linguistiche. La ricchezza e le sfumature dellinguaggio naturale, sono in grado di fornire preziosi significati, spessoindispensabili per la conoscenza. La terza dimensione, con cui ci siconfronta, la variet di formato delle informazioni.

    Le macchine, che utilizzano algoritmi, si aspettano di solito dati omogeneie non riescono a capire tali sfumature. Di conseguenza, le informazioni devonoessere categorizzate e strutturate: il primo passodellAnalisi dei Dati.

    Si consideri, adesempio, un paziente che ha piprocedure medichein un

    ospedale. Si potrebbe creare un record per ogni procedura, un record per ilsoggiorno clinico, un record per le interazioni dellospedale con il paziente ecos via.Eintuitivo, quindi, pensare astrutture tabellariin relazione tra diloro, per contenere tutte le informazioni.

    13 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    14/60

    Variety

    Nel caso di Big Data la variet, ovvero la mancanza di omogeneit nelformato dei dati, una costante o come si preferisce dire:uninvariante.

    E prassi comune classificare le diverse tipologie di sorgenti informative, che

    confluiscono nei Big Data, in 5 distinte categorie:

    1. Web & Social Media data

    2. Machine-to-Machine data

    3. Big Transaction data

    4. Biometric data

    5. Human-Generated data

    14 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    15/60

    Plus

    15 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    16/60

    Data Science

    NUOVE PROSPETTIVE

    L'obiettivo della Data Science l'estrazioned'informazioni utili da archivi disponibili.Essa inizia con laraccoltadidati esterniallorganizzazione,oppure dati provenientidai processi di business interni.

    Successivamente arriva laraffinatezza: ilprocesso che riduce i dati a informazioniutili che rispondono, cio, a domandespecifiche. Tipicamente, le domandedefiniscono l'approccio da usare perl'estrazione delle informazioni.

    16 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    17/60

    Data Science

    NUOVE PROSPETTIVE

    La Data Science sostiene e incoraggia il continuo passaggio concettuale traragionamento deduttivo (ipotesi-based) ed induttivo (pattern-based). Sitratta di un cambiamento fondamentale, che completa gli approcci analiticitradizionali, sicuramente meno dinamici.

    LAnalisi Induttiva dei dati fornisce un mezzo efficace per formare operfezionare ipotesi e scoprire nuovi percorsi di conoscenza. La successivainterazione con ilRagionamento Deduttivo, rafforza e consolida i risultati,definendo in modo chiarolintepretazionedefinitiva.

    Gli strumenti statistico-matematici e tecnico-informatici fungono damicroscopio ingranditore per la realt, che si cela nella miriadedinformazioniche si accumulano ogni giorno.

    17 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    18/60

    Data Scientist

    NUOVE PROFESSIONI

    Cosa fa un Data Scientist?

    Un Data Scientist analizza dati per fornire al management leinformazioni utiliper assumere decisioni e disegnare strategie. Per lunghianni si parlato dell'importanza dei dati, ora si sottolinea l'esigenza disaperne fare buon uso.

    Perch c' bisogno di Data Scientist?

    La risposta in due sostantivi: produttivit ecambiamento. Cambiano imodelli di business delle aziende, cos come cambiano le loro politicheeconomiche ed i mercati. Cambiano gli strumenti tecnici e metodologici. Diconseguenza vige la necessit di migliorare produttivit e profitti.

    18 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    19/60

    Data Scientist

    NUOVE PROFESSIONI

    Lobiettivo sempre e comunque uno solo:avere a disposizione informazioni

    migliori per prenderedecisioni migliori.

    Memorizzare poi questi dati, che arrivano ingran quantit ed in formati eterogenei, instrutture di database che favoriscanoricerche veloci, il passo successivo.

    19 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    20/60

    NoSQL

    20 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    21/60

    NoSQL

    NoSQL un movimentoche negli ultimi anni si

    molto affermato,producendo risultatisoddisfacenti, con la

    creazione di progetti ediniziative utilizzate

    anche su larga scala.

    Tale movimento vuole

    rompere la storica lineadei database relazionalisinora adottati.

    21 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    22/60

    NoSQL

    Si cercato e si cercaancora di definire nuove

    linee guida, perlimplementazione di

    database, che nonutilizzano il linguaggio

    dinterrogazione SQL enon siano strettamente

    legati ad unadefinizione rigida

    dello schema dati.

    Il tentativo staproducendo risultati

    concreti.

    22 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    23/60

    NoSQL

    Un NoSQL data model pu essere implementato seguendo differentitecniche. Si tratta sempre di un paradigma schemaless, che semplificalorganizzazione del modello, rinunciando alle relazioni e costruendostrutture variabiliin termini di tipo e numero di campi (colonne).

    Wide Column Store o Famiglie di Colonne (come per Cassandra eHBase): le informazioni sono memorizzate in colonne, con coppiechiave/valore. Tipicamente sono usati nellambito della memorizzazionedistribuita dei dati.

    Document Store(come perMongoDB, OrientDB): le informazioni sonoorganizzate in Documenti e laccesso ai dati avviene attraverso API cheinterrogano veri e propri dizionari. Sono molto usati nello sviluppo di webapplication.

    23 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    24/60

    NoSQL

    Partendo dalla domanda:

    Perch avere altri tipi di DBMS se esistono quelli relazionali?

    Che cosa si legge sullargomento?

    NoSQL abbraccia quasi totalmente la filosofia open-source.

    NoSQL pi semplice da usare e non occorre uno specialista diprogettazione come per gli RDBMS. (NON EPROPRIO COSI ...).

    I dati sono altamente portabilisu sistemi differenti.

    Non si definisce uno schema rigido (schemaless) e non occorretipizzare i campi, per cui non esistono limiti o restrizioni ai datimemorizzati nel database NoSQL.

    24 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    25/60

    NoSQL

    Permette maggiori velocit di esecuzione, in interrogazioni su grossequantit di dati eterogenei e la possibilit di distribuzione su piserver (replica dei dati), con meccanismi totalmente trasparentiallutilizzatore.

    I DBMS NoSQL si focalizzano su una scalabilit orizzontale e non

    verticale come quelli relazionali.

    Dallaltrolato, il paradigma NoSQL non garantisce i requisitiACID su cui sibasano i sistemi relazionali.

    La parola ACID deriva dall'acronimo Atomicity, Consistency, Isolation,Durability (Atomicit, Consistenza, Isolamento e Durabilit) ed indica lepropriet che devono avere le transazionielettroniche.

    25 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    26/60

    NoSQL

    Atomicit. La transazione indivisibile nella sua esecuzione e la suaelaborazione deve essere o totale o nulla: non sono ammissibili esecuzioniparziali.

    Consistenza. Quando inizia una transazione, il database si trova in uno

    stato consistente e quando la transazione termina, il database deverimanere in uno stato altrettanto consistente.

    Isolamento. Ogni transazione eseguita in modo isolato edindipendentedalle altre: l'eventuale fallimento di una transazione non deve interferire con lealtre in esecuzione.

    Durabilit. Per una transazione che abbia richiesto una commit work, icambiamenti apportati al database non dovranno essere persi.

    26 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    27/60

    NoSQL

    I pi comuni e diffusi RDBMS, istallati su singola macchina, supportanopiuttosto bene le transazioni ACID.

    Ma dov il problema, allora?

    Nelleradel Web, le applicazioni devono lavorare su bilioni e trilioni di dati

    ogni giorno e la scalabilit un concetto che, in tale ambito, ricopre un ruolofondamentale.

    27 Information and Communication Technology Internal Use Only

    Scalabilit Verticale (Scale Up):possibilit dintervenire su di un singolosistema modificandoloallinternoin modo

    specifico.Scalabilit Orizzontale (Scale Out):possibilit dintervenire sulla propriastruttura aggiungendo o eliminandoelementi modulari.

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    28/60

    NoSQL

    UN TEOREMA IMPORTANTE

    Il teorema CAP, noto anche cometeorema di Brewer (Eric Brewer lo haformulato nel 2000), afferma che impossibile, per un sistema informaticodistribuito, fornire simultaneamente le tre seguenti garanzie:

    Consistency(Consistenza): tutti i nodi vedono gli stessi dati nello stesso

    momento.

    Availability(Disponibilit): ogni richiesta ricever una risposta.

    Partition Tolerance (Tolleranza a livello di Partizione): il sistema

    continua a funzionare nonostante arbitrarie perdite (fault) di messaggi.

    Secondo il teorema,un sistema distribuito in grado di soddisfare al massimodue di queste garanzie contemporaneamente, ma non tutte e tre.

    28 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    29/60

    NoSQL

    29 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    30/60

    NoSQL

    CONSISTENCY-AVAILABILITY (CA)

    Elevata coerenza/alta disponibilit. Si tratta del compromesso tipicamenteofferto negli RDBMS tradizionali. Le informazioni sono mantenutein modo coerente. sempre possibile leggere e/o scrivere ed essere sicuri che i

    nuovi dati siano propagati correttamente su tutti i nodi del cluster.

    Tuttavia, la totale coerenza pu incidere sulle performance (latenza) e sullascalabilit. Inoltre, si possono avere problemi qualora si venisse a formareuna partizione tra nodi distinti. In situazioni limite, possibile che la presenzadi partizioni generi un disallineamento dei dati, di non facile recupero.

    30 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    31/60

    NoSQL

    CONSISTENCY-PARTITION TOLERANCE (CP)

    Elevata coerenza/tolleranza nella partizione. Questo compromesso quellopreferito da soluzioni quali MongoDB, HBase, BigTable, Redis. I datisono mantenuti in maniera coerente su tutti i nodi del cluster e viene garantita

    la tolleranza a livello di singola partizione.

    Tuttavia, si possono avere problemi di disponibilit, perch il sistemadiventa non accessibile quando un nodo va in crash. Quasi tutte questesoluzioni prevedono una configurazione doveun nodo agisce comemasteregli altri come slave. Inoltre, i sistemi prevedono particolari procedure per

    "eleggere" un nuovo master, qualora quello in carica non sia piraggiungibile.

    31 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    32/60

    NoSQL

    AVAILABILITY-PARTITION TOLERANCE (AP)

    Continua disponibilit/tolleranza nella partizione. Questo compromesso stato scelto da soluzioni qualiApache Cassandra,CouchDB,DynamoDBe Riak. I nodi restano on-line anche nelle situazioni in cui non possono

    comunicare tra loro. , poi, compito del processo di risincronizzazionedei dati risolvere eventuali conflitti.

    Tuttavia, non possibile avere garanzia che tutti i nodi abbiano gli stessidati, con gli stessi valori, durante la perdita di connessione e la relativarisoluzione del fault. Le soluzioni AP garantiscono migliori prestazioniin

    termini di latenza e mostrano una scalabilit pi lineare.

    32 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    33/60

    NoSQL

    Conclusione: se si vogliono dati geograficamente distribuiti e prestazionisoddisfacenti, si costretti a sacrificare o laConsistencyo laAvailability, equindi gli RDBMS non vanno bene.

    La globalizzazione informatica e lesigenza di trattare Big Data, spinge a

    scalare orizzontalmente i dati usando macchine consumer, replicandole alivello geografico per ragioni di economicit, ,disponibilit, reattivit.

    Stanno quindi avanzando paradigmi di memorizzazione che non si basano pisul classico modelloACID, caratteristico degli RDBMS.

    Sta emergendo il nuovomodello BASE (BasicallyAvailable Soft-state serviceswithEventual-consistency) cherilassa il concetto di consistenza sicuraversouna CONSISTENZA EVENTUALE.

    33 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    34/60

    NoSQL

    34 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    35/60

    Products

    35 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    36/60

    Products

    OPEN SOURCE

    DYNAMODB (Amazon)

    REDIS (Redis Labs)

    CASSANDRA(Facebook)

    BIGTABLE (Google)COUCHDB (Apache)

    HADOOP (Apache)

    HBASE (Apache)

    ELASTICSEARCH (Apache)

    MONGODB (MongoDB Labs)ORIENTDB (OrientDB Labs)

    ...

    36 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    37/60

    Hadoop

    Apache Hadoop unframework open source perapplicazioni distribuite

    data-intensive, creatoinizialmente da Doug Cutting

    per supportare il suo lavoro

    su Nutch,un motore diricerca web open source.

    Cutting implementunapplicazione di

    MapReduce ed un File

    Systemdistribuito (HDFS),che uniti insieme formarono

    il sistema Hadoop.

    37 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    38/60

    Hadoop

    L'architettura interna di tipo master-slave.

    Il master, detto NameNode, ha il compito di conservare e gestire lastruttura del file-system e in generale tutto il sistema di metadati.

    Realizza le seguenti funzioni.Organizzazione dei blocchi di dati.

    Posizionamento logico/fisico dei file sui nodi dei cluster.

    Gestione delle repliche di ogni singolo nodo.

    Gestione delle regole di accesso.

    Glislave, dettiDataNode, hanno invece il solo compito dimemorizzare iblocchi di dati e consentirne l'accesso in lettura/scrittura alla massimavelocit possibile.

    38 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    39/60

    MapReduce

    HDFSoffre unamemorizzazione di file

    poco costosa e affidabile.Tale servizio, da solo,

    non sarebbe sufficiente acreare il livello

    dinteresse o digiustificare il tasso diadozione, che qualifica

    oggi Hadoop.

    La seconda componente

    principale di Hadoop ilsistema di elaborazioneparallela di dati,

    chiamato MapReduce.

    39 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    40/60

    MapReduce

    Il framework nascedallesigenza dimplementarecentinaia di computazioni algiorno, che processano grosse quantit di dati come documenti, log e pagineweb, per ottenere dati strutturati di vario tipo.

    Le primitivemapereducesono ispirate alle analoghe feature del linguaggiofunzionaleLISP. La funzione map viene applicata ad ogni record e genera unset dicoppie intermedie chiave-valore, che saranno passate alla funzionereduce. Questa verr applicata a tutte le coppie con la stessa chiave, in mododa processare adeguatamente i dati, raggruppati in precedenza dalla funzionemap.

    LISP: dallinglese balbettare, in italiano interpretato liberamente comeacronimo di Lista Infinita di Stupide Parentesi.

    40 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    41/60

    YARN

    Hadoop (che ha circa 10 anni) ha sostenuto, nella prima parte della suaesistenza (Hadoop 1), un unico paradigma di calcolo:MapReduce.Estato ilmodo con cui l'industria di ricerca web ha tenuto il passo con la crescenterichiesta di capacit di elaborazione, da parte del mercato. Il paradigmaMapReduce, si dimostrato particolarmente adatto nelle situazioni risolvibilicon una scalabilit orizzontale.

    Ma le soluzioni MapReduce non si sono dimostrate particolarmenteinnovativeeperformanti, perchnon sfruttano al meglio la memoria delle CPU.Egrazie aYarnche Hadoop continuer a svolgere un ruolo fondamentale, neltrattamento dei Big Data in tutti i settori.

    41 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    42/60

    YARN

    Con la nascita di reti pi veloci, core pi elevati, storage allo statosolido e soprattutto, memorie pi capienti, nuovi paradigmi di calcoloparallelo si stanno diffondendo su larga scala. YARN (Yet AnotherResource Negotiator) un framework che consente agli utenti di andareoltre MapReduce e di adottare questi paradigmi emergenti. Nasce cos laseconda vita di Hadoop (Hadoop 2).

    MapReducenon sar archiviato: una buona soluzione per molti problemiche non effettuano elaborazioni di algoritmi particolarmente sofisticati e scalaorizzontalmente ancora meglio di ogni altra alternativa attualmente sviluppata.Ma sar, in futuro, solo una componente di uno strumento molto pi esteso,

    YARN, che nasce dalle sue ceneri.

    42 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    43/60

    HBase

    HBase un database: ildatabase di Hadoop. E 'spesso descritto come un dbcolumn-family oriented,pensato per l'archiviazione ed il recupero dei daticonaccesso casuale (non supportato in HDFS). In Hbasenessun nodo unico: se una macchina va in crash, sufficiente sostituirla con unaltra od

    eliminarla dalla rete, senza perdita di dati.

    prevista, inoltre, lamemorizzazione dinformazioninon strutturate:HBase non si preoccupa del tipo e permette un modello di dati dinamico eflessibile, che non costringe a specificare una tipologia di memorizzazione.

    Non usa SQL enon forza relazioni all'interno dei dati. Non si preoccupadellintegritreferenziale e non usa join.

    43 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    44/60

    HBase

    HBase un database che memorizza i dati intabelle, contenute in file (HFile).Proprio come quelle di un database relazionale, le tabelle in HBase sonostrutturate in colonne. Ma HBase tratta le colonne diversamente da unRDBMS: esse sono organizzate in gruppi chiamatifamiglie. Una tabella deve

    avere, quindi, almeno una famiglia di colonne.

    44 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    45/60

    Ecosystem

    ECOSISTEMA DI HADOOP

    Ci sono diversi tools che costituiscono lecosistema di Hadoop. Di seguitoalcuni esempi.

    Hive

    Pig Impala

    Sqoop

    Flume

    Kafka

    Zookeeper

    Spark

    Mahout

    45 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    46/60

    Ecosystem

    SPARK

    Apache Spark un nuovo framework, per la computazione di grandi moli didati su cluster. Viene scherzosamente descritto come quello pi veloce di MapReduce, perch nel confronto con il suo predecessore haprestazioni 10-100

    volte maggiori. Spark implementato in Scala, un linguaggio diprogrammazione ad alto livello, che integra caratteristiche sia dei linguaggifunzionalisia dellaprogrammazione orientata agli oggetti.

    La compilazione di un programma in Scala producebytecode per la JVM.Spark fornisce leAPIper i linguaggi Scala, Java e Python, ed offre dei preziosi

    tool di sviluppo come Spark SQL, per creare delle query direttamente conSpark e MLlib, una libreria ricca di algoritmi e strumenti classici per ilmachine learning.

    46 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    47/60

    Ecosystem

    SPARK

    Il vantaggio principale dellutilizzo di Spark, la sua estrema velocitnelleseguire programmi di elaborazione dati. Il motivo di queste prestazionirisiedono in unamiglior gestione della memoria. Spark si integra, anche,molto bene con Hbase. Il suo schema di lavoro, che pu essere iterato pivolte, molto semplice.

    Load dei dati da disco locale verso i nodi worker del cluster. Esecuzione della funzione assegnata.

    Store dei dati su disco locale.

    Ad alto livello, unapplicazioneSpark formata da un driver program, checontiene la funzione main scritta dallutente e da una serie di paralleloperationdefinite nel programma, che saranno eseguite sui vari nodi workerdel cluster.

    47 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    48/60

    Ecosystem

    MAHOUT

    Mahout un libreria open source di Apache. Lalgoritmo che implementaricade sotto la definizione dilearning machine(apprendimento automatico)

    o collective intelligence, che pu significare molte cose ma, allo statoattuale, il suo uso corrente sinonimo di recommender engine ed operatoredi funzioni di clustering eclassification.

    Mathout una parolaHindiche si riferiscea colui che guida elefanti. Hainiziato la sua vita nel 2008 come sottoprogetto di Lucene, motore di

    ricerca open source, implementando operazioni di text mining e tecnichedestrazionedelle informazioni.

    48 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    49/60

    Ecosystem

    MAHOUT

    I Recommender Engine rappresentano tecniche che sono largamenteutilizzate al giorno doggi. Esempi possono essere trovati su Amazon che

    consiglia libri agli utenti,Netflixche consiglia DVD, siti di social network chepossono consigliare affinit tra persone. Facebookne utilizza una variante peridentificare persone che potrebbero essere connesse ad altre.

    Estato dimostrato, da organismi accreditati, che lutilizzodi queste tecnicheper scopi commerciali, porta ad un aumento dei ricaviche vadall8al10

    per cento.

    49 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    50/60

    ElasticSearch

    DEFINIZIONE

    Prima di parlare di ElasticSearch necessario introdurre Apache Lucene,unmotore di ricercafull-text ad alte prestazioni, interamente scritto inJava. Si tratta di una tecnologia adatta a qualsiasi applicazione che richiede la

    ricerca full-text, in particolare per architetturecross-platform. Lucene puindicizzare qualsiasi documento convertibile in formato testuale.

    Quando Lucene indicizza un documento, lo decompone in una serie ditermini. Quindi memorizza i termini in un file indice, dove ognuno associato ai documenti che lo contengono. Al momentodellesecuzionedi una

    query, questa viene elaborata attraverso lo stesso analizzatore che statoutilizzato per costruire l'indice, per cercare il termine desiderato.

    50 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    51/60

    ElasticSearch

    LUCENE

    Anche se Lucene uno strumento moltoefficace, per scomodo da usaredirettamente ed offre alcune funzionalit

    basate su singolo server.

    Elasticsearch dispone di API piintuitive e semplici rispetto a quelle diLucene. Inoltre, fornisce anche lapossibilit di creare uninfrastruttura

    scalabile attraverso diversi server.JSON il formato per i documenti,supportato dal prodotto.

    51 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    52/60

    ElasticSearch

    UTILIZZO

    Ci sono innumerevoli situazioni in cui Elasticsearch risulta molto utile.

    Ricerca allinternodi un gran numero didescrizioni prodotto, per

    la migliore corrispondenza nel caso di una frase specifica (ad esempiomacchinafotografica autofocus") e restituendo i risultati migliori.

    Ricerca di testo per le parole similiper scrittura o significato.

    Auto-completamento disearchbox basato su parole parzialmentetipizzate, sulla base di ricerche precedentemente eseguite, tenendo conto dierrori di ortografia.

    Elasticsearch utilizza con efficacia algoritmi di Logica Fuzzy.

    52 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    53/60

    MongoDB

    DOCUMENTI

    MongoDB (humongous= gigantesco, mostruoso) un NoSQL open-source scalabile ed altamenteperformante,scritto in C++ con interfaccia Javascript.

    Document oriented storage.I dati sono archiviatisotto forma di document in stile JSON (JavascriptObject Notation), con schemi dinamici.

    Full Index Support. Qualsiasi attributo pu essere

    indicizzato.

    Replication & High Availability. La replica deidati assicura fault tolerance ed alta scalabilit.

    53 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    54/60

    MongoDB

    SHARDING E REPLICHE

    Meccanismo di partizionamento perMongoDB. Ogni Shard ha le suerepliche. I nodi Master ricevono

    tutte le scritture e le inoltrano ainodi Slave, che sono in sola lettura.

    Se il nodo Master ha un problema(system crash, network error,

    mongodb server crash) i nodi Slavetengono unaelezione(automatica)per scegliere un nuovo Master.

    54 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    55/60

    MongoDB

    INDICI

    Geospatial Index

    Per supportare query efficienti di dati geospaziali, MongoDB fornisce dueindici speciali, oltre a quelli tradizionali:

    2d indexes, che utilizzano algoritmi digeometria pianaper la

    localizzazione bidimensionale dei dati sui diversi nodi;

    2sphere indexes, che utilizzano algoritmi digeometria sferica, per la

    localizzazione tridimensionale dei dati sui nodi.

    55 Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    56/60

    DEFINIZIONE

    OrientDB un prodotto particolarmente interessante, che riunisce in un unicodatabase molte funzionalit e caratteristiche poliedriche.

    Ha modalit multiple di storage: document, graph, object, key/value.Utilizza un funzionamento embedded, in memory, client/server.

    Fornisce propriet ACID di consistenza delle transazioni (unico NoSQL).

    Supporta nativamente JSON e REST.

    Escritto in Java.

    56

    OrientDB

    Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    57/60

    FORMATI

    La modalitDocument una delle pi importanti di OrientDB: su di essainfatti si basano sia la modalit Graph database che Object database.

    La definizione di documento molto generica: unentit che raggruppadiversi campi, di qualsiasi tipo: stringhe, date, numeri, dati binari, riferimentiad altri documenti. In questa definizione potrebbero ricadere le tradizionalitabelle di un database relazionale.

    C,per, una grossa differenza: un documento non ha necessariamente una

    struttura fissa, ma pu contenere un numero variabile di campi.

    57

    OrientDB

    Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    58/60

    ARCHITETTURA

    Questa estrema libert permette di utilizzare la struttura dati in molti modi, ed proprio ci che succede dietro le quinte di OrientDB.

    Nella modalit Object Database ogni oggetto viene salvato in un documento,e le sue propriet in altrettanti campi.

    Nella modalit Graph Database i nodi sono documenti che memorizzano neipropri campi i collegamenti verso gli altri nodi.

    Ci ha richiesto una complessa progettazione software, ottenuta conlutilizzodi personale altamente qualificato ed esperto.

    58

    OrientDB

    Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    59/60

    Focus

    59

    DatabaseSQL

    DataMartSQL

    DatabaseNoSQL

    Information and Communication Technology Internal Use Only

  • 7/24/2019 Big Data - Concetti, Architetture, Prodotti (24!02!2016)

    60/60

    relatore

    Mauro iciani

    progettazione ed ottimizzazionedi sistemi software e basi di dati

    Training and Education

    Un giorno le macchine riusciranno a risolvere tutti i problemi,ma nessuna di esse potr mai porne uno.

    citazione attribuita ad Albert Einstein.

    best regards

    [email protected] riferimenti su linkedin

    f i d C i i h l l O l