apache hadoop yarn tutorial
Componentes de Hadoop - MapReduce con Hadoop YARN:
En nuestro tutorial anterior sobre el componente Hadoop, aprendimos sobre Hadoop MapReduce y su mecanismo de procesamiento como INPUT, SPLITTING, MAPPING, SHUFFLING, REDUCING y FINAL RESULT.
En este tutorial exploraremos:
- ¿Cómo funciona Map Reduce con YARN?
- Flujo de trabajo de la aplicación de Hadoop YARN.
=> Eche un vistazo a la guía para principiantes de BigData aquí.
Lo que vas a aprender:
Reducir mapa con Hadoop YARN
Comprendamos cómo MapReduce usa YARN para ejecutar los trabajos en el clúster de Hadoop. Pero antes de continuar, la primera pregunta que nos viene a la mente es ¿Cuál es la forma completa de YARN? ¿O qué significa YARN?
HILO medio Otro negociador de recursos.
Es el que asigna los recursos para varios trabajos que deben ejecutarse en el clúster de Hadoop. Fue introducido en Hadoop 2.0.
Hasta que Hadoop 1.0 MapReduce era el único marco o la única unidad de procesamiento que se puede ejecutar sobre Hadoop Cluster. Sin embargo, en Hadoop 2.0 se introdujo YARN y con eso, también podemos ir más allá de MapReduce.
Como puede ver en el diagrama, tenemos HDFS en la parte inferior intermedia, tenemos YARN y, al usar YARN, muchos marcos pueden conectarse y utilizar HDFS. Entonces, incluso MapReduce se usa para conectarse usando YARN para solicitar los Recursos y solo entonces puede ejecutar el Trabajo sobre HDFS, es decir, Hadoop Cluster.
Similitud; SPARK, STORM y otros motores de búsqueda pueden conectarse a HDFS. HBase, que es una base de datos No SQL, también puede conectarlo. Entonces, las aplicaciones de HDFS se volvieron enormes, solo porque YARN pudo abrir la puerta a otros marcos y también a otras herramientas de análisis de Bigdata.
¿Cuál es la diferencia entre MapReduce Version1 (MRv1) y MapReduce Version2 (MRv2)?
MRv1 era esencialmente una parte del framework 1 de Hadoop y con Hadoop 2 YARN entró en escena y MapReduce se actualizó a MRv2 con varios cambios en las clases. Las clases se actualizaron, sin embargo, la sintaxis de escritura del programa MapReduce sigue siendo la misma.
En este escenario, MapReduce ahora se conecta con YARN para eje el HDFS.
Junto con YARN, Resource Manager y Node Manager son los nuevos Daemons que se introdujeron en Hadoop Cluster.
Anteriormente era Job Tracker y Task Tracker. Sin embargo, se eliminaron de Hadoop 2.0 y Resource Manager y Node Manager se introdujeron junto con YARN en el marco de Hadoop.
Demonios de Hadoop 2.x
Echemos un vistazo rápido a los Daemons recién introducidos en Hadoop 2.0 que ejecutan los componentes, es decir, almacenamiento y procesamiento.
top 10 aplicaciones espía para android
En el tutorial de HDFS, entendimos el Daemon, es decir, NameNode y DataNode en detalle. En este tutorial, entenderemos cómo Resource Manager y Node Manager funcionan en Hadoop 2.x Cluster para administrar el procesamiento y los trabajos que deben ejecutarse en Hadoop Cluster.
Entonces, ¿qué es el Administrador de recursos? Resource Manager es el Master Daemons que se ejecuta en la Master Machine o el NameNode, que es una máquina de gama alta. Node Manager, por otro lado, es el Daemon que se ejecuta en Slave Machines o DataNodes o junto con el DataNode Process.
Componentes Hadoop 2.x MapReduce YARN
Exploremos los otros componentes de YARN a continuación.
- Cliente: Es una unidad que envía la interfaz de línea de comandos (CLI) similar a un trabajo, y el cliente podría ser una aplicación JAVA.
- Administrador de recursos: Es un Master Daemon al que se envían todos los Trabajos desde el Cliente, y es el que asigna todos los Recursos a nivel de Cluster para ejecutar un Trabajo en particular. Se ejecuta en una máquina de gama alta que tiene hardware de buena calidad y buena configuración, ya que es la máquina maestra la que tiene que administrar todo en el clúster.
- Administrador de nodo : Es un demonio esclavo que se ejecuta en las máquinas esclavas o en el DataNode, por lo que cada máquina esclava tiene un administrador de nodos en ejecución. Supervisa los recursos de DataNode en particular, Resource Manager administra los recursos del Cluster y Node Manager administra los recursos de DataNode.
- Servidor de historial de trabajos: Es la unidad para realizar un seguimiento de todos los trabajos que se han ejecutado en el clúster o que se han enviado al clúster. También realiza un seguimiento del estado y también mantiene los archivos de registro de cada ejecución realizada en el clúster de Hadoop.
- Maestro de aplicaciones : Es un componente que se ejecuta sobre Node Machine, Slave Machine y es creado por un Administrador de recursos para ejecutar y administrar un Trabajo. Es el que negocia los recursos del Resource Manager y finalmente se coordina con el Node Manager para ejecutar la tarea.
- Envase: Lo crea el propio Administrador de Nodos que ha sido asignado por el Administrador de Recursos y finalmente todos los Trabajos se ejecutan dentro del Contenedor.
Flujo de trabajo de YARN
Como se muestra en el diagrama anterior, hay un Administrador de recursos al que se envían todos los trabajos y hay un clúster en el que hay máquinas esclavas, y en cada máquina esclava, hay un Administrador de nodo corriendo.
Administrador de recursos tiene dos componentes, es decir Programador y Gestor de aplicaciones.
¿Cuál es la diferencia entre Application Master y Application Manager?
Gestor de aplicaciones es un componente de Administrador de recursos que asegura que cada tarea se ejecute y una Maestro de aplicaciones se crea para ello. Maestro de aplicaciones, por otro lado, es alguien que ejecuta la tarea y solicita todos los recursos que se requieren para su ejecución.
Supongamos que el trabajo se envía al Administrador de recursos , tan pronto como se envíe el trabajo, Programador programa el trabajo. Una vez el Programador programa el trabajo que se ejecutará Gestor de aplicaciones creará un Envase en uno de los DataNodes , y dentro de este Envase, la Maestro de aplicaciones se iniciará.
Esta Maestro de aplicaciones luego se registrará con el Administrador de recursos y solicitud de un Envase para ejecutar la tarea. Tan pronto como Envase está asignado, el Maestro de aplicaciones ahora estará conectado con el Administrador de nodo y solicitud para lanzar el Envase .
Como podemos ver, el Maestro de aplicaciones fue asignado a DataNodes D y ES , y ahora esto Maestro de aplicaciones solicitó el Administrador de nodo para lanzar el Contenedores de DataNode D y DataNode E .
Tan pronto como Contenedores fueron lanzados, el Maestro de aplicaciones ejecutará la tarea dentro del Envase y el resultado se enviará de vuelta al Cliente .
Flujo de aplicación
Entendamos esto de una manera un poco secuencial.
En el siguiente diagrama, tenemos cuatro componentes. El primero es el Cliente, el segundo es Administrador de recursos , el tercero es Administrador de nodo y la cuarta línea contiene Maestro de aplicaciones .
Así que veamos cómo se ejecutan estos pasos entre ellos.
El primer paso es el Cliente que somete el trabajo a la Administrador de recursos , en el segundo paso el Administrador de recursos asigna un Envase para iniciar el Maestro de aplicaciones sobre el Máquinas esclavas ; el tercer paso es el Maestro de aplicaciones se registra con el Administrador de recursos .
Tan pronto como se registra, solicita la Envase para ejecutar la tarea, es decir, el cuarto paso. En el paso cinco, el Maestro de aplicaciones notifica al Administrador de nodo en el que el Envase necesita ser lanzado.
En el paso seis, una vez que Administrador de nodo ha lanzado el Contenedores la Maestro de aplicaciones ejecutará el código dentro de estos Contenedores .
Finalmente, en el séptimo paso, el Cliente contacta el Administrador de recursos o el Maestro de aplicaciones para monitorear el estado de la aplicación.
Al final, el Maestro de aplicaciones se anulará el registro de la Administrador de recursos y el resultado se devuelve al Cliente . Así que este es un flujo secuencial simple de cómo se ejecuta un programa MapReduce usando el marco YARN.
Conclusión
Entonces, en este tutorial, aprendimos los siguientes consejos:
- HILO medio Otro negociador de recursos.
- YARN se introdujo en Hadoop 2.0
- Resource Manager y Node Manager se introdujeron junto con YARN en el marco de Hadoop.
- Componentes de YARN como cliente, administrador de recursos, administrador de nodos, servidor de historial de trabajos, maestro de aplicaciones y contenedor.
En el próximo tutorial, analizaremos las técnicas de prueba de BigData y los desafíos que se enfrentan en BigData Testing. También sabremos cómo superar esos desafíos y cualquier forma de evitar que BigData Testing sea fácil.
=> Visite aquí para aprender BigData desde cero.
Lectura recomendada
- ¿Qué es Hadoop? Tutorial de Apache Hadoop para principiantes
- Más de 20 tutoriales de MongoDB para principiantes: curso gratuito de MongoDB
- Tutoriales detallados de Eclipse para principiantes
- Tutorial de Python para principiantes (entrenamiento práctico de Python GRATIS)
- Tutorial de Big Data para principiantes | ¿Qué es Big Data?
- Tutorial de LoadRunner para principiantes (curso gratuito en profundidad de 8 días)
- Tutorial de Hadoop MapReduce con ejemplos | ¿Qué es MapReduce?
- La mejor serie de tutoriales de C # GRATIS: la guía definitiva de C # para principiantes