Questo sito contiene link di affiliazione per cui può essere compensato

Home » Hi-Tech » Internet » Lavorare sui big data con il terminale e la riga di comando

Lavorare sui big data con il terminale e la riga di comando

Pubblicità

È da anni che la profezia di Hal Varian (notissimo studioso e Chief Economist di Google), cioè che la statistica sarebbe stata la scienza più sexy del futuro, si è dimostrata vera. Giocare con i numeri serve sempre di più. Anche perché apprendere l’informatica è solo la metà dello sforzo. Programmare per programmare non serve, ha più senso conoscere le logiche di business (o di altro tipo) che dovranno essere applicate al software. O, nel caso di quel che sta succedendo nei tempi moderni, conoscere il modo con il quale manipolare grandi quantità di dati.

Ecco dunque che nasce la Data Science, la scienza dei dati, con i Data Scientist, gli addetti ad immaginare e creare strumenti e soluzioni per manipolare big e non big data. Gente che deve conoscere molto bene la statistica, deve saper programmare e deve conoscere il dominio nel quale si applicano le trasformazioni dei numeri: cioè gli ambiti commerciali ed economici dove si lavora. In piena controcorrente rispetto all’idea dell’informatico che non conosce niente altro che non sia il software che deve scrivere, magari per front e back end di siti web complessi o app per grandi aziende.

Per questi data scientist, che magari imparano R (obbligatorio!) oltre a linguaggi come Python o Perl, e devono fare poco di più che non mettere assieme il programma per manipolare grandi, grandissime o enormi quantità di dati, i cosiddetti Big Data, nel tempo sono arrivate complesse soluzioni nel cloud, con supercomputer, macchine virtuali, sistemi di calcolo e varie altre soluzioni sempre più complesse.

Lavorare sui big data con il terminale e la riga di comando

Ecco che invece, pian piano, è nata una corrente, un movimento che va nella direzione opposta. E vede nell’utilizzo di altri, più semplici strumenti software, la soluzione ideale. L’idea di fondo è che in realtà i big data molto spesso non siano per niente big. Cioè: che per essere big i data devono essere tantissimi, mentre “solo” qualche miliardo di record è un database tutto sommato gestibile.

Partendo da questa considerazione, è allora possibile immaginare di utilizzare il proprio computer per fare tutto, e scoprire così che alcune operazioni sono in realtà più veloci sulla propria macchina che non utilizzando complesse soluzioni online. Detto questo, la domanda è: ma quali sono queste soluzioni “locali”? La risposta è nel terminale e nella riga di comando, cioè nell’utilizzo di quella tradizione quarantennale, quasi cinquantennale di applicativi Unix sviluppati a partire dall’inizio degli anni Settanta dai geni che crearono Unix. E nella loro filosofia, come ricorda Jeroen Janssens, autore del libro “Data Science at the Command Line” edito da O’Reilly.

La filosofia di Unix è quella di utilizzare piccoli applicativi snelli, potenti e rapidi da utilizzare. Che possono essere messi in catena uno dopo l’altro, trasformando l’output di uno nell’input del successivo comando, per creare soluzioni estremamente flessibili e potenti. Il merito non è solo della struttura dei comandi, e della loro potenza, ma anche dell’architettura del sistema, che poggia sull’idea della “pipe”, la condotta, che viene espressa con il semplice simbolo della barra verticale (“|”), la “pipe” e che serve a indicare che quello che viene prima è concatenato a quello che viene dopo, l’output standard di una applicazione diventa input standard di quella successiva.

Altra scelta architetturale di Unix, trattare tutto come testo, cosa che permette di rendere per definizione compatibile qualsiasi applicativo, perché il sistema trasporta simboli codificati come testo da un applicativo a un altro. Una profonda differenza, questa, rispetto a un ambiente costruito ad oggetti come la PowerShell di Windows, che segue una logica più simile a quella del linguaggio di programmazione C# sempre di Microsoft.

Lavorare sui big data con il terminale e la riga di comando

La cosa davvero interessante della riga di comando e degli strumenti a disposizione (nel sito del libro viene fornita anche una immagine Docker che contiene una ottantina di strumenti per la riga di comando) è che permettono di ottenere risultati molto interessanti anche senza dover conoscere R e Python, per esempio.

Perché, come spiega l’autore, consente di ottenere dati dai siti web, API, database e fogli di calcolo; permette di fare tutte le operazioni di scrub su testo, CSV, Html, Xml e Json. Permette di esplorare i dati, calcolare statistiche descrittive e creare delle visualizzazioni. Gestire il workflow del lavoro di data science. Riutilizzare strumenti della riga di comando partendo da one-liners pre-esistenti e da altro codice Python e R. Parallelizza e distribuisce pipeline data-intensive. Permette di utilizzare algoritmi di classificazione, regressione, clustering riduzione della dimensionalità per modellare i dati.

Nelle vacanze, quale momento migliore per provare qualcosa di nuovo e far crescere il vostro piccolo Data Scientist interiore? Per vedere se il libro è di vostro interesse si può anche andare a leggerlo gratuitamente partendo dal suo repository su GitHub.

Offerte Apple e Tecnologia

Le offerte dell'ultimo minuto le trovi nel nostro canale Telegram

Offerte Speciali

Dieci regali Apple da acquistare su Amazon con consegna prima di Natale

I migliori prodotti Apple con sconto su Amazon e che arrivano entro Natale

Arrivano in tempo per i vostri acquisti di fine anno. Comodissimi per chiudere un bilancio con le spese più utili per il lavoro.
Pubblicità

Ultimi articoli

Pubblicità