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

Home » News » Riga di comando del Terminale Mac, batte cloud 235 a 1

Riga di comando del Terminale Mac, batte cloud 235 a 1

Pubblicità

Si parla tanto di big data e della potenza del cloud. Ma alle volte basta un semplice Macbook Pro e la buona vecchia riga di comando del terminale Mac. Ecco una storia interessante da questo punto di vista raccontata un po’ di tempo fa Adam Drake.

Racconta Drake: “Ho trovato un bell’articolo di Tom Hayden sull’uso di Elastic Map Reduce (EMR) di Amazon e “mrjob” per calcolare alcune statistiche sulle percentuali di vincita e perdita in una serie di scacchi scaricate dal millionbase archive, e in generale sul divertirsi molto nel farlo”.

Lo scopo di questa operazione è fare dei calcoli statistici su un database di dati di testo che raccolgono i risultati accumulati negli anni su milioni di partite. Una quantità di dati relativamente contenuta, spiega Drake: “Poiché che il volume delle informazioni era di soli 1,75 Gb e conteneva circa due milioni di partite a scacchi, ero scettico che fosse necessario utilizzare Hadoop per questo tipo di attività, ma capivo bene che l’obiettivo potesse essere imparare divertendosi a usare mrjob ed EMR”.

La parte divertente dal punto di vista di Drake è però che questo tipo di analisi di dati si può fare anche in un altro modo, anziché utilizzando la potenza dei sistemi cloud come Hadoop (un insieme di librerie per la gestione di applicazioni distribuite in cluster, allo scopo di avere più flessibilità e soprattutto potenza di calcolo) anche perché “il problema essenzialmente era quello di guardare alla riga con il risultato della partita di ciascun file e aggregarli tutti assieme”. Si poteva cioè fare molto bene anche con il Terminale e la riga di comando.

Drake ci ha provato ed è stato capace di prendere lo stesso flusso di dati, caricarlo sul suo MacBook Pro e processarlo e avere il risultato in dodici secondi (velocità di processo dei dati di circa 270MB al secondo) mentre Hadoop ha avuto bisogno di circa 26 minuti, con una velocità di processo di 1,14MB al secondo.

La cosa interessante dell’approccio usato da Drake con l’uso della riga di comando è la funzionalità di stream dei calcoli che permette la parallelizzazione sul processore multicore disponibile anche in un semplice laptop. È un approccio sottoutilizzato ma i risultati, come anticipato, in questo caso sono stati clamorosi.

TERMINALE MAC

In breve (ma poi si può andare direttamente all’articolo di Drake per vedere come ha fatto nel dettaglio), prima di tutto ha capito quale fosse la forma delle informazioni (che in questo caso erano i file PGN utilizzati per archiviare i dati delle partite dagli addetti al settore), poi ha acquisito i dati di un campione e ha provato vari sistemi per costruire il flusso di lavoro nel terminale.

La parallelizzazione del calcolo ha consentito infatti di far procedere i singoli step insieme. I programmi utilizzati dentro il terminale, cioè la shell di Unix di OS X, sono stati prima cat e grepsort e uniq, e poi consolidato ulteriormente sort e uniq utilizzando il più potente awk.

Ecco così il primo tentativo di programma per la riga di comando con l’uso abbondante della fondamentale pipe (“|”) che è il modo inventato dai creatori di Unix per far passare l’output di un programma all’inut di quello successivo.

Fatto questo passaggio ha visto che il miglioramento, già notevole rispetto ad Hadoop, poteva essere ulteriormente portato avanti con un altro approccio, che è poi il comando finale (dopo vari tentativo e passando da awk a mawk utilizzando in sostanza questo scheletro di comandi: find | xargs mawk | mawk).

Quest’ultima implementazione è 235 volte più veloce di quella fatta utilizzando cluster di server nel cloud con la base della tecnologia Hadoop. Una cosa interessante da capire pensando che in questo modo si possono fare davvero tante cose con un semplice laptop e una buona conoscenza dei principi dell’informatica e del modo in cui si affrontano i problemi, più che con la (presunta) forza bruta del cloud.

Offerte Apple e Tecnologia

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

Black Friday

BOZZA PER LISTONE BLACK FRIDAY NON TOCCARE - macitynet.it

Per trovare le migliori occasioni di Black Friday Week, BlackFriday e CyberMonday: visitate la nostra pagina con tutte le offerte Black Friday costantemente aggiornata con tutte le news pubblicate e iscrivetevi ai nostri 2 canali telegram Offerte Tech e Oltre Tech per le offerte lampo e le offerte WOW che sono diverse ogni giorno e durano 16 ore.

Consultate il banner in alto nelle pagine di Macitynet sia nella versione mobile che desktop: vi mostreremo a rotazione gli sconti top.

Dalla 00.00 del 21 Novembre fino alla mezzanotte del 2 Dicembre vi mostriamo tutti i prodotti delle selezioni Apple, monitor, SDD etc. Nel corso delle ore anche l'elenco qui sotto si popolerà con i link agli articoli principali divisi per categorie.

Nota: I prezzi riportati in verde nelle offerte Amazon sono quelli realmente scontati e calcolati rispetto ai prezzi di listino oppure alla media dei prezzi precedenti. Il box Amazon riporta normalmente gli sconti rispetto al prezzo medio dell'ultimo mese o non riporta affatto lo sconto. Le nostre segnalazioni rappresentano una convenienza di acquisto e comunque controllate sempre il prezzo nella pagina di arrivo. Segnaliamo anche offerte dirette delle aziende.

Apple

Video, Foto, Creatività

Audio

Smartphone e Accessori

Accessori computer 

Software

Domotica

Casa, Cucina e Giardinaggio

Sport e attività all'aperto, Salute

Prodotti Amazon e settori di offerte

Pubblicità

Ultimi articoli

Pubblicità