gratis descargar descarga common mapreduce yarn hadoop2

descargar - Aplicaciones MapReduce 2 frente a YARN



hdfs hadoop (3)

YARN es solo un administrador de clúster.

  • Primero, las aplicaciones deben desarrollarse para YARN (si no están ya implementadas). Estas son algunas de las aplicaciones compatibles con YARN. Si desea que se ejecuten nuevas aplicaciones en YARN, esta es la guía.

  • Entonces, los mismos programas MR / Spark / Hama pueden ejecutarse en YARN.

Estoy un poco confundido acerca de cómo las nuevas aplicaciones de MapReduce2 deberían desarrollarse para trabajar con YARN y lo que sucede con las anteriores.

Actualmente tengo aplicaciones MapReduce1 que básicamente consisten en:

  • Controladores que configuran los trabajos que se enviarán al clúster (JobTracker anterior y ahora el ResourceManager).
  • Mappers + Reductores

Por un lado, veo que las aplicaciones codificadas en MapReduce1 son compatibles en MapReduce2 / YARN, con algunas advertencias, simplemente recompilando con nuevas bibliotecas CDH5 (trabajo con la distribución de Cloudera).

Pero desde otro lado veo información sobre cómo escribir aplicaciones de YARN de una manera diferente a las de MapReduce (usando YarnClient, ApplicationMaster, etc.):

http://hadoop.apache.org/docs/r2.7.0/hadoop-yarn/hadoop-yarn-site/WritingYarnApplications.html

Pero para mí, YARN es solo la arquitectura y cómo el clúster administra su aplicación de MR.

Mis preguntas son:

  1. ¿ YARN aplicaciones de YARN incluyen las aplicaciones de MapReduce ?
  2. ¿Debería escribir mi código como una aplicación YARN , olvidando los controladores y creando clientes de hilo, ApplicationMasters , etc.?
  3. ¿Puedo desarrollar las clases de cliente con drivers + configuración de trabajo? ¿Los MapReduce1 (compilado con bibliotecas MR2) son administrados por YARN de la misma manera que las aplicaciones YARN?
  4. ¿Qué diferencias existen entre las aplicaciones MapReduce1 y YARN aplicaciones YARN respecto a la forma en que YARN gestionará internamente?

Gracias por adelantado


HADOOP versión 1

El JobTracker es responsable de la administración de los recursos --- administrar los nodos esclavos --- las principales funciones involucran

  • seguimiento del consumo / disponibilidad de recursos
  • gestión del ciclo de vida del trabajo --- programar tareas individuales del trabajo, seguir el progreso, proporcionar tolerancia a fallas para las tareas.

Problemas con Hadoop v1 JobTracker es responsable de todas las aplicaciones de MR engendradas, es un punto único de falla --- Si JobTracker falla, todas las aplicaciones en el clúster mueren. Además, si el clúster tiene una gran cantidad de aplicaciones, JobTracker se convierte en el cuello de botella de rendimiento, para abordar los problemas de escalabilidad y administración de trabajos. Se lanzó Hadoop v2.

Hadoop v2

La idea fundamental de YARN es dividir las dos responsabilidades principales del Rastreador de trabajos, es decir, la gestión de recursos y la programación / supervisión de trabajos, en daemons separados: un ResourceManager global y un ApplicationMaster (AM) por aplicación. ResourceManager y el esclavo por nodo, el NodeManager (NM), forman el nuevo y genérico sistema operativo para administrar aplicaciones de forma distribuida.

Para interactuar con el nuevo resourceManagement and Scheduling, se desarrolla una aplicación Hadoop YARN mapReduce --- MRv2 no tiene nada que ver con la API de programación mapReduce

Los programadores de aplicaciones no verán ninguna diferencia entre MRv1 y MRv2, MRv2 es completamente compatible con versiones anteriores --- Sí, una aplicación de MR (.jar), se puede ejecutar en ambos marcos sin ningún cambio en el código.

El Hadoop 2.x ya contiene el código para MR Client y AppMaster, el programador solo necesita enfocarse en sus aplicaciones de MapReduce.

MapReduce se integró previamente en Hadoop Core, la única API para interactuar con datos en HDFS. Ahora, en Hadoop v2 se ejecuta como una aplicación independiente, Hadoop v2 permite que otros marcos de programación de aplicaciones, por ejemplo, MPI, procesen datos HDFS.


Consulte la página de documentación de Apache en la arquitectura YARN y las publicaciones relacionadas de SE:

Hadoop gen1 vs Hadoop gen2

¿Las aplicaciones de YARN incluyen las aplicaciones de MapReduce?

YARN admite Mapreduce aplicaciones Mapreduce . También ejecuta trabajos Spark a diferencia de Hadoop 1.x.

¿Debería escribir mi código como una aplicación YARN, olvidando los controladores y creando clientes de hilo, ApplicationMasters, etc.?

Sí. Debe olvidarse de todos estos componentes de la aplicación y escribir su aplicación. Eche un vistazo al código de muestra

¿Puedo desarrollar las clases de cliente con controladores + configuración de trabajo? ¿Los trabajos MapReduce1 (recompilados con bibliotecas MR2) están gestionados por YARN de la misma manera que las aplicaciones YARN?

Sí. Tu puedes hacer. Pero mira este artículo de compatibilidad.

¿Qué diferencias existen entre las aplicaciones MapReduce1 y las aplicaciones YARN con respecto a la forma en que YARN las gestionará internamente?

Consulte esta publicación SE:

¿Qué beneficio adicional reduce Yarn al mapa existente?