Cloudera, fornitore globale di una piattaforma di analisi e gestione dei dati basata su Apache Hadoop e delle più recenti tecnologie open source, coopera con Microsoft per ridurre la pressione per gli sviluppatori di applicazioni che sfruttano Spark. Le due società, insieme ad altri protagonisti del mondo open source, hanno costruito un nuovo servizio Spark basato su REST, in licenza da Apache, denominato Livy, che si trova ancora in fase di sviluppo iniziale.
Livy permette alle applicazioni di interfacciarsi in modo semplice con Spark, di presentare i job e di recuperare i risultati in modo programmatico. Il fulcro di Livy è un server REST per l’invio, l’esecuzione e la gestione dei job e dei contesti di Spark. La sua API Client permette in modo dettagliato l’inoltro dei lavori Spark e il recupero dei risultati in modo sincrono o asincrono. I client possono utilizzare Spark come un servizio multi-tenant, e non devono più preoccuparsi dell’installazione, della configurazione o del monitoraggio. Livy fornisce Spark come un servizio multi-tenant insieme a isolamento della sessione, sicurezza e rappresentazione-utente.
I vantaggi principali offerti da Livy includono:
– Impatto ridotto nella fruizione di Spark – I client di Spark non richiedono installazione o configurazione per poter iniziare. È necessario solo un semplice client che comunica con un endpoint HTTP.
– Consentire l’utilizzo di Spark ad applicazioni di terze parti – Le applicazioni possono costruire con API client in Java, Scala e Python per basati su REST per l’invio di job dettagliati Spark, il recupero dei risultati e la gestione di SparkContexts (le API client di Scala e Python sono in fase di sviluppo). Spark può essere richiamato da applicazioni scritte in framework diversi come Django per Python, Play per Scala o Java. Inoltre, poiché è basato su REST, con qualche adattametno, è possibile anche sfruttare Livy da applicazioni scritte in linguaggi come Node.js o Go.
– Abilitazione di nuove architetture – Livy rende facile integrare Spark in ar un architetture orientate ai servizi o basate su microservizi che interagiscono in primo luogo attraverso REST.