Documento HTML

annuncio pubblicitario
UNIVERSITA’ DEGLI STUDI DI PADOVA
FACOLTA’ DÌ INGEGNGERIA GESTIONALE
DIPARTIMENTO DÌ TECNICA E GESTIONE DEI SISTEMI INDUSTRIALI
STRUMENTI SOFTWARE PER
GESTIRE I BIG DATA
LAUREANDO: PEDASSOU YAO EDEM 622819
RELATORE: BONOLLO GIULIANO
ANNO ACCADEMICO 2011/2012
1
Indice
A - INTRODUZIONE ............................................................................................................................................ 3
B - Problemi e criticità: perché si parla del “big data ........................................................................................ 3
B-1.a. Dati di acquisizione e di recording ......................................................................................................... 5
B-1.c. L’integrazione, l’aggregazione e la rappresentazione dei dati ................................................................ 7
B-1.d. L’Elaborazione delle querry, modellazione e analisi di dati ................................................................... 7
B-1.e. L’interpretazione ..................................................................................................................................... 8
B-2. Le sfide all’analisi nei big data .................................................................................................................. 9
B-2.b. La Scala ................................................................................................................................................ 10
B-2.c. La Tempestività..................................................................................................................................... 11
B-2.d. La Privacy............................................................................................................................................... 12
B-2.e. La collaborazione umana...................................................................................................................... 13
C - Tecnologie per i big data ............................................................................................................................ 14
C-1. Origine ...................................................................................................................................................... 16
C-3. Che cos’è hadoop ? .................................................................................................................................. 18
C-3.1. Hadoop Distributed File System(HDFS) ................................................................................................ 18
C-3.2. MapReduce .......................................................................................................................................... 20
C-4 Perché Hadoop? ...................................................................................................................................... 22
C-5. Hadoop sostituisce i database e gli altri sistemi esistenti ? .................................................................... 23
C-6. Come i sistemi esistenti interagiscono con hadoop ? ............................................................................ 24
C-7. Come possono gli utenti all'interno di un'organizzazione interagire con Hadoop? ................................ 25
D - Le applicazioni ............................................................................................................................................ 26
D-1. Le applicazioni analitiche ........................................................................................................................ 26
D-1.a Le applicazioni basate su attribuizioni ................................................................................................... 26
D-1.b le applicazioni basate su suggerimenti ................................................................................................. 27
d-1.c APPLICAZIONI BASATE SU PREDIZIONE E PREVISIONE .......................................................................... 27
D-1.d APPLICAZIONI BASATE SU APPROFONDIMENTI .................................................................................... 28
D-1.e APPLICAZIONI BASATE SU BENCHMARK ............................................................................................... 29
D-2 Le Applicazioni settoriali .......................................................................................................................... 29
D2.a Nella finanza ........................................................................................................................................... 29
D-2.b SANITA’................................................................................................................................................. 30
D-2.c. Industria Manifatturiera........................................................................................................................ 31
D-2.d Media ..................................................................................................................................................... 31
D-2.e Materie prime e naturali ........................................................................................................................ 33
D-2.f Servizi ...................................................................................................................................................... 33
D-2.g Pubblica Amministrazione..................................................................................................................... 34
E – CONCLUSIONI............................................................................................................................................. 35
2
A - INTRODUZIONE
Nella definizione generalmente accettata, i Big Data sono gli insieme di dati talmente grandi che è
praticamente impossibile utilizzarli, ma questa definizione è doppiamente inadeguata. In primo luogo
perché con il progressivo miglioramento di hardware e software, il concetto di "troppo grande" deve essere
continuamente rivisto al rialzo; e poi anche perché quando si parla di Big Data non lo si fa per lamentarsi o
recriminare, ma per tentare di trovare un modo di utilizzare le tecnologie, hardware e software esistenti,
per manipolare i dati già presenti. Fino a non molto tempo fa, le organizzazioni che desideravano condurre
un'analisi dei propri dati erano limitate alla quantità di informazioni contenute in un floopy disk.Oggi, non
solo il volume potenziale dei dati aumenta esponenzialmente, grazie anche alle nuove tecnologie cloud, ma
si stanno anche immaginando nuovi modi per collegare più database in quello che sembra essere un unico
insieme.
Infatti è perché il big data fa parte dei 10 tecnologie più importanti del 2012 ed è considerato la sfida del
decennio 2010-2020.
Ma i Big Data stanno anche diventando un problema importante, da risolvere al più presto. Man mano che
vengono raccolte più informazioni e che aumentano i collegamenti alla rete Internet, tutto diventa un
problema da Big Data, anche il semplice controllo della rete stessa. Anche se il tema Big Data è
tradizionalmente rimasto nell'ambito della ricerca e della scienza che devono gestire grandi database di
immagini, archivi sismici e così via, ormai anche le grandi aziende stanno iniziando a interessarsi
all'argomento. In un periodo in cui l'economia è in evidente difficoltà, la possibilità di prendere decisioni
basandosi su informazioni,aggiornate è estremamente affascinante. E i risultati lo confermano.
B - Problemi e criticità: perché si parla del “big data”
In un'inchiesta commissionata da Capgemini(società multinazionale attiva nel settore della consulenza
aziendale, dell’outsourcing e nella fornitura di servizi professionali) all'inizio di quest'anno, che ha coinvolto
607 dirigenti di alto livello e intitolata, The Deciding Factor: Big Data & Decision Making, i partecipanti
hanno evidenziato che, nei processi in cui è stato applicato un approccio analitico su Big Data, le
organizzazioni hanno ottenuto un miglioramento medio del 26% delle prestazioni rispetto ai tre anni
precedenti e prevedono di ottenere un ulteriore miglioramento del 41% nei prossimi tre anni.
“Per i partecipanti al nostro sondaggio le informazioni sono ormai il quarto fattore di produzione,
importante quanto il capitale, la forza lavoro e le materie prime”, sottolinea Capgemini. “Ne consegue che a
prevalere in futuro saranno le organizzazioni in grado di sfruttare i Big Data, ad esempio applicando
tecniche avanzate di analisi predittiva in tempo reale".
3
“’I Big Data, come sono stati soprannominati dai ricercatori, sono talmente preziosi che il World Economic
Forum, in un rapporto pubblicato in 2011, li ha inseriti in una nuova categoria di risorse economiche, come
una materia prima”, ha scritto il Washington Post.
Dalla ricerca Capgemini,emerge inoltre che:
Le aziende che attribuiscono maggiore importanza ai processi decisionali basati sull’analii dei dati hanno
ottenuto miglioramenti (in termini di produzione e prestazioni) del 5-6% superiori rispetto alle aziende che
basano le decisioni unicamente sull'intuito e sull'esperienza.
Due terzi degli intervistati ha affermato che la raccolta e l'analisi dei dati è alla base
Della strategia aziendale e del processo decisionale quotidiano, in particolare per le aziende dei settori
dell'energia e delle risorse naturali, dei servizi finanziari, farmaceutici e biotecnologie.
Più di metà degli intervistati ha affermato che le decisioni gestionali basate unicamente su intuito ed
esperienza sono sempre più spesso considerate poco affidabili, mentre il 66% ha ribadito che le decisioni
aziendali sono sempre più collegate a "concrete informazioni analitiche".
Nove su dieci dei dirigenti ritengono che le decisioni prese negli ultimi tre anni avrebbero potuto essere
migliori avendo a disposizione tutte le informazioni necessarie.
I dati considerati più preziosi sono quelli relativi alle “attività di busness” (vendite, acquisti, costi) e, nel
caso delle attività commerciali per il largo consumo, i dati relativi all'andamento dei punti vendita. Altri dati
utili possono essere le informazioni sui clienti, ad esempio email e profili sui social media.
Si stima che google da solo ha contribuito 54 millardi di dollari all’economia degli stati uniti nel 2009
In fronte a tutti i vantaggi che presenta il “Big data”, sia dal punto di vista economico, finaziario, educativo,
scientifico, nell’ambito della ricerca ecc, poi, l’obbietivo essendo di ragruppare tutti i database in un
database grosso e unico, adesso non vi è vaste divario tra il suo potenziale e la sua realizzazione , appunto i
problemi e le criticità che presenta sono enormi .
Problemi di eterogeneità, di scala, di tempestività, di complesità e di privacy con big data ostacolano
il progresso in tutte le fasi della pipeline in grado di creare valore dai dati. I problemi iniziano subito durante
l’acquisizione dei dati. Quando lo tsunami di dati ci impone prendere decisioni ad hoc su quali dati tenere e
cosa scrtare e come memorizzare in modo affidabile quello che abbiamo tenuto nel matadata giusto. Molti
dati oggi non sono nativamente in formatto strutturato, ad esempio tweet e blog sono debolmente
strutturati in pezzi di testo mentre le imagini e i video sono strutturate per la conservazione e l’esposizione
ma non per il contenuto semantico e la ricerca. La trasformazione di tali dati in contenuto strutturato per
una succesiva l’analisi è una grande sfida.i problemi e la criticità riguardando i big data verano esposti
attraverso la figura seguente.
4
fig 1.The big Data Analysis pipeline. Major steps in analysis of big data are shown in the flow at top.
Below its are big data needs that make these task challenges
B-1.a. Dati di acquisizione e di recording
Il big data non nasce da un vuoto ma risulta da un certo numero di generatore di dati .Per il previsto Square
kilometer aray telescopio che produrra fino a 1 millione di terabyte di dati al giorno analogamente,
esperimenti scientifici e simulazioni possono facilmente produrre petabyte di datti oggi .Molti di questi dati
non sono di alcun interesse e possono essere filtrati e compressi. La criticità sta nel definire questi filtri in
modo tale che questi non scartino informazioni utili,per esempio supponiamo un sensore di lettura che ci
effetua questo compito è probabile che il sensore sia difetoso, ma come possiamo essere sicuri che non sia
un artefatto che merita attentione? Inoltre i dati raccolti da questi sensori piu spesso spazialmente e
temporalmente correlate (ad esempio sensori di trafico su un segmento di strada) ,abbiamo bisogno di
ricerca nella scienza della riduzione dei dati che può inteligentemente trattare tali dati non elaborati a una
dimensione che gli utenti siano in grado di gestire mentre non manca l’ago nel pagliaio,serve anche
5
tecniche di analisi “on-line” in grado di elaborare lo streaming di dati in tempo reale dal momento che non
possiamo permetterci di memorizzare prima e di ridurre poi.
La seconda criticità è di generare automaticamente il metadata giusto da descrivere quale dato è registrato
e come è stato registrato e misurato.per esempio negli esperimenti scientifici notevoli detagli riguardando
condizioni e modalità scientifici specifici possono richiedere un’interpretazione corretta dei risultati ed è
importante che i metadati siano registrati con i dati di osservazioni. Un altro problema è la provenienza dei
dati.la registrazione delle informazioni sui dati a sua nascita non è utile salvo quando queste informazioni
debbano essere interpretati e trascinati attraverso la pipeline di analisi di dati,per esempio un errore di
elaborazione in una fase può rendere inutile l’analisi nella fase successiva,con adatta provenienza possiamo
facilmente identificare tutta la serie di elaborazioni che dipende da questo passaggio cosi abbiamo bisogno
di ricerche sia nella generazione di metadati idonei sia nei sistemi di dati e relativi metadati attraverso la
pipeline dell’analisi dei dati
B-1.b. L’Estrazione dell’ informazione e il data cleaning
Frequentemente, le informazioni raccolte non saranno in un formato pronto per l'analisi. Per
esempio,prendere in considerazione la raccolta di cartelle cliniche elettroniche in un ospedale, che
comprende dettati trascritti da diversi medici, i dati strutturati provenienti da sensori e misurazioni
(eventualmente con un po di dati associati in incertezza), e immagini come i raggi X. Non possiamo lasciare
i dati in questa forma e iniziare ad analizzarli in modo efficace. Piuttosto abbiamo bisogno di un processo di
estrazione di informazioni che tiri fuori le informazioni richieste dalle fonti sottostanti e li esprime in forma
strutturata per l'analisi , e fare questo in modo coretto e completo è una sfida continua per i tecnici. Si noti
che questi dati comprendono anche le immagini e saranno in futuro inclusi video, tale estrazione molto
spesso dipende dall'applicazione (ad esempio, quello che si vuole tirare fuori una risonanza magnetica è
molto diverso da quello che ci si tira fuori un quadro delle stelle, o un sorveglianza foto). Inoltre, a causa
della ubiquità di telecamere di sorveglianza e la popolarità di telefoni cellulari con GPS integrato,
fotocamere e altri dispositivi portatili potenti e di alta precisione nella localizzazione e nella determinazione
della traiettoria (ad esempio, il movimento nello spazio), i dati ci possono anche essere estratti.
Siamo abituati a pensare a Big Data, come una cosa che ci dice sempre la verità, ma questo è in realtà
tutt'altro che realtà. Per esempio, i pazienti possono scegliere di nascondere i comportamenti a rischio e gli
assistenti possono a volte mal diagnosticare una condizione, i pazienti possono anche ricordarsi male del
nome di un farmaco o addirittura che non hanno mai preso, portando a informazioni mancanti nella ( parte
della storia) loro cartella clinica. Lavoro esistenti su pulizia dei dati assume vincoli ben riconosciuti su dati
6
validi o comprensibilissimi modelli di errore, per molti emergenti domini di Big Data questo problema non
esiste.
B-1.c. L’integrazione, l’aggregazione e la rappresentazione dei dati
Data l'eterogeneità del flusso di dati, non è sufficiente limitarsi a registrarlo e gettarlo in un repository. Si
consideri, ad esempio, i dati di una serie di esperimenti scientifici. Se non ci resta che un mazzo di insiemi di
dati in un repository, è improbabile che nessuno sarà mai in grado di trovare, per non parlare di riutilizzare,
una di questi dati. Con metadati appropriati, c'è qualche speranza, ma anche così, le sfide rimarrano per
differenze nei dettagli sperimentali e in record di struttura dati.
L'analisi dei dati è molto più impegnativo di una semplice localizzazione, identificatificazione,
comprehensione, e citazione di dati. Per un efficace analisi su larga scala tutto ciò deve avvenire in modo
del tutto automatizzato. Ciò richiede differenze nella struttura dei dati e la semantica di essere espressi in
forme comprensibile in modo computazionale, e poi risolvibile con la robotizzazione. Vi è un forte corpo di
lavoro nei dati di integrazione in grado di fornire alcune risposte. Tuttavia, molto lavoro è necessario per
arrivare ad automatizzare senza errori. Anche per semplici analisi che dipendono solo da set di dati, rimane
una importante questione della progettazione di database adatto. Di solito, ci saranno molti modi
alternativi in cui memorizzare le stesse informazioni. Alcuni modelli avranno vantaggi rispetto ad altri per
scopi determinati, e, eventualmente,inconvenienti per altri scopi. Testimone, per esempio, l'enorme varietà
nella struttura banche dati bioinformatiche con le informazioni riguardanti le imprese sostanzialmente
simili, come i geni. La progettazione di database è oggi un'arte, e viene accuratamente eseguito nel
contesto aziendale da ben pagati professionisti. Dobbiamo attivare altre figure professionali, quali gli
scienziati di dominio, per creare efficaci progettazione dei database, sia attraverso l'elaborazione di
strumenti per aiutarli nel processo di progettazione o mediante rinuncia completo del processo di
progettazione e sviluppare tecniche in modo che i database possano essere utilizzati efficacemente
all'assenza di progettazione di database intelligente.
B-1.d. L’Elaborazione delle querry, modellazione e analisi di dati
Big Data sta anche permettendo alla prossima generazione l’ analisi interattiva dei dati con risposte in
tempo reale. In futuro, le query verso Big Data verrano automaticamente generate per la creazione di
contenuti su siti web, per popolare hot-list o raccomandazioni, e per fornire una analisi ad hoc del valore di
un insieme di dati e decidere se archiviare o di disfarsene. Scaling di query complesse e tecniche di
7
lavorazione a terabyte mentre consentendo tempi di risposta interattivi è un grande problema in ricerca
aperto oggi.
Un problema con l'attuale analisi dei Big Data è la mancanza di coordinamento tra i sistemi di database, che
ospitano i dati e forniscono l'esecuzione di query SQL, con i pacchetti di analisi in grado di eseguire le varie
forme di elaborazione non SQL , come ad esempio il data mining e le analisi statistiche. Gli analisti di oggi
sono ostacolati da un tedioso processo di esportazione di dati dal database, l'esecuzione di un processo di
non-SQL e la restituzione i dati . Questo è un ostacolo che riprende l'eleganza interattiva della prima
generazione di SQL driven sistem, OLAP nel tipo data mining di analisi che è sempre più richiesto Un
accoppiamento stretto tra i linguaggi di interrogazione dichiarativi e le funzioni di tali pacchetti che
andranno a beneficio sia di espressività che di prestazioni dell'analisi.
B-1.e. L’interpretazione
Avere la capacità di analizzare il Big data ha un valore limitato se gli utenti non riescono a capire l'analisi.
un decisore, con il risultato dell'analisi, li deve interpretare . Questa interpretazione non può avvenire nel
vuoto. Di solito, si tratta di esaminare tutte le ipotesi fatte e ripercorrendo l'analisi. Inoltre, come abbiamo
visto sopra, ci sono molte possibili fonti di errore: sistemi informatici possono avere bug o baco cioè un
errore nella scrittura di un programma software, i modelli quasi sempre hanno delle ipotesi, e i risultati
possono essere basati su dati errati. Per tutti questi motivi, nessun utente responsabile si fidera
completamente del sistema del computer. Piuttosto cercherà di capire e verificare i risultati prodotti dal
computer. Il sistema glielo deve rendere più facile. Questo è particolarmente una sfida con Big data a causa
della sua complessità. Ci sono spesso assunzioni cruciali dietro i dati registrati. Un’analisi condotta può
spesso coinvolgere più passaggi, che includono di nuovo delle ipotesi . Il recente colpo drammatico al
sistema finanziario ha sottolineato la necessità di precisione dalla parte del decisore :piuttosto che
accettare la solvibilità dichiarato di un istituto finanziario al valore nominale, un decisore deve esaminare
criticamente le numerose ipotesi in diverse fasi di analisi. In breve, è raramente sufficiente a fornire solo i
risultati. Piuttosto, si deve fornire, complementare le informazioni che spiegano come ogni risultato è stato
ottenuto, e sulla base proprio di che gli ingressi è stato ottenuto. Tali informazioni supplementari è
chiamata la provenienza dei dati. Studiando il modo migliore per acquisire, memorizzare, e la provenienza
delle query, in combinazione con tecniche per catturare i metadati adeguati, possiamo creare una
infrastruttura per fornire agli utenti la possibilità sia di interpretare i risultati analitici ottenuti e ripetere
l'analisi con le diverse ipotesi, parametri, o gruppi di dati. Sistemi con una grande orizonte di visualizzazioni
diventano importanti nel trasmettere agli utenti i risultati delle query in un modo che sia compreso in un
particolare dominio. e questo richiede dalla la parte degli analisti un lavoro e una innovazione perpetua.
8
B-2. Le sfide all’analisi nei big data
Dopo aver descritto le fasi in cantiere dell’analisi dei dati di Big data e i relativi problemi , ci rivolgiamo ora
a un po’ di sfide comuni che sono alla base sia molti, o a volte tutti, delle fasi della pipeline. Questi sono
mostrati nelle cinque caselle nella seconda fila della Fig. 1.
B-2.a. Eterogeneità e incompletezza
Quando gli esseri umani consumano le informazioni, una grande quantità di eterogeneità è comodamente
tollerata.Infatti, la sfumatura e la ricchezza del linguaggio naturale
è in grado di fornire preziose
profondità. Tuttavia, macchine di analisi di algoritmi si aspettano a dati omogenei, e non riescono a capire
le sfumature. Di conseguenza, i dati devono essere attentamente strutturati ed è il primo passo dell’ analisi
dei dati. Si consideri ad esempio, un paziente che ha più procedure mediche in un ospedale. Si potrebbe
creare un record per ogni procedura medicale o laboratorio di prova, un record per il soggiorno intero all’
ospedale, o un record per tutte interazioni dell’ospedale al paziente in tutta la sua vita. Con altro che la
prima rappresentazione, il numero di medici per procedure e le prove di laboratorio per record sarebbe
diversa per ogni paziente. Le tre scelte progettuali di cui sono meno strutturi successivamente , e
viceversa, una maggiore varietà successivamente. Maggiore struttura può essere richiesto da molti sistemi
tradionali di analisi dei dati. Tuttavia, il disegno meno strutturato è probabile per essere più efficaci per
vari scopi :
per questioni relative ad esempio alla progressione della malattia nel tempo richiedono un'operazione
costosa join con i primi due disegni, scelta che può essere evitata con l’ultima rappresentazione. Tuttavia, i
sistemi informatici lavorarano in modo più efficiente se sono in grado di memorizzare più elementi che
sono tutti identici per dimensione e struttura. La rappresentazione efficiente,l’ accesso e l'analisi di dati
semi-strutturati richiederà ulteriore lavoro.
Si consideri un record di database di progettazione elettronica di salute che dispone di campi per la data di
nascita, la professione, e il tipo di sangue per ogni paziente.
Che cosa facciamo se uno o più di questi pezzi di informazione non è fornito da un paziente? Ovviamente,
la registrazione sanitaria è ancora inserito nel database, ma con i valori degli attributi corrispondenti
vengono impostati su NULL. Una analisi dei dati che guarda per classificare i pazienti, diciamo, per
occupazione, deve prendere in considerazione i pazienti per i quali queste informazioni non è noto. Peggio
ancora, questi pazienti con occupazioni sconosciuti può essere ignorata nell'analisi solo se abbiamo ragione
di credere che sono altrimenti statisticamente simili ai pazienti con occupazione noto per l'analisi eseguito.
Ad esempio, se i pazienti disoccupati sono più propensi a nascondere il loro stato lavorativo, risultati
9
dell'analisi possono essere falsati in quanto considera un mix di popolazione lavoratori maggiore di quello
che esiste, e quindi potenzialmente uno ha delle differenze tra l’occupazione, salute relativa e profilo .
Anche dopo la correzione di errore e la pulizia dei dati, alcune incompletezze e alcuni errori nei dati sono
destinati a rimanere. Questa incompletezza e questi errori devono essere gestiti durante l'analisi dei dati.
Fare questo correttamente è una sfida.
B-2.b. La Scala
Naturalmente, la prima cosa che chiunque pensa di Big Data è la sua dimensione. In ogni caso, la parola
"grande" è lì nel nome stesso. Gestire grandi volumi di dati in rapida crescita è stata una sfida per molti
decenni. In passato, questa sfida è stata mitigata da processori sempre più veloci, a seguito della Legge di
Moore, di fornirci le risorse necessarie per far fronte a volumi crescenti di dati. Ma, vi è un cambiamento
fondamentale: il volume di dati cresce più velocemente delle risorse di calcolo, e le Velocità delle CPU
(Unità di Elaborazione Centrale ) sono statici. In primo luogo, negli ultimi cinque anni la tecnologia dei
processori ha avuto un cambiamento drammatico - piuttosto che processori, raddoppiando la frequenza di
clock ogni 18-24 mesi, ora, a causa di vincoli di potenza, le velocità di clock sono in gran parte in fase di
stallo e i processori sono in fase di costruzione con un numero crescente di core. Nel passato, grandi sistemi
di elaborazione dei dati hanno dovuto preoccuparsi di parallelismo tra i nodi di un cluster, ora, abbiamo a
che fare con il parallelismo all'interno di un singolo nodo. Purtroppo, le tecniche di trattamento di dati
parallèle
che sono stati applicati in passato per il trattamento di dati attraverso i nodi non sono
direttamente applicabili per intra-nodo parallelismo, poiché l'architettura sembra molto diversa, per
esempio, ci sono molti altri hardware risorse come cache del processore e canali di memoria dei processori
che sono condivise tra i diversi core in un singolo nodo. Inoltre, il passaggio verso packing multiple sockets
(ciascuna con 10 secondi di core) aggiunge un altro livello di complessità per il parallelismo intra-nodo.
Infine, con le previsioni di "silicio oscuro", vuol dire che probabilmente in futuro ci impedirano di utilizzare
tutto l'hardware del sistema continuo, i sistemi di elaborazione di dati dovrano probabilmente gestire
attivamente il consumo di potenza del processore. Questi cambiamenti senza precedenti ci impongono di
ripensare al modo in cui progettare, costruire e gestire i dati e lavorare i componenti.
Il secondo turno drammatico che è in corso è l'evoluzione verso il cloud computing, che ora aggrega più
carichi di lavoro diversi con obiettivi di performance diversi (ad esempio i servizi interattivi della domanda e
del trattamento dei dati del motore ritorna una risposta entro un limite di tempo fisso) in cluster molto
grandi. Questo livello di condivisione delle risorse su cluster costose e grandi dimensioni richiede nuovi
modi di determinare come girare ed eseguire lavori di elaborazione dei dati in modo da poter soddisfare gli
obiettivi di ogni carico di lavoro conveniente, e di affrontare i fallimenti del sistema, che si verificano più
10
frequentemente quando operiamo nei cluster sempre più grandi (che sono necessari per far fronte alla
rapida crescita dei volumi di dati). Questo pone un premio sugli approcci dichiarativi ai programmi che
esprimono, anche quelli che fanno complesse macchine da compiti di apprendimento, in quanto
l'ottimizzazione globale in tutti i programmi di più utenti è necessario per una buona prestazioni
complessiva. Il ricorso al programama di ottimazzazione user-driven rischia di portare a un sotto utilizzo
dei cluters, dal momento che gli utenti non sono a conoscenza di programmi di altri utenti. Un Sistemadriven di ottimizzazione globale richiede di essere sufficientemente trasparente, ad esempio, come in
sistemi di database relazionale, dove linguaggi di interrogazione dichiarativi sono progettati con questa
filosofia.
Un terzo turno drammatica che è in corso è il cambiamento trasformativo del tradizionale sottosistema
I/O. Per molti decenni, le unità disco fisso (HDD) sono stati utilizzati per memorizzare i dati persistenti.
HDD, hanno prestazioni IO casuale che è piu lento delle prestazioni sequenziali IO, e motori di elaborazione
di dati hanno formattato i loro dati e progettatoi metodi di lavorazione di query per "superare" questa
limitazione. Ma,oggi, HDD sono sempre più spesso sostituiti da unità a stato solido e altre tecnologie come
Phase Change Memory sono dietro l'angolo. Queste tecnologie di archiviazione più recenti non hanno la
stessa diffusione di grandi dimensioni in prestazioni tra le prestazioni I / O sequenziale e casuale, che
richiedeono un ripensamento del modo in cui progettiamo sottosistemi di storage per i sistemi di
elaborazione dati. Le implicazioni di questo cambiamento di archiviazione subsystem tocca potenzialmente
ogni aspetto del trattamento dei dati, tra cui algoritmi di elaborazione delle query, programmazione query,
la progettazione di database, controllo della concorrenza dei metodi e metodi di recupero.
B-2.c. La Tempestività
L'altra faccia della dimensione è la velocità. Più grande è il set di dati da elaborare, più tempo ci vorrà per
analizzare. La progettazione di un sistema che tratti efficacemente con dimensioni è suscettibile di
provocare un sistema che può elaborare una data dimensione del set di dati più veloce. Tuttavia, non è solo
questa velocità che di solito si intende quando uno parla di Velocità nel contesto di Big dati. Piuttosto, è
una sfida di velocità di acquisizione come descritto nel paragrafo dell’acquisizione, e una sfida di
tempestività descritta di seguito.
Ci sono molte situazioni in cui si richiede il risultato dell'analisi immediatamente. Per esempio, se una
transazione fraudolenta della carta di credito si sospetta, dovrebbe idealmente essere segnalato prima che
la transazione sia completata , potenzialmente impedire che l’operazione avvenga. Ovviamente, un analisi
completa della storia acquisto di un utente non è probabile che sia realizzabile in tempo reale. Piuttosto,
abbiamo bisogno di sviluppare i risultati parziali in anticipo in modo che una piccola quantità di calcolo
11
incrementale con i nuovi dati possano essere usata per arrivare a una determinazione rapida. Dato un
insieme di dati di grandi dimensioni, è spesso necessario trovare elementi in esso che soddisfino un criterio
specificato. Nel corso di analisi dei dati, questo tipo di ricerca, è probabile che si verifichi ripetutamente. La
scansione di tutti i dati impostato per trovare gli elementi giusti è ovviamente impraticabile. Piuttosto,
strutture indice vengono creati in anticipo e consentono di trovare rapidamente elementi qualificanti. Il
problema è che ogni struttura dell'indice è progettata per supportare solo alcune classi di criteri. Con
nuove analisi desiderati con Big Data, ci sono nuovi tipi di criteri specificati, e la necessità di elaborare
nuove strutture dell'indice per supportare tali criteri. Per esempio, prendere in considerazione un sistema
di gestione del traffico con le informazioni che riguardano migliaia di veicoli e zone di trafico. Il sistema
potrebbe essere necessario per prevedere punti di congestione potenziali lungo un percorso scelto da un
utente, e suggerire alternative. In questo modo è necessario valutare più query spaziali di prossimità
lavorando con le traiettorie di oggetti in movimento. Nuove strutture d’indici sono tenute a sostenere tale
query. Progettazione di strutture di questo tipo diventa particolarmente difficile quando il volume di dati è
in rapida crescita e le query hanno stretti limiti di tempo di risposta.
B-2.d. La Privacy
La riservatezza dei dati è un altro problema enorme, e uno che aumenta nel contesto del Big Data.
Per le cartelle cliniche elettroniche, ci sono leggi severe che regolano ciò che può e non può essere fatto.
Per altri dati, i regolamenti, in particolare negli Stati Uniti, sono meno forti. Tuttavia, vi è grande la paura
del pubblico riguardo l'uso improprio dei dati personali, in particolare attraverso il collegamento di dati
provenienti da fonti multipli. La gestione della privacy è effetivamente un problema sia per il tecnico che
per il sociologico, che deve essere affrontato congiuntamente da entrambe le prospettive per realizzare la
promessa di dati di grandi dimensioni. Si consideri, ad esempio, dati raccolti dai servizi di localizzazione.
Queste nuove architetture richiedono a un utente di condividere la sua posizione con il fornitore di servizi,
causando ovvi problemi di privacy.
Si noti che nascondere l'identità dell'utente da sola, senza nascondere la sua posizione non sarebbe
affrontare adeguatamente questi Problemi di privacy. Un utente malintenzionato o un location-based
server può dedurre l'identità della fonte della query dalla (successiva) informazioni sulla posizione. Per
esempio le informazioni di localizzazione di un utente possono essere monitorati attraverso una serie di
punti di collegamento fissi (ad esempio, le torri cellulari). Dopo un po', l'utente lascia "una scia di briciole
pacchetti" che potrebbero essere associati ad un certo periodo di permanenza o di ubicazione dell'ufficio e
quindi usati per determinare l'identità dell'utente. Molti altri tipi di informazioni sorprendentemente
private come ad esempio problemi di salute (ad esempio, la presenza in un centro di trattamento del
12
cancro) o preferenze religiose (ad esempio,presenza in una chiesa) può essere rivelato da solo osservando il
movimento utenti anonimi e abitudini pattern nel tempo. Barabási et al, hanno dimostrato che in generale
esiste una stretta correlazione tra le identità delle persone i loro schemi di movimento [Gon2008]. Si noti
che nascondere la posizione dell’ utente è molto più critico che di nascondere la sua identità. Questo
perché con servizi basati sulla posizione, la posizione del utente è necessario per un accesso ai dati di
successo o di raccolta di dati, mentre l'identità dell'utente non è necessario.
Ci sono molti altri problemi di ricerca complessi. Per esempio, non sappiamo ancora come condividere i dati
privati, mentre limitare l'accesso e garantendo sufficiente utilità dei dati nei dati condivisi. Il paradigma
attuale della privacy differenziale è un passo molto importante nella giusta direzione, ma riduce il
contenuto d’informazione purtroppo troppo per essere utile in casi più pratici. Inoltre, i dati reali non sono
statici, ma diventano più grandi e cambiano nel tempo, nessuna delle tecniche prevalenti risulta in qualsiasi
tipo di contenuto utile di essere rilasciato in questo scenario. Ancora un'altra direzione molto importante è
ripensare la sicurezza per la condivisione di informazioni in grandi casi di utilizzo dei dati. Molti servizi
online oggi ci impongono di condividere informazioni private (si pensi applicazioni di Facebook), ma al di là ,
del livello di record, di controllo di accesso che facciamo non capiamo cosa significa condividere i dati, come
i dati condivisi possono essere collegati, e come offrire agli utenti a grana fine il controllo su questa
condivisione.
B-2.e. La collaborazione umana
Nonostante gli enormi progressi fatti in analisi computazionale, permangono molti modelli che gli esseri
umani possono facilmente rilevare, ma gli algoritmi di computer hanno difficoltà a trovare. Infatti, i
CAPTCHA sfruttano proprio questo fatto per rilevare utenti umani oltre a programmi per computer.
Idealmente, le analisi per il Big data non saranno tutti computazionali - piuttosto sarà progettato
esplicitamente per avere un essere umano nel loop. Il nuovo sub-campo di analisi visuale sta cercando di
fare questo, almeno per quanto riguarda la fase di modellazione e di analisi in cantiere. C'è un valore simile
a input umano in tutte le fasi di analisi nella pipeline. Nel mondo complesso di oggi, spesso ci vogliono più
esperti di campi diversi per davvero capire cosa sta succedendo. Un grande sistema di analisi dei dati deve
supportare input da più esperti umani, e l'esplorazione in comune dei risultati. Questi esperti multipli
possono essere separati nello spazio e nel tempo quando è troppo costoso per assemblare un intero team
insieme in una stanza. Il sistema di dati deve accettare questo ingresso distribuito di esperti, e sostenere la
loro collaborazione.
Un nuovo metodo popolare di ingegno umano sfruttato per risolvere i problemi è attraverso
crowdsourcing. Wikipedia, l'enciclopedia online, è forse l'esempio più noto di folla di origine dati. Facciamo
13
affidamento su informazioni fornite da sconosciuti unvetted. Il più delle volte, ciò che dicono è corretto.
Tuttavia, dovremmo aspettarci che ci sia persone che hanno altre motivazioni e abilità, alcuni possono
avere una ragione per fornire false informazioni nel tentativo intenzionale di ingannare. Mentre la maggior
parte di tali errori vengono individuati e corretti da altri in mezzo alla folla, abbiamo bisogno di tecnologie
volte a facilitare questo. Abbiamo anche bisogno di un quadro di riferimento da utilizzare per l'analisi di tali
dati di diverse provenienze con delle dichiarazioni conflittuali. Come esseri umani, siamo in grado di
guardare le recensioni di un ristorante, alcuni dei quali sono positivi e altri critiche, e venire con una
valutazione sintetica in base alla quale siamo in grado di decidere se provare a mangiare lì o meno.
Abbiamo bisogno di computer capaci di fare l'equivalente. I problemi d’incertezza e di errore diventano
ancora più evidente in un tipo specifico di crowd-sourcing, intitulato partecipatory-sensing. In questo caso,
ogni persona con un telefono cellulare può agire come un multi-modale sensore raccogliendo vari tipi di
dati istantaneamente (ad esempio, foto, video, audio, luogo, tempo, velocità, direzione, accelerazione). La
grande sfida in questo caso è l'incertezza intrinseca dei dispositivi di raccolta dei dati. Il fatto che i dati
raccolti siano probabilmente correlati spazialmente e temporalmente può essere sfruttato per valutare
meglio la loro correttezza. Quando dati di provenienza diverse si ottengono per il noleggio, come nel caso
di "turchi Meccanica", gran parte dei dati creati possono essere con un obiettivo primario di fare in fretta,
piuttosto che correttamente. Questo è un altro errore di modello, che deve essere pianificato in modo
esplicito quando si applica.
C - Tecnologie per i big data
Le maggiori iniziative open source in campo big data pubblicato dal magazine networkwold, ovvero quegli
strumenti informatici che consentono di gestire e manipolare set di dati di dimensioni tali che i database
tradizionali non possono più essere utilizzati. I Big Data stanno guadagnando sempre più terreno dopo la
strada delineata da MapReduce e Hadoop, e l’open source è il contesto chiave in cui si sviluppano.
Scorriamo la lista delle nove tecnologie in campo:
1- In apertura incontriamo ovviamente Apache Hadoop. Si tratta di un framework open source per
applicazioni distribuite data-intensive, creato inizialmente da Doug Cutting per supportare il suo
lavoro su Nutch, un motore di ricerca web open source. Per soddisfare i requisiti di elaborazione
multimacchina di Nutch, Cutting implementò un’applicazione di MapReduce e un file system
distribuito, che uniti insieme formarono Hadoop. Hadoop distribuisce i Big Data in pezzi lungo una
serie di nodi eseguiti su commodity hardware. Hadoop è ora tra le tecnologie più popolari per
14
l’archiviazione di dati strutturati, semi-strutturati e non strutturati. Hadoop è rilasciato sotto licenza
Apache 2.0.
2- R è un linguaggio di programmazione open source e un ambiente software progettato per il calcolo
statistico e per la visualizzazione. R è stato progettato da Ross Ihaka e Robert Gentleman
all’università di Auckland, in Nuova Zelanda nel 1993, e sta diventando rapidamente lo strumento
principe per l’analisi statistica di immensi data set. E’ stato commercializzato da una compagnia dal
nome Revolution Analytics, ed è disponibile sotto licenza GNU General Public.
3- Cascading permette agli utenti di creare ed eseguire workflow di elaborazione dati su cluster
Hadoop usando un qualsiasi linguaggio basato su JVM. Il suo obiettivo è nascondere la complessità
presente all’interno dei lavori in MapReduce. Cascading è stato concepito da Chris Wensel come
una API alternativa a MapReduce. E’ spesso usato per ad targeting, analisi dei file di log,
bioinformatica, machine learning, analisi predittiva e applicazioni ETL. Il supporto commerciale pper
Cascading è offerto da Concurrent, una compagnia fondata da Wensel dopo aver sviluppato
Cascading. Tra le compagnie che usano Cascading ci sono Twitter ed Etsy. Cascading è disponibile
sotto licenza GNU General Public.
4- Scribe è un server sviluppato da Facebook e rilasciato nel 2008. Il suo ruolo è quello di aggregare
dati di log inviati in tempo reale da un grande numero di server. Facebook l’ha progettato per
soddisfare i suoi stringenti requisiti di scalabilità, e ora lo usa per gestire decine di miliardi di
messaggi al giorno. Scribe è disponibile sotto Licenza Apache 2.0.
5- ElasticSearch Sviluppato da Shay Banon e basato su Apache Lucene, è un server di ricerca open
source, distribuito e RESTful. Si tratta di una soluzione scalabile che supporta ricerca quasi in tempo
reale e multitenancy senza una configurazione particolare. E’stato adottato da un buon numero di
compagnie, incluse StumbleUpon e Mozilla. ElasticSearch è disponibile sotto Licenza Apache 2.0.
6- Apache Hbase , Scritto in java è un database non relazionale distribuito, progettato per essere
eseguito su Hadoop Distributed Filesystem (HDFS). Fornisce storage fault-tolerant e accesso rapido
a grandi quantità di dati sparsi. Hbase è uno dei data stores multinodo di NoSQL ad essere usciti
negli scorsi anni. Nel 2010 Facebook ha adottato Hbase per servire la sua piattaforma di messaggi.
7- Apache Cassandra è un sistema di gestione di database distribuito sviluppato da Facebook per
potenziare il la sua funzionalità Inbox Search. Nonostante Facebook l’abbia abbandonato per
15
adottare Hbase nel 2010, Cassandra anche molto usato da varie compagnie, inclusa Netflix, che usa
Cassandra come database backend per i suoi servizi di streaming. Cassandra è disponibile sotto
licenza Apache 2.0.
8- MongoDB Creato dai fondatori di DoubleClick, è un altro data store popolare open source NoSQL.
Memorizza dati strutturati di documenti JSON con schemi dinamici chiamati BSON (per JSON
binari). MongoDB è stato adottato da diverse grandi compagnie, inclusa MTV Netoworks, craiglist,
Disney Interactive Media Group, The New York Times ed Etsy. E’ disponibile sotto licenza GNU
Affero General Public, con driver di linguaggio disponibili sotto licenza Apache. La compagnia 10gen
offre licenze commerciali per MongoDB.
9- Apache CouchDB è un altro database NoSQL open source. Usa JSON per archiviare dati, JavaScript
come linguaggio di query e MapReduce e HTTP come API. CouchDB è stato creato nel 2005 dallo
sviluppatore di IBM Lotus Notes Damien Katz, come sistema di storage per database a oggetti a
larga scalabilità. La BBC usa CouchDB per le suee piattaforme dinamiche di contenuti, mentre
Credit Suisse lo usa per archiviare i dettagli di configurazione per il suo framework di dati di
mercato in Python. CouchDB è disponibile sotto licenza Apache 2.0
Fra le tecnologie precitate verra analizzato in detaglio Apache Hadoop
C-1. Origine
A partire degli anni 2000, Google iniziava ad affrontare una sfida seria. La sua missione, di organizzare le
informazioni a livello mondiale, significa che stava strisciando, la copia e l'indicizzazione dell'intera Internet
continuamente. Poiché il numero e le dimensioni dei siti web è cresciuto e il servizio Google è diventato
ancora più popolare, la società è stata costretta a digerire un corpus sempre maggiore e più rapidamente.
Nessun software disponibile in commercio era in grado di gestire il volume di dati da elaborare, e presto, le
infrastrutture di google stavano per ragiungere i loro limiti. Gli ingegneri di Google hanno progettato e
costruito un’infrastruttura di elaborazione per risolvere questo problema. I due servizi chiave di questo
sistema erano la GoogleFile System, o GFS, che ha fornito un fault-tolerant, un’archiviazione affidabile e
scalabile, e MapReduce, la scheda di elaborazione di dati, che permette di dividere il lavoro in un gran
numero di server e di essere effettuato in parallelo.GFS e MapReduce sono stati progettati all’inizio per
essere eseguiti sul server hardware commoditydi Google.
Nel 2004, Google ha pubblicato un documento accademico Descrivendo il suo lavoro. Poco prima, un noto
sviluppatore di software open source di nome Doug Cutting che aveva svilupato La prima versione di Nutch,
16
nel 2002, aveva però problemi di scalabilità, cioè il crawler e il generatore d’indici funzionassero bene per
piccole quantità di dati, ma non riuscivano a gestire i dati relativi all'intera struttura del web.allora decise
di utilizzare la tecnica descritta. Avendo gli stessi problemi con i volumi di dati, indicizzazione e velocità che
avevano spinto Google a sviluppare MapReduce. Ha sostituito la raccolta dei dati e l’elaborazione
dell’infrastruttura dietro il crawler, basando la sua nuova implementazione su MapReduce. Ha chiamato il
nuovo sistema Hadoop, da un giocattolo farcito elefante che apparteneva al suo figlio. Gli ingegneri di
Yahoo! un concorrente diretto di Google hanno appreciato il lavoro di cutting. E hanno Deciso di utilizzare il
sistema per l'elaborazione dei dati propri. Yahoo! ha deciso di investire nello sviluppo di Hadoop. I Leaders
di Yahoo! compreso cutting hanno preso una decisione strategica: Hadoop sarà un progetto open source,
da scaricare gratuitamente e usare, ma aperto anche alla valorizzazione, il miglioramento, e il contributo di
un gran numero di svilupatori talentuosi. Entro 2006, Hadoop era usato in produzione dalle società di web
stabiliti ed emergenti.
Hadoop è un progetto open source e opera sottogli auspici della Fondazione
Apache Software oggi.
C-2. Oltre L’ Internet
Cloudera è stata fondata nel 2008 per commercializzare Apache Hadoop, con la consapevolezza di tre
tendenze principali che stanno cambiando il modo in cui tutta l’impresa immagazzina e utilizza i dati. Questi
cambiamenti sono eseguiti prima dal consumatore Prioritario di Internet, ma anche da imprese di grandi
dimensioni a fini commerciali, e altre applicazioni per la difesa, e l'intelligence pure.
In primo luogo, i data center sono costruiti oggi in modo diverso rispetto a come erano una decina di anni
fa. Invece di un grand server centralizzato per eseguire le applicazioni, le organizzazioni acquistano
generalmente e distribuiscono una collezione di server in rack montabile. Ciascuno ha diversi processori e
pochi terabyte di disco locale. Le vecchie applicazioni che assumono un ruolo di hardware centrale per
distribuire tutto, funzionano male in questo ambito . Le moderne applicazioni come Hadoop sono costruiti
apposto per farcela.
In secondo luogo, la varietà e la complessità dei dati disponibili stanno esplodendo. I semplici dati
strutturati gestiti dai legacy relational database management system (RDBMS) offerti esistono ancora, ma
sono generalmente sminuito dal volume di log, testo, immagini, video, audio. le letture del sensore di
uscita, modelli scientifici, e altri tipi di dati complessi in streaming in data center oggi.
Questa differenza è sia qualitativa che quantitativa. Dati complessi non possono essere facilmente utilizzati
in riga e colonna di sistemi di database orientati. Ancora più importante, è che le informazioni di questo
tipo sono pesanti, e la velocità con cui si viene generato è in cresita. Nuove fonti provenienti online per
applicazioni di difesa e di intelligence contribuirano a guidare questa crescita.Infine, nuove tecniche di
trattamento dei dati devono essere applicate per estrarre il valore rinchiuso in questi dati.
17
Ognuno dei tipi di dati individuati nella lista - audio, video o immagini, per esempio - usa algoritmi
sintonizzando sia i dati e le domande che possono otenere risposta da esso. Un elemento chiave tra le
prime società di web era che la combinazione di questi dati, web log, che metono record di attività
dell’utente, accanto al testo libero di messaggi di aggiornamento di stato,per esempio , fornire spunti che
né dataset offre da sola. Una piattaforma di calcolo che permette agli analisti di combinare i dati strutturati
e complessi, e per costruire l'elaborazione e le applicazioni analitiche in fonti di dati, è un progresso
drammatico nella gestione delle informazioni.
Queste tre tendenze: un passaggio alla scalabilità e all’elasticità informatica delle infrastrutture;
un'esplosione nella complessità e la varietà dei dati disponibili, il potere e il valore che provengono dalla
combinazione di dati diversi per un’analisi completa, fanno di Hadoop una nuova piattaforma critica di
data-driven interprises. Cloudera vede queste tendenze giocando fuori tra i suoi clienti e la comunità
globale di utenti Hadoop.
C-3. Che cos’è hadoop ?
Come il sistema di Google, MapReduce in cui è stato base, Hadoop è costituito da due componenti
principali: un file di archivio e un sistema di elaborazione distribuita (HDFS).
C-3.1. Hadoop Distributed File System(HDFS)
18
Il file di archivio è chiamato Hadoop Distributed file System, o HDFS. HDFS offre un fault-tolerant scalabile
a basso costo. Il software HDFS rileva e compensa i problemi di hardware, compresi i problemi del disco e
guasti del server.HDFS memorizza i file attraverso un insieme di server in un cluster. I file vengono
scomposti in blocchi, e ogni blocco viene scritto in più di uno (il numero è configurabile, ma tre è comune)
server Questa replica fornisce sia tolleranza agli errori (la perdita di un singolo disco o di un server non
rovinera un file) e prestazioni (qualsiasi dato blocco può essere letto da uno dei diversi server, migliorando
il canale di communicazione del sistema).HDFS assicura la disponibilità dei dati di continuo monitoraggio
dei server di un cluster ed i blocchi che essi gestiscono. Blocchi individuali includono checksum (somma di
controllo). Quando un blocco è letto, il checksum viene verificato, e se il blocco è stato danneggiato verrà
ripristinato da una delle sue repliche. Se un server o un disco fallisce, tutti i dati in esso memorizzati
vengono replicati a qualche altro nodo o nodi nel cluster, dalla collezione di repliche. Come risultato, HDFS
gira molto bene sui commodity hardware. Tollera, e compensa,i fallimenti del cluster.Come cluster di
grandi dimensioni, anche fault-tolerant server molto costosi sono destinate a fallire, HDFS è pronto per
affrontare il fallimento, le organizzazioni possono spendere meno sui server e lasciare che il software
compensi i problemi di hardware.
19
C-3.2. MapReduce
HDFS offre una memorizzazione dei file poca costosa, affidabile e disponibile. Tale servizio da sola, però,
non sarebbe sufficiente per creare il livello di interesse, o di guidare il tasso di adozione, che caratterizza
Hadoop questi ultimi anni. La seconda componente principale di Hadoop è il sistema di elaborazione
parallela di dati chiamato MapReduce.
Concettualmente, MapReduce è semplice.MapReduce include un componente software chiamato “The job
scheduler” (il processo di pianificazione). Il lavoro di pianificazione è responsabile per la scelta dei server
che eseguono il lavoro di ogni utente, e per l'esecuzione dei lavori di programmazione per utenti multipli in
un cluster condiviso. Il lavoro di pianificazione consulta il NameNode per la posizione di tutti i blocchi che
compongono il file o i file richiesti da un processo. ciascuno di tali server è incaricato di eseguire l'analisi del
codice dell'utente contro il suo blocco locale o i blocchi. l’infrastruttura di elaborazione MapReduce
comprende un'astrazione chiamato input split( scissione ingresso) che permette ad ogni blocco di essere
suddiviso in singoli record. C'è una elaborazione speciale costruito per riassemblare record interrotti dai
confini di blocco.Il codice che implementa un job map può essere praticamente qualsiasi cosa. MapReduce
consente agli sviluppatori per scrivere e distribuire il codice che viene eseguito direttamente su ogni
DataNode del server nel cluster. Tale codice comprende il formato dei dati memorizzati in ciascun blocco
nel file, ed è in grado di implementare semplici algoritmi (contare il numero di occorrenza di una parola,
20
per esempio) o quelli più complessi (ad esempio, il linguaggio naturale di elaborazione, l'individuazione del
modello e l'apprendimento automatico,funzione di estrazione, o il riconoscimento del volto).
Al termine della fase di job map, i risultati sono raccolti e filtrati da un riduttore. MapReduce garantisce che
i dati siano consegnati al riduttore di manièra ordinata, quindi all'uscita da tutti i mapper i dati vengono
raccolti e fatti passare attraverso un processo di riordino e di ordinamento. I’output ordinato viene quindi
fatto passare al riduttore per elaborazione. I risultati sono in genere ritornati al
HDFS.
A causa della replica costruita in HDFS, MapReduce è in grado di fornire alcune altre caratteristiche utili. Per
esempio, se uno dei server coinvolti in un MapReduce processo esecute lentamente , vuole dire che la
maggior parte dei suoi nodi sono saturati, ma si sta ancora lavorando , il programma di pianificazione del
lavoro può avviare un altro esempio di questo compito particolare su uno dei altri server del cluster che
contiene la questione del blocco dei file. Ciò significa che il sovraccarico o in mancanza di nodi in un cluster
non deve fermare, o addirittura rallentare notevolmente il lavoro di un MapReduce.
C.3-2.a. Caratteristiche di MapReduce
È
importante
capire
le
proprietà
che
caratterizzano
l’ottimo
lavoro
di
MapReduce.
In primo luogo, gli algoritmi devono funzionare bene sul sharednothing, infrastruttura distribuita di
Hadoop. Se un processo di elaborazione deve comunicare ampiamente tra i server del cluster, MapReduce
è spesso un piattaforma ineficiente. Almeno nella fase di mappatura di qualsiasi lavoro, i migliori algoritmi
sono in grado di esaminare solo un record, o un numero limitato di record adiacenti memorizzati sul
DataNode stesso, per calcolare un risultato. I problemi che caratterizzano generalmente la firma delle
prestazioni di ricerca in informatica questi ultimi decenni sono la previsioni del tempo o la modellazione
di esplosioni nucleari, per esempio richiedono particolari intra-nodo di comunicazione. Questi traducono
male a MapReduce. Detto questo, MapReduce è concettualmente un sistema di elaborazione in
parallelo,molto piu semplice rispetto ai vecchi sistemi HPC. Gli Algoritmi esistenti, modificati in qualche
modo di lavorare su dati memorizzati su HDFS, spesso girano molto bene. MapReduce è in grado di
eseguire codice Java, ma anche di usare software scritte in altre linguaggi, tra cui linguaggi di alto livello
come C o C + + e linguaggi di scripting come PHP, Python e Perl. Parlando praticamente, un numero
sorprendentemente elevato di algoritmi possono essere espressi in unità di lavoro MapReduce. MapReduce
eccelle anche nella lavorazione completa. Se un algoritmo deve esaminare ogni singolo record in un file al
fine di calcolare un risultato, MapReduce è un scelta eccellente. Le unità di lavoro girano in parallelo su dei
DataNodes in un cluster. Il numero di DataNodes in un cluster è direttamente proporzionale alla quantità di
dati che clusterin grado di memorizzare. Come risultato, la dimensione di un set di dati influisce
l’esecuzione di un lavoro MapReduce molto inferioremente che la complessità dell'algoritmo
che
implementa. MapReduce è generalmente utilizzato per l'elaborazione batch, non per i tipi di lavori
21
interattivi che caratterizzano molti applicazioni eseistenti di business intelligence. Il vantaggio chiave di
MapReduce è che è in grado di elaborare, letteralmente, petabyte di dati in tempo ragionevole per
rispondere a una domanda.
C-4 Perché Hadoop?
Le grandi proprietari del web hanno inventato MapReduce e costruito Hadoop, perché avevano un
problema di dati che nessun sistema commerciale o di ricerca era in grado di risolvere.
La piattaforma è ora utilizzato per sostenere un enorme varietà di applicazioni. Queste applicazioni non
sono necessariamente caratterizzati da enormi set di dati. Al contrario, hanno bisogno dei tre proprietà
chiave che Hadoop offre.
In primo luogo, Hadoop è , un consolidato piattaforma di archiviazione per tutti i tipi di dati. Naturalmente
ci sono file eccezionali e prodotti di storage relazionali disponibili sul mercato, e quei sistemi resterano in
uso ancora per gli anni a venire, per risolvere esattamente i problemi per i quali sono stati progettati.
Hadoop le completa, offrendo un nuovo repository dove i dati strutturati e dati complessi possono essere
facilmente combinate.
In secondo luogo, a causa delle economie di shared-nothing commodity server e software open source,
Hadoop prevede enormemente più stoccaggio ad un costo molto inferiore a quello dei legacy system
Fault-tolerant, reliable storage in HDFS costa solo poche centinaia di dollari al terabyte oggi, e cavalca la
curva inevitabile al ribasso dei prezzi come fornitori di server e storage per migliorare le prestazioni e
ridurre i costi.
Terzo, e infine, MapReduce sfrutta la distributed storage architecture di HDFS per fornire servizi scalabili e
affidabili di elaborazione parallela per algoritmi arbitrari. Gli utenti non sono limitati ad un piccolo insieme
di algoritmi consegnato da un RDBMS o altri fornitori. In Hadoop, il sistema di storage è programmabile. Gli
utenti in grado di analizzare i dati utilizzando processori collegati direttamente ai dischi in cui risiede.
Questa combinazione, il consolidamento di tutti i tipi di dati su una piattaforma di storage affidabile a costo
basso che offre una veloce esecuzione parallela di algoritmi analitici potenti è nuova . Hadoop offre modi di
data-driven organizazion per di sfruttare i dati che non hanno mai avuto prima. MapReduce e Hadoop
sono stati creati quando Google e Yahoo! Intrapresero risolvere un problema di ordine ingegneristico alle
loro imprese:” la costruzione di un indice di più di un miliardo di pagine web”. La tecnologia a questo punto
è ad una prova inaprezzabile. Ma ha rilevato tante sfide in altre aree inaspettate, come il miglioramento di
layout di pagina, selezione pubblicità, il controllo ortografico, map rendering, e così via. Un generico
strumento che consente l’analisi di tutti i dati permettendo nuove analisi che erano in precedenza non
possibile o anche immaginabili. Dare a tutti gli sviluppatori un accesso facile e potente per tutti i dati creati
22
e tanti miglioramenti aziendali. Altri dati in sé e per sé generano informazioni di qualità superiore. Se una
persona può accedere ai modelli di dati, emerge che non sono evidenti con meno dati. In un mondo in cui
le informazioni separa i vincitori dai perdenti, organizzazioni di successo si distingueranno dal modo in cui
lavorarno con i dati.
In seguito verrà riposto ad una serie di domande su hadoop che possa soddisfare la curiosità di quelli che si
interessano ad hadoop.
C-5. Hadoop sostituisce i database e gli altri sistemi esistenti ?
La risposta è No. Hadoop non è un database né bisogno di sostituire i sistemi di dati esistenti che uno
possona avere. Hadoop è uno storage altamente scalabile e sistema di elaborazione di lotti di dati. Esso
fornisce un tessuto integrato di conservazione e il trattamento in grado di scalare orizzontalmente con
hardware di largo consumo e fornisce la tolleranza d'errore attraverso il software. Piuttosto che sostituire i
sistemi esistenti, Hadoop li aumenta scaricando il problema particolarmente difficile di ingerimento
simultaneo, trattando e distribuendo/ esportando grandi quantità di dati in modo che i sistemi esistenti
23
possano concentrarsi su ciò che sono stati progettati per fare. Se tale da fornire i dati in tempo reale o
transazionali o fornire informazioni interattivo di business. Inoltre, Hadoop è in grado di assorbire qualsiasi
tipo di dati, strutturati e non, da un qualsiasi numero di sorgenti. I dati provenienti da fonti diverse possono
essere uniti ed aggregati in modo arbitrario che consentono analisi più approfondite che ogni altro sistema
in grado di fornire. Infine, questi risultati possono essere inviati a qualsiasi sistema aziendale esistente per
un ulteriore uso indipendente di Hadoop.
Ad esempio, si consideri un RDBMS utilizzato per servire in tempo reale di dati e garantire la coerenza delle
transazioni. Chiedere allo stesso database di generare rapporti analitici complessi oltre a grandi volumi di
dati è una prestazione intensiva e gli toglie la sua capacità di fare ciò che fa bene. Hadoop è progettato per
archiviare grandi volumi di dati e fornire i dati ovunque siano necessari. Da una Regola e esportazione di
dati da un RDBMS, è possibile ottimizzare il database per il suo carico di lavoro interattivo utilizzando
Hadoop per condurre analisi arbitrariamente complesso in linea senza impattare i sistemi real-time.
C-6. Come i sistemi esistenti interagiscono con hadoop ?
Hadoop serve spesso come un lavello per molte fonti di dati, in quanto Hadoop consente di memorizzare i
dati in modo efficace e usa questi dati in modo arbitrario in un secondo momento. Poiché Hadoop non
mantiene gli indici o rapporti, non è necessario decidere come si desidera analizzare i dati in anticipo.
Diamo un'occhiata a come diversi sistemi ottengono i dati in Hadoop.
Database: Hadoop ha il supporto nativo per l'estrazione di dati su JDBC(Java DataBase Connectivity). Molti
database hanno anche bulk dump / funzionalità di carico. In entrambi i casi, a seconda del tipo di dati, è
facile
scaricare il database intero su Hadoop su base regolare, o semplicemente esportare gli
aggiornamenti dopo l'ultimo dump. Spesso, ci si accorge che discaricando dati su Hadoop regolarmente, è
possibile memorizzare meno dati nei sistemi interattivi e si può ridurre i costi di licenza per il futuro.
Log Generators: molti sistemi, dai server web ai sensori, generano log dei dati e alcuni lo fanno a prezzi
sorprendenti. Questi record di log hanno spesso una natura semi-strutturata e cambiano nel tempo. è
spesso difficile analizzare questi registri perché non si "adattano" bene in database relazionali e richiedono
troppo tempo per elaborare su una singola macchina. Hadoop rende il lavoro facile, per un numero
qualsiasi di sistemi ,per lo streaming affidabile, per qualsiasi volume di registri in un repository centrale per
una successiva analisi. Si vedono spesso utenti scaricare i log di ogni giorno in una nuova cartella in modo
da poter facilmente eseguire l'analisi su un qualsiasi periodo di tempo arbitrario del valore di log.
Materiale scientifico: Come la tecnologia del sensore migliora, vediamo molti strumenti scientifici che
vanno dai sistemi di imagery (medici, satellite, ecc) per sequenziatori di DNA per rivelatori fisica delle alte
energie, la generazione di dati ad una velocità che superano di gran lunga sia la velocità di scrittura e la
24
capacità di un singolo disco. Questi sistemi possono scrivere i dati direttamente a Hadoop e siccome la
velocità di generazione dei dati e le elaborazioni richieste aumentano,
si può risolvere la facenda
semplicemente aggiungendo componenti hardware in più al cluster Hadoop.
Hadoop è agnostico a quale tipo di dati si memorizza. rompe i dati in parti gestibili, le replica, e distribuisce
copie in tutti i nodi del cluster in modo da poter elaborare i dati in modo rapido e affidabile in seguito. È ora
possibile condurre analisi che consuma tutti i vostri dati. Tali aggregati, riassunti e le relazioni possono
essere esportate in qualsiasi altro sistema con i file raw, JDBC, o connettori personalizzati.
C-7. Come possono gli utenti all'interno di un'organizzazione interagire con
Hadoop?
Una delle cose interessanti su Hadoop è che espone grandi quantità di dati in un insieme diversificato di
utenti all'interno dell'organizzazione. Crea e guida una cultura di dati, che a sua volta consente ai singoli a
tutti i livelli per prendere decisioni di business migliori.
Quando un DBA progetta e ottimizza una banca dati, che considera molti fattori. Prima di tutto è la
struttura dei dati, poi, i modelli di accesso per i dati e le visualizzazioni e i rapporti necessari dei dati.
Queste prime decisioni limitano i tipi di query ai quali il database è in grado di rispondere in modo
efficiente. Dato che gli utenti aziendali richiedono piu visibilità sui dati, diventa una lotta costante per
mantenere le prestazioni e fornire nuovi report in modo tempestivo. Hadoop consente a un amministratore
di database di ottimizzare il database per il suo carico di lavoro primario, e regolarmente esportare i dati
per le analisi.
Una volta che i dati precedentemente bloccati in sistemi di database sono disponibili per una facile
l'elaborazione , i programmatori li possono trasformare in un qualsiasi numero di modi. Essi possono
creare query più espressivi e generare più dati , un CPU(Central Processing Unit) segnala ad alta intensità
senza alcun impatto le prestazioni del database di produzione. Possono costruire pipelines che sfruttano i
dati provenienti da molte fonti per i processi di ricerca, Per lo sviluppo e il business. Ci sono delle
formazioni online per aiutare i programmatori a ad interagire con Hadoop.
Ma lavorare a stretto contatto con i dati non si ferma agli amministratori di database e programmatori.
Fornendo semplici interfacce di alto livello, Hadoop consente agli utenti meno tecnici per chiedere
rapidamente, ad-hoc domande su tutti i dati in azienda. Questo permette a tutti, da responsabili di
prodotto, agli analisti, ai dirigenti di partecipare, e guidare una cultura incentrata sui dati.
25
C-8 . Come faccio a capire e prevedere i costi di gestione Hadoop?
Una delle cose belle di Hadoop è che comprendere i costi in anticipo è relativamente semplice. Hadoop è
un software gratuito e funziona su hardware commodity, che include fornitori di cloud come Amazon. È
stato dimostrato per scalare oltre decine di petabyte (PB). Ancora più importante, lo fa con prestazioni e
costo lineari .
Armati con la dimensione iniziale dei dati, il tasso di crescita di tali dati, e il costo per TB utilizzabili, si
dovrebbe essere in grado di stimare il costo del cluster Hadoop. Si Potra anche sostenere i costi operativi,
ma, perché il software è comune a tutte le macchine, e richiede poco per-macchina messa a punto, la
bilancia dei costi operativi sub-lineare.
D - Le applicazioni
Le applicazioni verano esposte in 2 grandi parti ,le applicazioni analitiche e le applicazioni relative a certi
settori.
D-1. Le applicazioni analitiche
D-1.a Le applicazioni basate su attribuzioni
Le applicazioni basate su attibuzioni mirano ad attirbuire “credito ”per un particolare evento a una serie di
attività o transazioni in un processo complesso e a piu fasi .Queste applicazioni devono recuperare,
allineare e analizzare le serie di attività,prendendo in considerazione fattori quali frequenza,
sequenza,attualità, soglie e perdità di efficacia nel tempo trascorso tra le attività al fine di accreditare un
valore a sciacuna attività. ecco alcuni esempi basate su attribuzioni:
-
applicazioni per l’efficaccia del marketing multicanale,grazie alle qualigli esperti del settore tentano di
attribuire credito per una vendità su canali di marketing. Si tratta di un aspetto particolarmente rilevante
rispetto a vari annunci pubblicitari visualizzati,siti web e ricerche tramite parole chiave.
-
Applicazioni di attribuzione relative ai partner ,grazie alle quali le società commerciali tentano di
quantificare il contributo dei vari partner in transazioni aziendali complesse e a piu fasi.
-
Applicazioni di attribuzione relative al trattamento medico, grazie alle quali le organizzazioni di
assistenzasanitarie tentano di valutare l’incidenza di varie cure e medecinali sull’esito della terapia
26
D-1.b le applicazioni basate su suggerimenti
Le applicazioni basate su suggerimenti individuano e generano serie di utenti e prodotti simili in base a
comportamenti,dati demografici oaltri attributi percepibili.le applicazioni analizzano le transazioni associate
a questi set per generare tendenze che quantificano la forza delle relazioni tra gli utenti e i respettivi
comportamenti e preferenze. A partire dalle tendenze rilevate,le applicazioni riescono a fornire
suggerimenti su prodotti(come nel caso Amazon e netfix) o persone (come accade con linkedln e
facebook).alcuni esempi di aplicazioni basate su suggerimenti:
-applicazioni per l’individuazione di pubblicità mirateai clienti che suggeriscono segmenti di audience di
riferimento “simili” in base a comportamenti e prodotti acquistati in passato(ad esempio campagne efficaci
nel caso delle “mamme omnipresenti” hanno un’alta probabilità di andare a segno con le ”nuove nonne”)
-applicazioni per suggerimento sui prodotti che consigliano prodotti complementari sulla base degli
acquistati effettuati da utenti simili in un determinato periodo di tempo (ad esempio è probabile che chi ha
acquistato una nuova casa in una certa zona comprerà anche una nuova lavasciuga entro tre mesi
dall’acquisto della casa).
d-1.c APPLICAZIONI BASATE SU PREDIZIONE E PREVISIONE
Le aplicazioni basate su predizioni e previsione acquiscono un’ampia gammadi variabili, metrique e
dimensioni,a supportodei processi decisionali in svariati scenari di mercato.queste applicazioni utlizzano al
meglio le tecniche statistiche e di date mining per estrarre dalla moltitudine di variabili solo le variabili(o
combinazioni di variabili)piu efficaci per prevedere le prestazioni in particolari situazioni.Considerato
l’orrizonte temporale di alcune di queste decisioni (come quelle sui prezzi);l’accesso ai dati a bassa latenza
e le funzionalità di analisi interne ai database sono essenziali per il successo
-
Le applicazioni predittive avanzate integrano valutazioni su rischi e dati sensibili,affinchè i
responsabili delle decisioni possano determinare le variabili più impotantinel processo
decisionale.Ad esmpiose si ritiene che una certa variabile sia cruciale per una decisione, è possibile
investire maggiore rissorse per assicurarsi che tale variabile venga valutata in modo preciso e
completo .alcuni esempi di applicazioni basate su predizione e/o previsione :
-
-applicazione per il calcolo del tasso di abbandono dei clienti che prevedono la possibilità di
contrasti con questi ultimi in base a fattori come attività di utlizzo,richieste di supporto,andamento
dei pagamenti e influenza sociale degli amici.
-
-Applicazione per la manutenzione dei prodotti che prevedono guasti delle apparecchiature in base
a informazioni sull’utilizzo dei prodotti (in particolare le informazioni attualmente fornite dai
dispositivi dati
27
integrati), record degli interventi di manutenzione e informazione generali sulle prestrazioni.
-Applicazioni relative alle prestazionei degli dipendenti che prevedono le prestazoni di un potenziale
collaboratore in base a fattori quali formazione,posizione socio-economica,ruoli professionali
precedenti,stato civile e determinate risposte psico-comportamentali
-
-Applicazioni relative alle prestazioni degli studi clinici che modellano i risultati di vari edecinali in
base alla sperimentazione clinica,consentendo ad un’azienda di comprendere l’efficaccia di
determinate terapie ed evitare conseguenze catastrofiche in caso di utilizzo di particolari
farmaci.cio assume un’importanza ancora maggiore quando si tenta di attribuire i risultati per piu
trattamenti e medicinali
-
Applicazione per la gestione del rendimento ,del ribasso dei prezzi e del mercandising eper
l’ottimizzazione dei prezzi, in grado di creare modelli dipendenti dal tempo utilizzati dai
responsabili delle decisioniper comprendere come e quando aumentare o ridurre i prezzi tenendo
conto delle condizioni attuali della domanda e dell’offerta.questi tipi di applicazioni sono
particolarmente comuni nel caso dei prodotti di base (quali merci deperibili, biglietti aerei, camere
di alberghi,capi di abbigliamento e biglitto per eventi sportivi),il cui valore si azzera in un
determinato momento.
D-1.d APPLICAZIONI BASATE SU APPROFONDIMENTI
Le applicazioni basate su approfondimenti fanno leva su tecniche statistiche e data mining per identificare
situazioni o comportamenti ”insoliti”. Le applicazioni avanzate basate su approfondimentisono in grado di
eseguire analisi complesse in un’intervallo variabile da centinaia a magliaia di dimensioni di busness.la
crescente importanza di queste applicazioni è legata al volume in continuo aumento dei dati dettagliati
provenienti da fonti quali clic nelle pafine web, sensori RFID a appliance in rete.Alcuniesempi di applicazioni
basate su approfondimenti :
-
Applicazioni relattive alla riduzione e alla distribuzionedei prodotti che monitorano costantemente
sensori e dati RFID per individuare discrepanze tra la posizione del prodotto ipotetica e reale.
-
Applicazioni contro le frodi che monitorano costantamente le transazioni finanziarie per individuare
comportamenti “insoliti” che possono essere indice di attività frodulente.Applicazioni di
questotiporisultano utili per le carte di credito, i conti correnti e le richieste assicurative e di
assistenza medica.
28
-
Applicazioni antiriciclaggio che monitorano costantemente il flusso di contante per individuare
comportamenti “insoliti” associati a potenziali attività di riciclaggio, ad esempio un numero
eccessivo di transazioni di scarso valore realizzate in contanti.
D-1.e APPLICAZIONI BASATE SU BENCHMARK
Le applicazioni basate su benchmark utilizzano al meglio l’analitica che confronta le prestazioni di un’entità
rispetto a una baseline.la baseline di confronto può essere uno standard di settore,un periodo ou un
evento precedente (ad esempio una campagna di marketing). Ecco alcuni esempi di applicazioni basate su
benchmark:
-
Applicazioni relative alle quote di mercato che forniscono dati su quote di mercato e portafoglio.
Ad esempio, le aziende che creano siti web possono fornire dati e analisi sugli investimenti
pubblicitari (“share of voice”), per consentire a inserzonisti e agenzie di confrontare le spese
sostenute nel campodel marketing con quelle della concorenza.
-
Applicazioni
basate su benchmark competitivo che mettono a confrontovle prestazioni di
un’azienda con un’aggregato di concorrenti o con la media del settore. ciò mette a disposizione
delle aziende una baseline per confrontare le rispettive prestazioni finanziarie o di mercato.
-
Applicazioni basate su benchmark che confrontano le prestazioni di una campagna di marketing in
corso con quelle di una campagna o evento di marketing precedente e/o simile.Ad esempio,
un’azienda potrebbe voler confrontare le prestazioni della campagna “promozione di ferragosto” in
corso con quelle dell’indentica campagna dell’anno prima.Gli utenti potrebbero voler tenere
traccia della percentuale di vendite totali per ogni giornata della campagna e confrontare
quotidianamente le aree e i prodotti con le prestazioni migliori e peggiori.
D-2 Le Applicazioni settoriali
D2.a Nella finanza
Il settore dei servizi finanziari ha adottato Hadoop per una serie di ragioni d'uso che ha un impatto sui
ricavi, costi, rischi e conformità.
Servizi finanziari casi d'uso per Hadoop sono:
Intuizioni dei clienti - i grandi fornitori di servizi finanziari hanno adottato presto Hadoop per migliorare il
profilo di analisi dei clienti per determinare l'eleggibilità per il capitale azionario, le assicurazioni, i mutui o
il credito.
29
L’Individuazione delle frodi e analisi - Hadoop fornisce un metodo scalabile per rilevare più facilmente molti
tipi di frodi o la prevenzione delle perdite, e di eseguire una gestione efficace dei rischi. Hadoop è stato
utilizzato anche per sviluppare modelli che predicono gli eventi futuri di frode.
Micro targeting - Le banche hanno numerosi sistemi di dati diversi (ad esempio, prestiti, mutui,
investimenti) che devono essere aggregati al fine di fornire un up-to-date vista sulla redditività del cliente,
CRM coerente e consigli sui prodotti personalizzati e offerte.
Risk Mitigation - Hadoop è utilizzato per analizzare le tendenze del mercato potenziale e capire le
possibilità future di ridurre il rischio di posizioni finanziarie, le attività di portafoglio totale, e ritorni di
capitale.
Scala di analisi del web - Hadoop è utilizzato per analizzare ciò che viene detto sul web in generale e sui
social network in particolare. il sentimento può essre applicato alle singole imprese o ai prodotti o riflettere
soddisfazione generale del cliente. Questo ha il potenziale di migliorare la commercializzazione ai clienti
esistenti attraverso una migliore targeting.
L’Analisi del commercio - Le aziende di servizi finanziari utilizzano Hadoop per analizzare i flussi giornalieri
di dati delle transazioni, in combinazione con le notizie non strutturate o sociale feed dei media, o di backtestare i loro algoritmi di negoziazione.
D-2.b SANITA’
Oggi le aziende sanitarie stanno utilizzando Hadoop per costruire piattaforme sanitari in grado di
memorizzare e analizzare grandi quantità di dati, costituito da miliardi di oggetti. Le organizzazioni devono
anche essere in grado di cercare e analizzare diverse fonti di dati, quali popolazioni di pazienti, protocolli di
trattamento, e gli esiti clinici per accelerare la scoperta e la comprensione.
Applicazioni sanitarie basandosi su Hadoop includono:
scambio di informazioni sulla salute - I provider devono gestire e condividere i fascicoli sanitari elettronici
a partire da fonti di dati misti (ad esempio, le immagini, i trattamenti, la demografia) tra la comunità
medico-sanitario.
- Migliorare la qualità dei servizi sanitari e ridurre il numero di ospedalizzazioni.
Sicurezza dei farmaci - Gli operatori sanitari hanno bisogno di capire la sicurezza dei farmaci e la tossicità
(ad esempio l'interazione tra farmaci).
Sviluppo dei farmaci- I ricercatori hanno bisogno per rendere il processo di sviluppo dei farmaci più
efficiente riducendo il tempo di prova e riducendo il tempo speso per farmaci con una bassa probabilità di
successo al fine di ottenere entrate di farmaci sul mercato più rapidamente.
30
Medicina Personalizzata – mirata al sequenziamento genetico dei pazienti e dei tumori, nonché biomi
intestinale, sta cominciando a fornire progressi reali nella scelta del trattamento e la prognosi dettagliata.
Tuttavia, questo causa una esplosione in formati di dati.
N-of-1 Studi – la raccolta massiva di dati su larga scala sta consentendo altamente l’ esaminazione
empirico dettagliato e la previsione di risposte individuali di trattamento del paziente, consentendo
indagini sul procedere con le popolazioni di prova drammaticamente più piccoli.
D-2.c. Industria Manifatturiera
Hadoop è stato ampiamente adottato dall'industria manifatturiera per una vasta gamma di usi che impatta
la linea di fondo, tra cui:
La Gestione del servizio - La proliferazione dei sensori e la capacità di analizzare in modo efficace
corrispondente feed di dati di grandi dimensioni in sedi dei clienti e SKU di prodotto, ha reso la gestione del
servizio più efficace ed efficiente. Ad esempio, i produttori automobilistici possono equipaggiare le auto
con una varietà di sensori per aiutare i rivenditori e centri di assistenza a capire l'utilizzo del veicolo e gli
obblighi di servizio, ma anche sfruttando dati demografici dei clienti per migliorare l'offerta mirata e la
sensibilizzazione (es. assicurazioni).
Le Operazioni - Hadoop può anche migliorare il processo di post-vendita di manutenzione dell’'industria
manifatturiera con l'aggiunta di sensori per attrezzature per fornire livelli crescenti di dati sulle operazioni
di questa apparecchiatura. Raccolta e analisi dei dati permette di migliorare il processo di manutenzione e
aumentare la qualità complessiva dei prodotti, riducendo i costi.
D-2.d Media
Nei media della concorrenza e del paesaggio di intrattenimento, l'efficacia delle informazioni gioca un ruolo
fondamentale. Le aziende si basano su Hadoop per le seguenti applicazioni:
Insights client - Media e società di branding hanno bisogno di comprendere meglio i segmenti di mercato e
delle preferenze dei consumatori e comportamenti personali per abbinare meglio ogni marchio al suo
segmento, e aiutare le aziende a migliorare le vendite. Questo può consentire al test marketing di essere
fatto in tempo reale o consentire che l'ottimizzazione segmentato sia basata su dati reali, invece di
decisioni intuitive.
sistema decisionale di marketing- Le aziende hanno bisogno di elaborare tutti i dati disponibili per fornire
pubblicità on-line, di marketing e agenzie la capacità di meglio identificare e rivolgersi ad un pubblico
31
personalizzato ad alto valore aggiunto che condividono stili di vita simili, i valori e le abitudini di acquisto.
Molte di queste decisioni devono essere adattati in tempo reale per consentire rapidi cambiamenti di
tendenza da rilevare.
Customer lifecycle management - Hadoop viene utilizzata per ottimizzare la fidelizzazione dei clienti e
l'adozione di nuovi prodotti all'interno di cavo, via satellite e di altri produttori di servizi di media. i
programmi di gestione della migrazione dei clienti devono essere basati su quasi in tempo reale , i
meccanismi di rilevazione di dati devono fornire i dati della perdita di un cliente in un periodo di tempo
molto breve.
contenuti Web effetivo e personale - Le organizzazioni stanno utilizzando Hadoop per regolare il contenuto
servito ad ogni utente, per attrarre e mantenere gli utenti, e quindi migliorare le vendite e il volume di
utilizzo.
Prezzi di analisi e modello di scelta - Le aziende stanno studiando modi per sfruttare Hadoop per
determinare in modo dinamico dei prezzi per tutto, dai biglietti di gioco, musiche e video. A titolo di
esempio, i prezzi dei biglietti di gioco sono ora basate su un ampio numero di variabili come il tempo, le
rivalità di squadra, ecc Oltre al prezzo, l'intero processo di vendita può essere ottimizzato, compresa
l'offerta di prodotti di supporto, add-on e up-sells
Esperienza analitica del cliente - Si tratta di una zona di iper-crescita per Hadoop. Gli esempi includono i
fornitori di gioco online che registrano tutte le interazioni dell'utente con il sistema (dal disboscamento
estensivo), e determinano come gli utenti stanno reagendo alle varie funzionalità in modo da essere in
grado di adattare le offerte future. Un altro esempio è i siti di social networking che sfruttano tutti i dati ed
i sistemi di interazioni con i clienti per capire le reazioni alle nuove funzionalità e processi, e quali nuovi
prodotti sarà meglio sfruttare le connessioni sul sito web. Queste caratteristiche possono essere disponibili
in qualsiasi momento e può essere il risultato di cambiamenti in qualsiasi parte del sistema - dai sistemi dei
clienti di fronte ai più profondi i sistemi back-end. Imparare a conoscere l'effetto che questi sistemi hanno
sull'esperienza dell’ utente richiede la registrazione e analisi approfonditi, spesso con interfacce in tempo
reale di sistemi decisionali .
Targeting marketing offers - Le aziende devono determinare quali offerte di marketing dovrebbe essere
fatto per ogni target di riferimento. Hadoop è utilizzato per ottimizzare il posizionamento degli annunci,
offerte di marketing e ottimizzare di più, soprattutto se la commercializzazione del segmento semplice non
è sufficiente.
32
D-2.e Materie prime e naturali
Hadoop è stato usato per una serie di indagine sulla distribuzioni delle risorse naturali. Gli esempi
includono:
Elaborazione e analisi di informazioni sismica – le società di risorse naturali stanno utilizzando Hadoop per
elaborare e analizzare informazioni sismiche nei campi petroliferi. La capacità di analizzare una notevole
quantità di dati per prendere decisioni più intelligenti sulla perforazione, ecc, possono avere un impatto
dimostrabile sui costi e ricavi .
Risk Management e Pianificazione agricola – Le compagnie di agricoltura hanno bisogno di sapere come le
diverse colture sono suscettibili di reagire a diversi tipi di terreno, livelli d'acqua, calore e modelli, al fine di
prendere meglio decisioni sulla semina e la raccolta . La lavorazione e la combinandodel le informazioni
dalle immagini di sorveglianza aerea, in campo reti di sensori, serie di dati meteorologici e le performance
passate richiede calcoli su dati di scala molto vasta impostati utilizzando sistemi come Hadoop.
L'area del commercio e dei trasporti crescita per Hadoop sta vivendo un’iper-crescita. Gli esempi includono:
Gestione dell'inventario - I rivenditori hanno bisogno di una migliore comprensione delle dimensioni della
spesa del cliente e la struttura in tempo reale, l'accesso ai livelli di inventario, e la comprensione del
commercio e l'efficacia delle promozioni per perfezionare le future campagne pubblicitarie e allineare i
livelli di inventario per località.
Conservazione del carburante - Linee aeree e aziende di autotrasporti utilizzano Hadoop per monitorare il
consumo di carburante in tutta la loro flotta per determinare i fattori chiavi per il consumo di carburante,
(ad esempio, il tipo di luogo, lo stile del pilota di volo, le condizioni meteorologiche.) Al fine di migliorare
l'efficienza e ridurre i costi.
Targeted Marketing - Hadoop viene distribuito per aumentare il volume delle vendite e tassi di conversione,
ridurre stock-out e tempi di consegna, e più efficacemente competere con alternative web-based opzioni.
Capacità di previsione - Le imprese devono avere una visione aggiornata di inventario al fine di consentire
strumenti in tempo reale dei prezzi che incorporano proiezioni e il comportamento effettivo di mantenere il
costo variabiledell’inventario basso.
D-2.f Servizi
Le aziende di servizi di oggi stanno utilizzando Hadoop per costruire piattaforme in grado di memorizzare e
analizzare grandi quantità di dati, costituito da miliardi di oggetti. I benefici per l'adozione di Hadoop
includono:
33
-
Operazioni di analisi Smart Grid fornire sensori in posizioni di raccogliere dati e monitorare in modo
intelligente e potenzialmente regolano la distribuzione di energia e il loro utilizzo. Capacità di
sfruttare le utilità di dati degli utenti finali ai dispositivi che generano (ad esempio, sensori di
energia), per meglio comprendere i modelli di utilizzo e di prezzo e di energia elettrica rotta di
conseguenza, consentendo maggiori risparmi. La gestione della rete in caso di variazione di sistema
causati da cambiamenti della domanda esterna, come ad esempio errori di tempo o sotto-sistema,
richiede l'elaborazione di set di dati estesi in tempi molto brevi.
Risk Management - imprese di grandi dimensioni utilizzano Hadoop per memorizzare e analizzare i dati dei
sensori ambientali per il test delle infrastrutture critiche della rete energetica intelligente e singoli
generatori. Essi sono in grado di migliorare le prestazioni della rete, eseguire la scansione attraverso i
registri storici forense dopo si verifica un problema, individuare le debolezze e per aiutare a prevenire
interruzioni di corrente.
D-2.g Pubblica Amministrazione
Agenzie di intelligence di oggi hanno i dati provenienti da tutto il mondo in tutti i tipi di formati - e hanno
bisogno di una soluzione che può fare sia l'elaborazione molto semplicemente ed estremamente complessa
le attività di analisi dei dati e della rete.
Intuizioni dei clienti - Le industrie della difesa e di intelligence hanno bisogno di raccogliere e confrontare
informazioni provenienti da fonti diverse, al fine di gestire le minacce alla sicurezza, risolvere le indagini e
identificare potenziali problemi di sicurezza. Le velocità di trasmissione dati e dei volumi disponibili da fonti
classificate e aperte sono prodigiose come lo sono le esigenze di calcolo conseguenti. Adozione Hadoop
nelle agenzie di intelligence è stata significativa.
Di rilevamento delle frodi - la domanda di servizi sociali sono in aumento a causa di invecchiamento della
popolazione e alta disoccupazione. Hadoop può aiutare a dare la caccia e catturare addebiti fraudolenti e
gestire le nuove tendenze nell'utilizzo servizio legittimo.
Destinati alle micro - Hadoop ha aiutato applicazioni governative, aumentando la quantità di informazioni
disponibili per identificare e ridurre l'attività criminale.
Operazioni - La determinazione del modo più efficace per allocare le risorse per raggiungere gli obiettivi
operativi si traducono in numerosi piloti Hadoop. Un esempio sta ,aiutando le forze di polizia, tese da
bilanci pubblici ristretti, di allocare in modo più efficace le pattuglie per massimizzare il loro effetto nel
prevenire la criminalità.
Ricerca e innovazione – La NASA e altri istituti di ricerca hanno bisogno di mappare l'universo, sia per scopi
34
di ricerca e per scopi più pratici, come ad esempio una migliore pianificazione delle rotte satellitari e punti
di atterraggio che identificano sulla luna. La ricerca astronomica e grandi sperimenti di fisica generano
enormi insiemi di dati mettendo notevoli esigenze in termini di stoccaggio e le infrastrutture di
trasformazione.
E – CONCLUSIONI
Internet e il cloud computing e in generale il concetto di condivisione e collegamento tra dati (siano essi
database o documenti) hanno in qualche modo creato il “problema” dei big data: più cose mettiamo
insieme e/o nella nuvola, più queste crescono.
Quindi oggi, di sicuro, i Big Data sono un tema di frontiera e per il settore IT e della consulenza. E di sicuro ci
sono esigenze crescenti di progettare, gestire, trattare grandi quantità di dati.
Ma proprio perché si è ancora una fase sperimentale e di ricerca, permangono vari punti dubbi: riguardo
alle tecnologie, alle possibili “killer application”, ad un utilizzo basico a livello di utenti.
Come per altre aree del mondo ICT, è probabile che serva un po’ di tempo per assistere ad un ordine
naturale, una sorta di “selezione di Darwin” su prodotti e competitor; e, lato domanda, una maggiore
comprensione delle potenzialità e delle applicazioni possibili.
Certamente, in questa fase, c’è spazio per ricerca, studio, tentativi e forse anche per l’emergere di nuovi
modelli di business.
35
BIBLIOGRAFIA
“Challenges and opportunies with big data” di LEADIND RESEARCHES ACROSS THE UNITED STATES
“Hadoop scalable flexible data storage analysis”
di Mike olson
“Il vantaggio competitive derivante dal cambio tra big data e funzionalità di analisi avanzate”
By schmarza Bill
Cloudera.com
Virtuare machine
Emc.com
3.hp.com
36
Scarica