Vai a

Che cos'è Apache Hadoop?

Il software Apache Hadoop è un framework open source che permette l'archiviazione e l'elaborazione distribuite di grandi set di dati in cluster di computer utilizzando semplici modelli di programmazione. Hadoop è progettato per fare lo scale up da un singolo computer a migliaia di computer in cluster, dove ogni macchina fornisce il calcolo e l'archiviazione locali. Ciò consente a Hadoop di archiviare ed elaborare in modo efficiente set di dati di grandi dimensioni che vanno da gigabyte a petabyte.

Ulteriori informazioni sull'utilizzo di Dataproc per eseguire i cluster Apache Hadoop, su Google Cloud, in modo più semplice, integrato e conveniente.

Panoramica su Apache Hadoop

Il framework principale di Hadoop è costituito da quattro moduli che operano collettivamente per formare l'ecosistema Hadoop:

Hadoop Distributed File System (HDFS): componente principale dell'ecosistema Hadoop, HDFS è un file system distribuito che fornisce un accesso ad alta velocità effettiva ai dati dell'applicazione senza la necessità di definire schemi in anticipo.

Yet Another Resource Negotiator (YARN): una piattaforma di gestione delle risorse che si occupa di gestire le risorse di calcolo in cluster e di utilizzarle per programmare le applicazioni degli utenti. Esegue la programmazione e l'allocazione delle risorse in tutto il sistema Hadoop.

MapReduce: è un modello di programmazione per l'elaborazione dei dati su vasta scala. Tramite algoritmi di calcolo distribuiti e paralleli, MapReduce rende possibile il trasferimento della logica di elaborazione e aiuta a scrivere applicazioni che trasformano grandi set di dati in un unico set gestibile.

Hadoop Common: comprende le librerie e le utilità utilizzate e condivise da altri moduli Hadoop. 

Tutti i moduli Hadoop sono progettati partendo dal presupposto fondamentale che gli errori dell'hardware di singole macchine o rack di macchine sono comuni e devono essere gestiti automaticamente nel software dal framework. I componenti Apache Hadoop MapReduce e HDFS sono stati originariamente derivati da documenti Google MapReduce e Google File System (GFS).

Oltre a HDFS, YARN e MapReduce, tutto l'ecosistema open source Hadoop continua a crescere e include molti strumenti e applicazioni per aiutare a raccogliere, archiviare, elaborare, analizzare e gestire i big data. Tra questi, Apache Pig, Apache Hive, Apache HBase, Apache Spark, Presto e Apache Zeppelin.

Quali sono i vantaggi di Hadoop?

Tolleranza di errore

Quando si eseguono job su un cluster di grandi dimensioni nell'ecosistema Hadoop, anche se i singoli nodi presentano alti tassi di errore, i dati vengono replicati su un cluster in modo che possano essere recuperati facilmente in caso di errori del disco, del nodo o del rack.

Controllo dei costi

Hadoop controlla i costi archiviando i dati in modo più economico per terabyte rispetto ad altre piattaforme. Anziché spendere da migliaia a decine di migliaia di dollari per terabyte per l'hardware, Hadoop fornisce il calcolo e l'archiviazione su hardware standard a prezzi accessibili per centinaia di dollari per terabyte.

Innovazione del framework open source

Hadoop è supportato da community globali unite per l'introduzione di nuovi concetti e funzionalità in modo più rapido ed efficace rispetto ai team interni che lavorano su soluzioni proprietarie. Il potere collettivo di una community open source genera un numero maggiore di idee, offre uno sviluppo più rapido e assicura la risoluzione dei problemi, contribuendo ad accelerare il time to market.

Perché hai bisogno di Hadoop?

Apache Hadoop è nato dall'esigenza di elaborare più rapidamente e in modo più affidabile una quantità enorme di big data. Hadoop attiva un intero ecosistema di software open source di cui le aziende basate sui dati eseguono sempre più spesso il deployment per archiviare e analizzare i big data. Anziché affidarsi all'hardware per fornire un'elevata disponibilità critica, la natura distribuita di Hadoop è progettata per rilevare e gestire gli errori a livello di applicazione, offrendo un servizio a disponibilità elevata su un cluster di computer per ridurre i rischi di errore delle macchine indipendenti. 

Anziché utilizzare un unico computer di grandi dimensioni per archiviare ed elaborare i dati, Hadoop utilizza cluster di più computer per analizzare in parallelo enormi set di dati. Hadoop è in grado di gestire vari formati di dati strutturati e non strutturati, offrendo alle aziende livelli più elevati di velocità e flessibilità per la raccolta, l'elaborazione e l'analisi dei big data rispetto a quanto sia possibile con database relazionali e data warehouse.

Qual è lo scopo di Apache Hadoop?

Ecco alcuni casi d'uso comuni per Apache Hadoop:

Analisi e big data

Un'ampia varietà di aziende e organizzazioni utilizza Hadoop per le attività di ricerca, elaborazione dei dati di produzione e analisi che richiedono l'elaborazione di terabyte o petabyte di big data, l'archiviazione di diversi set di dati e l'elaborazione parallela dei dati.

Settori verticali

Le aziende di innumerevoli settori, tra cui quelli della tecnologia, dell'istruzione, della sanità e dei servizi finanziari, si affidano ad Hadoop per attività che condividono un tema comune rappresentato da elevati livelli di varietà, volume e velocità dei dati strutturati e non strutturati.  

AI e machine learning

Gli ecosistemi Hadoop svolgono anche un ruolo essenziale a sostegno dello sviluppo delle applicazioni di intelligenza artificiale e machine learning.

Cloud computing

Le aziende spesso scelgono di gestire i cluster Hadoop su risorse cloud pubbliche, private o ibride rispetto all'hardware on-premise per ottenere flessibilità, disponibilità e controllo dei costi. Molti provider di soluzioni cloud offrono servizi completamente gestiti per Hadoop, come Dataproc di Google Cloud. Questo tipo di servizio cloud-native preconfezionato per Hadoop consente di completare in pochi secondi o minuti operazioni che in passato richiedevano ore o giorni e permette alle aziende di pagare solo per le risorse utilizzate.

Dataproc è un servizio cloud completamente gestito, veloce e facile da utilizzare per l'esecuzione dei cluster Apache Spark e Apache Hadoop in modo più semplice, integrato ed economico. Si integra perfettamente con altri servizi Google Cloud che soddisfano esigenze critiche di sicurezza, governance e supporto, consentendo di ottenere una piattaforma completa e avanzata per l'elaborazione dei dati, l'analisi e il machine learning.

Gli strumenti di analisi dei big data di Google Cloud, come Dataproc, BigQuery, Notebooks e Dataflow, consentono di creare applicazioni legate al contesto, di sviluppare nuove soluzioni di analisi e di trasformare i dati in insight strategici.