Strumenti Hadoop essenziali per il crunch di Big Data



Hadoop è la parola d'ordine nel mondo IT di oggi e questo post descrive gli strumenti Hadoop essenziali che elaborano i Big Data.

Oggi, il termine più popolare nel mondo IT è 'Hadoop'. In un breve lasso di tempo, Hadoop è cresciuto enormemente e si è dimostrato utile per un'ampia raccolta di progetti diversi. La comunità Hadoop è in rapida evoluzione e ha un ruolo di primo piano nel suo ecosistema.





Ecco uno sguardo agli strumenti essenziali di Hadoop utilizzati per gestire i Big Data.

ordina algoritmi c ++

ambari



Ambari è un progetto Apache supportato da Hortonworks. Offre una GUI (Graphical User Interface) basata sul web con script della procedura guidata per la configurazione di cluster con la maggior parte dei componenti standard. Ambari provvede, gestisce e monitora tutti i cluster di lavori Hadoop.

hdfs-logo

Il HDFS , distribuito con licenza Apache offre un framework di base per suddividere le raccolte di dati tra più nodi. In HDFS, i file di grandi dimensioni vengono suddivisi in blocchi, in cui diversi nodi contengono tutti i blocchi di un file. Il file system è progettato in modo da combinare la tolleranza agli errori con un throughput elevato. I blocchi di HDFS vengono caricati per mantenere uno streaming costante. Di solito non vengono memorizzati nella cache per ridurre al minimo la latenza.



hbaselogo

HBase è un sistema di gestione del database orientato alle colonne che viene eseguito su HDFS. Le applicazioni HBase sono scritte in Java, in modo molto simile all'applicazione MapReduce. Comprende una serie di tabelle, in cui ogni tabella contiene righe e colonne come un database tradizionale. Quando i dati rientrano nella tabella grande, HBase memorizzerà i dati, li cercherà e condividerà automaticamente la tabella su più nodi in modo che i lavori MapReduce possano eseguirli localmente. HBase offre una garanzia limitata per alcune modifiche locali. Le modifiche che avvengono in una singola riga possono avere successo o fallire allo stesso tempo.

hive

Se sei già fluente con SQL, puoi sfruttare Hadoop usando Alveare . Hive è stato sviluppato da alcune persone su Facebook. Apache Hive regola il processo di estrazione dei bit da tutti i file in HBase. Supporta l'analisi di grandi set di dati archiviati nell'HDFS di Hadoop e nei file system compatibili. Fornisce anche un linguaggio simile a SQL chiamato HSQL (HiveSQL) che entra nei file ed estrae gli snippet richiesti per il codice.

sqoop

Apache Sqoop è appositamente progettato per trasferire in modo efficiente i dati di massa dai database tradizionali in Hive o HBase. Può anche essere utilizzato per estrarre dati da Hadoop ed esportarli in archivi di dati strutturati esterni come database relazionali e data warehouse aziendali. Sqoop è uno strumento da riga di comando, mappatura tra le tabelle e il livello di archiviazione dei dati, che traduce le tabelle in una combinazione configurabile di HDFS, HBase o Hive.

Pig1

Quando i dati memorizzati sono visibili a Hadoop, Maiale Apache si immerge nei dati ed esegue il codice scritto nella propria lingua, chiamata Pig Latin. Pig Latin è pieno di astrazioni per la gestione dei dati. Pig viene fornito con funzioni standard per attività comuni come la media dei dati, lavorare con le date o trovare differenze tra le stringhe. Pig consente inoltre all'utente di scrivere le lingue da sole, chiamate UDF (User Defined Function), quando le funzioni standard sono insufficienti.

zookeper

Zookeeper è un servizio centralizzato che mantiene, configura le informazioni, assegna un nome e fornisce la sincronizzazione distribuita su un cluster. Impone una gerarchia simile al file system sul cluster e memorizza tutti i metadati per le macchine, in modo da poter sincronizzare il lavoro delle varie macchine.

NoSQL

Alcuni cluster Hadoop si integrano con NoSQL archivi di dati dotati di meccanismi propri per l'archiviazione dei dati su un cluster di nodi. Ciò consente loro di archiviare e recuperare i dati con tutte le funzionalità del database NoSQL, dopodiché Hadoop può essere utilizzato per pianificare i lavori di analisi dei dati sullo stesso cluster.

mahoutlogo

Mahout è progettato per implementare un gran numero di algoritmi, classificazioni e filtri di analisi dei dati nel cluster Hadoop. Molti degli algoritmi standard come K-means, Dirichelet, pattern paralleli e classificazioni bayesiane sono pronti per essere eseguiti sui dati con una mappa in stile Hadoop e riducono.

Lucene, scritto in Java e integrato facilmente con Hadoop, è un compagno naturale per Hadoop. È uno strumento pensato per indicizzare grandi blocchi di testo non strutturato. Lucene gestisce l'indicizzazione, mentre Hadoop gestisce le query distribuite nel cluster. Le funzionalità di Lucene-Hadoop sono in rapida evoluzione con lo sviluppo di nuovi progetti.

Avro

Euro è un sistema di serializzazione che raggruppa i dati insieme a uno schema per comprenderli. Ogni pacchetto viene fornito con una struttura dati JSON. JSON spiega come analizzare i dati. L'intestazione di JSON specifica la struttura dei dati, in cui è possibile evitare la necessità di scrivere tag aggiuntivi nei dati per contrassegnare i campi. L'output è notevolmente più compatto rispetto ai formati tradizionali come XML.

Un lavoro può essere semplificato suddividendolo in passaggi. Dopo aver suddiviso il progetto in più lavori Hadoop, Oozie inizia a elaborarli nella sequenza corretta. Gestisce il flusso di lavoro come specificato da DAG (Directed Acyclic Graph) e non è necessario un monitoraggio tempestivo.

Strumenti GIS

Lavorare con le mappe geografiche è un lavoro importante per i cluster che eseguono Hadoop. Il GIS ( Sistema d'informazione geografica ) per i progetti Hadoop hanno adattato i migliori strumenti basati su Java per la comprensione delle informazioni geografiche da eseguire con Hadoop. I database possono ora gestire le query geografiche utilizzando le coordinate ei codici possono utilizzare gli strumenti GIS.

Raccogliere tutti i dati equivale a memorizzarli e analizzarli. Apache Flume invia 'agenti speciali' per raccogliere informazioni che verranno archiviate in HDFS. Le informazioni raccolte possono essere file di registro, API Twitter o scrap di siti Web. Questi dati possono essere concatenati e sottoposti ad analisi.

Spark

Scintilla è la generazione successiva che funziona praticamente come Hadoop che elabora i dati memorizzati nella cache. Il suo obiettivo è rendere l'analisi dei dati veloce da eseguire e scrivere con un modello di esecuzione generale. Ciò può ottimizzare i grafici degli operatori arbitrari e supportare l'elaborazione in memoria, che consente di interrogare i dati più velocemente dei motori basati su disco come Hadoop.

SQL su Hadoop

Quando è necessario eseguire una rapida query ad-hoc di tutti i dati nel cluster, è possibile scrivere un nuovo lavoro Hadoop, ma ciò richiede del tempo. Quando i programmatori hanno iniziato a farlo più spesso, hanno escogitato strumenti scritti nel semplice linguaggio SQL. Questi strumenti offrono un rapido accesso ai risultati.

Apache Drill

Apache Drill fornisce query ad-hoc a bassa latenza a numerose e varie origini dati, inclusi i dati nidificati. Drill, ispirato a Dremel di Google, è progettato per scalare fino a 10.000 server e interrogare petabyte di dati in pochi secondi.

Questi sono gli strumenti Hadoop essenziali per elaborare i Big Data!

Hai domande per noi? Per favore menzionali nella sezione commenti e ti risponderemo.

Post correlati:

Motivi pratici per imparare Hadoop 2.0