apache hadoop yarn tutorial
Componenti Hadoop - MapReduce With Hadoop YARN:
Nel nostro precedente tutorial sul componente Hadoop, abbiamo imparato a conoscere Hadoop MapReduce e il suo meccanismo di elaborazione come INPUT, SPLITTING, MAPPING, SHUFFLING, REDUCING e FINAL RESULT.
In questo tutorial esploreremo:
- Come funziona Map Reduce con YARN?
- Flusso di lavoro dell'applicazione di Hadoop YARN.
=> Dai un'occhiata alla guida per principianti di BigData qui.
Cosa imparerai:
Mappa Riduci con Hadoop YARN
Vediamo come MapReduce utilizza YARN per eseguire i lavori sul cluster Hadoop. Ma prima di procedere, la prima domanda che ci viene in mente è qual è la forma completa di YARN? O cosa significa YARN?
FILATO si intende Ancora un altro negoziatore di risorse.
È quello che alloca le risorse per vari lavori che devono essere eseguiti sul cluster Hadoop. È stato introdotto in Hadoop 2.0.
Fino a Hadoop 1.0 MapReduce era l'unico framework o l'unica unità di elaborazione in grado di essere eseguito sul cluster Hadoop. Tuttavia, in Hadoop 2.0 è stato introdotto YARN e utilizzandolo, siamo in grado di andare anche oltre MapReduce.
Come puoi vedere nel diagramma, abbiamo HDFS in fondo in mezzo, abbiamo YARN e usando YARN, molti framework sono in grado di connettersi e utilizzare HDFS. Quindi, anche MapReduce viene utilizzato per connettersi utilizzando YARN per richiedere le risorse e solo allora può eseguire il lavoro su HDFS, ad esempio Hadoop Cluster.
Allo stesso modo; SPARK, STORM e altri motori di ricerca possono connettersi a HDFS. HBase, che è un database No SQL, può anche collegarlo. Quindi le applicazioni di HDFS sono diventate enormi, solo perché YARN è stata in grado di aprire la porta per altri framework e altri strumenti di analisi di Bigdata.
Qual è la differenza tra MapReduce Version1 (MRv1) e MapReduce Version2 (MRv2)?
MRv1 era essenzialmente una parte del framework Hadoop 1 e con Hadoop 2 YARN è entrato in scena e MapReduce è stato aggiornato a MRv2 con diverse modifiche nelle classi. Le classi sono state aggiornate, tuttavia, la sintassi di scrittura del programma MapReduce rimane la stessa.
In questo scenario, MapReduce ora si connette a YARN per asse l'HDFS.
Insieme a YARN, Resource Manager e Node Manager sono i nuovi demoni introdotti nel cluster Hadoop.
In precedenza era il Job Tracker e il Task Tracker. Tuttavia sono stati rimossi da Hadoop 2.0 e Resource Manager e Node Manager sono stati introdotti insieme a YARN nel framework Hadoop.
Hadoop 2.x Daemons
Diamo una rapida occhiata ai demoni appena introdotti in Hadoop 2.0 che eseguono i componenti, ad esempio archiviazione ed elaborazione.
quale certificazione di test del software è la migliore
Nel tutorial HDFS, abbiamo compreso in dettaglio il Daemon, ovvero NameNode e DataNode. In questo tutorial, capiremo come Resource Manager e Node Manager funzionano in Hadoop 2.x Cluster per gestire l'elaborazione e i lavori che devono essere eseguiti in Hadoop Cluster.
Allora, qual è il Resource Manager? Resource Manager è il Master Daemon che gira sulla Master Machine o il NameNode che è una macchina di fascia alta. Node Manager, d'altra parte, è il Daemon che gira su Slave Machines o DataNode o insieme al DataNode Process.
Componenti Hadoop 2.x MapReduce YARN
Esploriamo gli altri componenti di YARN di seguito.
- Cliente: È un'unità che invia la CLI (Job-like Command Line Interface) e il client potrebbe essere un'applicazione JAVA.
- Responsabile delle risorse: È un Master Daemon a cui vengono inviati tutti i lavori dal client ed è quello che alloca tutte le risorse a livello di cluster per l'esecuzione di un particolare lavoro. Funziona su una macchina di fascia alta con hardware di buona qualità e una buona configurazione poiché è la macchina master che deve gestire tutto sul cluster.
- Node Manager : È un demone slave che gira sulle macchine slave o sul DataNode, quindi ogni macchina slave ha un Node Manager in esecuzione. Monitora le risorse di un particolare DataNode, Resource Manager gestisce le risorse del cluster e Node Manager gestisce le risorse DataNode.
- Server cronologia lavori: È l'unità per tenere traccia di tutti i lavori che sono stati eseguiti sul cluster o che sono stati inviati al cluster. Tiene traccia anche dello stato e conserva anche i file di registro di ogni esecuzione avvenuta sul cluster Hadoop.
- Master dell'applicazione : È un componente che viene eseguito su Node Machine, Slave Machine ed è creato da un Resource Manager per eseguire e gestire un lavoro. È quello che negozia le risorse dal Resource Manager e infine si coordina con il Node Manager per eseguire l'attività.
- Contenitore: Viene creato dallo stesso Node Manager che è stato allocato dal Resource Manager e tutti i lavori vengono infine eseguiti all'interno del Container.
YARN Flusso di lavoro
Come mostrato nel diagramma sopra, c'è un file Resource Manager a cui sono sottoposti tutti i lavori e c'è un Cluster in cui ci sono Macchine Slave, e su ogni Macchina Slave c'è un Node Manager in esecuzione.
Resource Manager ha due componenti, ad es. Scheduler e Gestore dell'applicazione.
Qual è la differenza tra Application Master e Application Manager?
Gestore dell'applicazione è un componente di Resource Manager che garantisce che ogni attività venga eseguita e un file Master dell'applicazione è stato creato per questo. Master applicativo, d'altra parte, è qualcuno che esegue l'attività e richiede tutte le risorse che devono essere eseguite.
Supponiamo che il lavoro venga inviato al Resource Manager , non appena il lavoro viene inviato, il file Scheduler programma il lavoro. Una volta che il file Scheduler pianifica l'esecuzione del lavoro in Gestore dell'applicazione creerà un file Contenitore in uno dei DataNodes , e all'interno di questo Contenitore, il Master dell'applicazione sarà avviato.
Questo Master dell'applicazione si registrerà quindi con il Resource Manager e richiedere un file Contenitore per eseguire l'attività. Appena il Contenitore è assegnato, il Master dell'applicazione sarà ora connesso con il Node Manager e richiedere di avviare il Contenitore .
Come possiamo vedere, il file Master dell'applicazione è stato assegnato a DataNodes D e E , e ora questo Master dell'applicazione richiesto il Node Manager per avviare il Contenitori di DataNode D e DataNode E .
Appena il Contenitori sono stati lanciati, il Master dell'applicazione eseguirà l'attività all'interno di Contenitore e il risultato verrà rispedito al file Cliente .
Flusso dell'applicazione
Capiamo questo in modo un po 'sequenziale.
Nel diagramma sottostante, abbiamo quattro componenti. Il primo è il file Cliente, il secondo è Resource Manager , il terzo è Node Manager e la quarta riga contiene Master dell'applicazione .
Quindi vediamo come questi passaggi vengono eseguiti tra di loro.
Il primo passo è il Cliente chi sottopone il lavoro a Resource Manager , nella seconda fase il file Resource Manager alloca un file Contenitore per avviare il Master dell'applicazione sul Macchine schiave ; il terzo passaggio è il Master dell'applicazione si registra presso il Resource Manager .
Non appena si registra, richiede il file Contenitore per eseguire l'attività, ovvero il quarto passaggio. Nella fase cinque, il Master dell'applicazione notifica il Node Manager su cui il Contenitore deve essere lanciato.
Nel passaggio sei, una volta che il file Node Manager ha lanciato il Contenitori, il Master dell'applicazione eseguirà il codice all'interno di questi Contenitori .
Infine, nel settimo passaggio, il file Cliente contatta il Resource Manager o il Master dell'applicazione per monitorare lo stato dell'applicazione.
Alla fine, il Master dell'applicazione annullerà la registrazione da Resource Manager e il risultato viene restituito al Cliente . Quindi questo è un semplice flusso sequenziale di come un programma MapReduce viene eseguito utilizzando il framework YARN.
Conclusione
Quindi, in questo tutorial, abbiamo imparato i seguenti suggerimenti:
- FILATO si intende Ancora un altro negoziatore di risorse.
- YARN è stato introdotto in Hadoop 2.0
- Resource Manager e Node Manager sono stati introdotti insieme a YARN nel framework Hadoop.
- Componenti YARN come Client, Resource Manager, Node Manager, Job History Server, Application Master e Container.
Nel prossimo tutorial, discuteremo le tecniche di test di BigData e le sfide affrontate in BigData Testing. Impareremo anche come superare queste sfide e qualsiasi modo di bypassare per rendere facile il test di BigData.
=> Visita qui per imparare BigData da zero.
Lettura consigliata
- Cos'è Hadoop? Esercitazione su Apache Hadoop per principianti
- 20+ Tutorial MongoDB per principianti: corso MongoDB gratuito
- Tutorial approfonditi su Eclipse per principianti
- Tutorial Python per principianti (formazione pratica GRATUITA su Python)
- Tutorial sui Big Data per principianti | Cosa sono i big data?
- Tutorial LoadRunner per principianti (corso approfondito gratuito di 8 giorni)
- Hadoop MapReduce Tutorial con esempi | Cos'è MapReduce?
- La migliore serie di tutorial GRATUITI per C #: la guida definitiva a C # per principianti