Grande novità in campo Big Data annunciata nei giorni scorsi durante l’AzureCon 2015. La novità è Azure Data Lake un servizio che mette insieme tutto quello che serve per creare una soluzione Big Data iper-scalabile nel cloud: HDInsight, Hadoop, Spark, Storm HBase e, novità assoluta, U-SQL un nuovo linguaggo per manipolare in modo distribuito i dati.
L’idea è quella di permettere ai Data Scientists di potersi focalizzare sui problemi da risolvere piuttosto che perdere tempo a mettere in piedi Hadoop & Co. che, per chi ha provato, è un lavoro tutt’altro che semplice e veloce. La cosa sembra in effetti in sovrapposizione con HDInsight e le varie VM con distribuzioni di Hadoop stesso, ma questo servizio ha qualcosa in più, come vedrete tra brevissimo.
Qui potete trovare un bel post che racconta anche da dove è nato tale servizio (Scope, Dryad e Cosmos) ed anche quanto Microsoft sia ormai totalmente aderente al mondo Open-Source, tanto da essere uno dei maggior committer di Hadoop (con particolare evidenza di contributi su Hive, ORC e Spark):
Behind the scenes of Azure Data Lake: Bringing Microsoft’s big data experience to Hadoop
e c’è anche questo video su Channel9:
Azure Data Lake: Making Big Data Easy
Per quanto riguarda invece il “nuovo” linguaggio U-SQL questo nasce dall’idea di avere un linguaggio simile a SQL (quindi semplice, funzionale e ben conosciuto) ma che possa essere più espressivo di quanto lo è già SQL stesso, in particolare per quanto riguarda il caricamento e la manipolazione (Extract, Transform and Load, o, come va di moda ora Output) dei dati.
Sarebbe bello anche averlo come estensione a T-SQL Standard, no? Un post abbastanza dettagliato (tenendo conto che Azure Data Lake è ancora in Private Preview) si trova qui, scritto direttamente dall’amico Michael Rys, ora Principal Program Manager per i Big Data:
Introducing U-SQL – A Language that makes Big Data Processing Easy
Se volete invece leggere il paper (o meglio, uno dei documenti) che stan dietro a questa nuova soluzione, anche solo per curiosità personale, per capire come un prodotto della complessità di SQL possa evolvere nel tempo, potete leggere questo:
Per concludere indico anche che, ad onor del vero, non tutti sono cosi contenti di questa proliferazione di linguaggi SQL-Like, che in effetti creano una sorta di babele di liguaggi da imparare, rendendo sempre più complesso e costoso il processo di informatizzazione. In effetti, RDBMS ed il linguaggi SQL erano stati pensati proprio per evitare questa situazione….ma si sa, business is business e tanti saluti a tutti. Per avere sempre un’occhio quindi anche dal lato più accademico (usando il termine in senso positivo) date una lettura anche ai post di Fabian Pascal.
Ultima cosa, prima di buttarvi a pesce su servizi e soluzioni Big Data come questo, chiedetevi veramente se vi servono. Perchè se non avete almeno 100TB di dati e tanti soldi da spendere, per poter scalare fino a 30.000 (si, trentamila, non ho sbagliato) nodi, allora andate su un Fast Track o un APS che fanno quello che vi serve. Oppure ad un Azure DW se volete/dovete essere nel cloud.
Detto ciò, saper di poter avere a disposizione a costi accessibili (non bassi, attenzione!) un servizio del genere, sicuramente può far dormire tranquilli tutti, anche i più assetati di dati e performance.