L'aumento della produzione di dati nel panorama informatico ha segnato da anni la nascita di vere e proprie realtà che basano le loro decisioni su informazioni estrapolate da elaborazioni intelligenti sui “dati'”. Le fonti che producono dati sono sempre di più, aumentano ogni giorno in maniera esponenziale. La quantità di dati prodotta supera di gran lunga le aspettative di qualche anno fa. L'obiettivo ora non è più quello di generare dati precisi e derivanti da dispositivi nuovi. Al giorno d'oggi qualsiasi smartphone possiede centinaia di sensori, ogni dispositivo ha accesso a piattaforme che producono flussi impensabili di dati connessi a informazioni preziose per realtà che hanno a che fare con il settore. Il problema odierno è come elaborare questi dati, come gestire questi flussi infiniti e imprevedibili di dati provenienti da fonti sconosciute e sparse. Una realtà informatica deve essere pronta a questo, una realtà informatica non può permettersi di lasciare indietro l'occasione di ricavare qualcosa da tutto questo. Così come i dati anche questa tesi intraprende un percorso. Il percorso parte affrontando nel primo capitolo i concetti base del panorama informatico che affronta queste tematiche. Il primo capitolo infatti fornisce un background generale sul dato in sé e le sue caratteristiche; prosegue chiarificando dove i dati vengono salvati e in che modalità. Ad un livello più tecnico viene spiegato con quali architetture fisiche e con quali pattern progettuali vengono gestiti ed elaborati questi dati in maniera efficiente. Dopo l'infarinatura generale vengono prese in esame una selezione di tecnologie moderne che manipolano flussi di dati di grandi dimensioni al fine di metterne in chiaro i vantaggi e le caratteristiche. Vengono presentati per ognuna di esse i concetti alla base, le motivazioni e gli obiettivi che rendono tutto ciò indispensabile per la creazione di un sistema complesso di elaborazione di dati.