Sommario:
- Perché il calcolo distribuito è necessario per i big data
- L'evoluzione dell'economia dei computer e dei big data
- Il problema con la latenza dei big data
- La domanda di big data incontra le soluzioni
Video: [PyCon Italy 2014] V. Maggio - Machine Learning Parallelo (e Distribuito) con Scikit-Learn 2024
Se la tua azienda sta considerando un progetto di grandi quantità, è importante comprendere alcune nozioni di base di calcolo distribuito primo. Non esiste un singolo modello di calcolo distribuito perché le risorse di calcolo possono essere distribuite in molti modi.
Ad esempio, è possibile distribuire un set di programmi sullo stesso server fisico e utilizzare i servizi di messaggistica per consentire loro di comunicare e trasmettere informazioni. È anche possibile avere diversi sistemi o server, ognuno con la propria memoria, che può lavorare insieme per risolvere un problema.
Perché il calcolo distribuito è necessario per i big data
Non tutti i problemi richiedono l'elaborazione distribuita. Se non esiste un vincolo di tempo elevato, l'elaborazione complessa può essere eseguita tramite un servizio specializzato in remoto. Quando le aziende dovevano eseguire analisi complesse dei dati, l'IT trasferiva i dati a un servizio esterno o entità in cui erano disponibili molte risorse di riserva per l'elaborazione.
Non era che le aziende volessero aspettare per ottenere i risultati di cui avevano bisogno; semplicemente non era economicamente fattibile acquistare abbastanza risorse di calcolo per gestire questi requisiti emergenti. In molte situazioni, le organizzazioni acquisiscono solo selezioni di dati anziché cercare di acquisire tutti i dati a causa dei costi. Gli analisti desideravano tutti i dati, ma dovevano accontentarsi delle istantanee, sperando di acquisire i dati giusti al momento giusto.
Le principali innovazioni hardware e software hanno rivoluzionato il settore della gestione dei dati. Innanzitutto, l'innovazione e la domanda hanno aumentato la potenza e ridotto il prezzo dell'hardware. È emerso un nuovo software che ha compreso come sfruttare questo hardware automatizzando processi come bilanciamento del carico e ottimizzazione attraverso un enorme cluster di nodi.
Il software includeva regole integrate che capivano che determinati carichi di lavoro richiedevano un certo livello di prestazioni. Il software ha trattato tutti i nodi come se fossero semplicemente un grande pool di risorse di elaborazione, archiviazione e networking e ha spostato i processi su un altro nodo senza interruzioni in caso di guasto di un nodo, utilizzando la tecnologia della virtualizzazione.
L'evoluzione dell'economia dei computer e dei big data
Avanti e molto è cambiato. Negli ultimi anni, il costo per l'acquisto di risorse informatiche e di archiviazione è diminuito drasticamente. Aiutati dalla virtualizzazione, i server di merci che potevano essere raggruppati e i blade che potevano essere collegati in rete in un rack hanno cambiato l'economia dell'informatica. Questo cambiamento ha coinciso con l'innovazione nelle soluzioni di automazione del software che ha notevolmente migliorato la maneggevolezza di questi sistemi.
La capacità di sfruttare il calcolo distribuito e le tecniche di elaborazione parallela ha drasticamente trasformato il panorama e ridotto drasticamente la latenza. Ci sono casi speciali, come il trading ad alta frequenza (HFT), in cui la latenza bassa può essere raggiunta solo localizzando fisicamente i server in un'unica posizione.
Il problema con la latenza dei big data
Uno dei perenni problemi con la gestione dei dati, in particolare grandi quantità di dati, è stato l'impatto della latenza. Latenza è il ritardo all'interno di un sistema basato su ritardi nell'esecuzione di un'attività. La latenza è un problema in ogni aspetto dell'informatica, comprese le comunicazioni, la gestione dei dati, le prestazioni del sistema e altro.
Se hai mai usato un telefono senza fili, hai sperimentato la latenza in prima persona. È il ritardo nelle trasmissioni tra te e il tuo interlocutore. A volte, la latenza ha un impatto limitato sulla soddisfazione del cliente, ad esempio se le aziende hanno bisogno di analizzare i risultati dietro le quinte per pianificare una nuova release di prodotto. Questo probabilmente non richiede risposta o accesso immediato.
Tuttavia, più la risposta è vicina a un cliente al momento della decisione, più la latenza è importante.
Le tecniche di elaborazione distribuita e elaborazione parallela possono fare una differenza significativa nella latenza vissuta da clienti, fornitori e partner. Molte applicazioni di big data dipendono dalla bassa latenza a causa dei grandi requisiti di dati per la velocità e il volume e la varietà dei dati.
Potrebbe non essere possibile costruire un'applicazione big data in un ambiente ad alta latenza se sono necessarie alte prestazioni. Anche la necessità di verificare i dati in tempo quasi reale può essere influenzata dalla latenza. Quando si hanno a che fare con dati in tempo reale, un alto livello di latenza indica la differenza tra successo e fallimento.
La domanda di big data incontra le soluzioni
La crescita di Internet come piattaforma per tutto, dal commercio alla medicina, ha trasformato la domanda di una nuova generazione di gestione dei dati. Alla fine degli anni '90, le società di motori e Internet come Google, Yahoo! e Amazon. com è stata in grado di espandere i propri modelli di business, sfruttando l'hardware economico per l'elaborazione e l'archiviazione.
Successivamente, queste aziende necessitavano di una nuova generazione di tecnologie software che consentissero loro di monetizzare le enormi quantità di dati che stavano catturando dai clienti. Queste aziende non potevano aspettare i risultati dell'elaborazione analitica. Avevano bisogno della capacità di elaborare e analizzare questi dati quasi in tempo reale.