All’inizio di dicembre sono stato nella Silicon Valley e ho incontrato diverse aziende che si occupano di Hadoop. E’ da allora che mi chiedo quanto sia veramente accessibile oggi hadoop e quanto lo diventerà in futuro.

Mi spiego

effetto matrixL’accesso ai Big Data Analytics è fondamentale per qualsiasi business del futuro che avrà a che fare con il web ma lo è già oggi anche per le aziende medie che stanno iniziando a raccogliere dati dagli oggetti che producono.

Voglio fare un esempio banale che dovrebbe dare un’idea di quello che stiamo per vivere un po in tutte le aziende. Un mio cliente produce un particolare tipo di attrezzatura, produce 160.000 macchine l’anno (in aumento), ognuna di queste è ora collegata ad internet e invia a casa informazioni ogni 15 minuti sul suo stato, chi la sta usando, come ,ecc. Queste macchine sono in produzione da oltre 5 anni, immaginate quindi la mole di dati che vengono prodotti.

All’inizio questa azienda usava i dati solo per i log e la conseguente manutenzione, il classico call-home support, ma poi le cose sono cambiate e si è iniziato a produrre applicazioni (in casa, un altro fatto importante che già da solo meriterebbe un approfondimento). Una serie di applicazioni semplici, banali, ma che con il tempo vengono migliorate ed affiancate ad altre. Al momento questa azienda butta via la stragrande maggioranza dei dati, colleziona tutto ma butta via tutto quello che non serve al momento. Mancanza di risorse, di budget e forse anche di strumenti semplici che possano gestire in autonomia rendono l’ingresso di nuove tecnologie abbastanza complicato. Stanno quindi continuando ad utilizzare MySQL (fino a quando i numeri lo consentiranno).

Hadoop, o forse in questo caso NoSQL, potrebbero essere strumenti adatti a risolvere questo tipo di problemi ma, come dicevo il primo scalino sembra insormontabile.

Hadoop è complicato

Hadoop è uno strumento, o meglio una piattaforma che gestisce una serie di strumenti, che di per se non è molto complicata. La complicazione nasce dal fatto che è tutto nuovo e la tecnologia è in grande evoluzione. Questo significa che bisogna imparare molte novità e poi stare al passo con il cambiamento… che si traduce in altro studio! (e investimenti)

Fino a poco tempo fa il problema di Hadoop era anche che per utilizzarlo era necessario conoscere tecniche di programmazione e linguaggi specifici, spesso diversi da quelli che si usano tradizionalmente nell’azienda, ma ora anche questo scoglio sembra essere superato grazie a nuovi sistemi che permettono di utilizzare linguaggi più tradizionali per fare quello che ci serve.

La complessità di Hadoop risiede comunque in alcuni elementi particolari:
Il design dell’infrastruttura: Che se non viene fatto correttamente può compromettere le prestazioni e il corretto funzionamento dell’architettura, soprattutto nel medio/lungo termine. (un po come succede con qualsiasi software che gestisce dati… ad esempio, tutti sono in grado di installare Oracle oggi: basta fare avanti-avanti-avanti con il wizard di installazione, ma farlo funzionare bene quando ci sono dentro tanti dati è un altro film, no?)

La gestione dei dati: Hadoop funziona al contrario di un DB tradizionale. Non c’è uno schema predefinito e si cerca di buttare tutto nel “calderone” creando quindi il famoso data lake. Quando i dati servono si “normalizzano” o comunque si creano delle relazioni al momento e si fanno le dovute analisi. Questo permette di non buttare via mai nulla e di avere infinite possibilità di analisi per il futuro ma, ovviamente, bisogna avere le idee molto più chiare su quello che si fa e su cosa prendere in considerazione quando si fanno le analisi. E’ per questo che la figura del Data scientist è così in voga (e costosa).

What is a data scientist? from Juku on Vimeo.

La semplificazione

Entrambi i punti che ho descritto stanno comunque vedendo un certo interesse per la semplificazione che, di solito, aiuta anche ad una maggiore adozione dei prodotti.

qubole-logoAd esempio, Qubole è una startup che sta lavorando per semplificare al massimo l’infrastruttura Hadoop e fornirla in modalità as-a-service. Il prodotto, utilizzato da utenti che hanno fra 10 e 1800 nodi, gira su cloud pubblici come, ad esempio, Amazon ed utilizza lo storage ad oggetti nel backend. Un servizio del genere è ottimo sia per le startup che per gli utenti relativamente piccoli. Invece di acquistare e gestire hardware, questi attivano hadoop sul cloud e lo usano in funzione di quello che gli serve veramente. Non doversi occupare di nulla sia per quanto riguarda l’infrastruttura in se ma anche per gestire e backuppare i dati è una semplificazione tremenda.

headerAllo stesso tempo, altri stanno lavorando sugli strati superiori per dare strumenti più semplici dal lato di gestione dei dati. Aziende come Elasticsearch stanno investendo molto su strumenti che permettono di fare ricerche, praticamente in tempo reale, su grandi quantità di dati con l’obiettivo di esplorare e poter analizzare in tempo reale quanto sta succedendo. Questo tipo di prodotti si interfaccia spesso ad un cluster hadoop, e rende veramente semplice indicizzare e gestire grandissime quantità di dati. L’architettura è sempre scale-out dando a tutti la possibilità di partire con piccolissime infrastrutture (anche queste eventualmente sul cloud) per poi crescere in funzione delle esigenze.

platfora logo Apr2013 (1)Altri, come Platfora, stanno costruendo degli strumenti molto completi che permettono di abbattere il tempo di deploy di applicazioni di analytics da mesi a settimane. I loro tool mi hanno stupito per la facilità d’uso e per la potenza che hanno. Una potenza tale che, anche grazie alle capacità di hadoop negli strati inferiori, permettono di fare tanti esperimenti e capire meglio come correlare i dati fra di loro. Fra l’altro, così semplice da usare che non servono scienziati per poterlo usare efficacemente da subito.

Fare a meno del data scientist?

iStock_000019159342SmallNon voglio semplificare troppo, ma il data scientist è una figura professionale molto costosa che molte piccole/medie aziende non si possono permettere anche se il big data sarebbe uno strumento efficace per il loro business.
Spesso, chi lavora in azienda e conosce tutti i dettagli sui suoi prodotti e su quello che fanno già fa business analytics. Il suo problema è che lo fa con un foglio Excel o con Access e quindi si può concertare su pochi, macro, dati. Se avesse molti più punti i suoi grafici sarebbero molto più ricchi di informazioni che oggi non ha.

Allo stesso tempo, se l’azienda ha già adottato strumenti tradizionali per il business analytics sa quanto gli costa gestire la complessità che questi introducono e sa quanto sono rigidi nel momento in cui sono richiesti dei cambiamenti su come vengono organizzati i dati o su come devono essere prelevati. I tempi e i modi di realizzazione di questi strumenti non sono più allineati con le necessità imposte dal business di oggi.

Con l’ausilio di strumenti più semplici e tanti dati è possibile fare molto di più e prima. Non dico che una figura professionale esperta non sia comunque necessaria, ma è vero che spesso questa figura potrebbe essere utilizzata meglio e più proficuamente se lo strumento lo permettesse.

Nota finale

La “democratizzazione” degli strumenti big data è fondamentale per le piccole e medie aziende. Questo allarga anche il mercato e crea molte più opportunità per tutti.
Alcuni operatori, come Cloudera per esempio si stanno concentrando sull’infrastruttura pura: potrebbero essere considerati alla stregua dei produttori di DB relazionali se dovessi fare un paragone. Altri stanno invece lavorando a tutti gli strumenti che ci girano sopra, fino alle applicazioni.

E’ un mondo relativamente nuovo e in grande evoluzione ma sicuramente è da tenere d’occhio e investirci a tutti i livelli.

Disclaimer: Sono stato invitato a questo meeting da Condor Consulting Group e loro hanno pagato per il viaggio e l’alloggio. Non sono stato ricompensato in alcun modo per il mio tempo e non sono in obbligo di scrivere articoli. In ogni caso, i contenuti di questi articoli non sono concordati, rivisti o approvati dalle aziende menzionate o da altri al di fuori del team di juku.