¿Cuáles son los mejores recursos para aprender Mapreduce?

Aprendizaje:

  1. Como sugirió Igor Markov, el trabajo de OSDI [1] de Jeff Dean y Sanjay Ghemawat es el mejor comienzo. Pero, esto es solo para que usted entienda los conceptos.
  2. Ahora llega el momento de ponerse manos a la obra, Hadoop es la salida. Hadoop MR es una implementación de código abierto de MR de Google. MapReduce Tutorial es su recurso. Probar con un ejemplo le dará una buena visión del tema. Dónde ejecutar los ejemplos: obtenga una Hortonworks Sandbox o Cloudera QuickStart VM. Estos son mejores que crear su propio clúster, pero si tiene mucha curiosidad, ejecute Hadoop en Ubuntu Linux (Clúster de un solo nodo) – Michael G. Noll o si cree que ya es un profesional, entonces está ejecutando Hadoop en Ubuntu Linux (varios nodos Cluster) – Michael G. Noll. Estos son blogs que ayudan a los principiantes y me han ayudado, pero el más confiable es la ayuda de Cluster Setup de los propios autores.

Más aprendiendo y manteniendo lo que aprendiste:

  • Únase a las listas de correo de Hadoop, la reducción de mapas está relacionada solo, pero si desea, otros subproyectos también son interesantes. ¿Qué hace la gente aquí: discutir problemas del mundo real! Pero déjame advertirte que recibirás alrededor de 50 correos electrónicos todos los días. Luego, por supuesto, hay otras formas de mejorar su conocimiento.

Lectura extra:

  • Hadoop: la guía definitiva
  • Hadoop en acción
  • Algunas sugerencias de la comunidad: Libros – Hadoop Wiki
  • Alvin Grissom II sugiere un gran libro: Procesamiento de texto con datos intensivos. Realmente te hará pensar MR .

Referencias:

  1. http: //static.googleusercontent….

¡Espero que esto ayude!


Soy un escritor descuidado, espero que esta sea la única vez que edite el post.

MapReduce es la capa de procesamiento de Hadoop. Es un modelo de programación diseñado para procesar grandes volúmenes de datos en paralelo al dividir el trabajo en un conjunto de tareas independientes.

Los programas MapReduce están escritos en un estilo particular influenciado por construcciones de programación funcional, expresiones idiomáticas específicas para procesar listas de datos. Es el corazón de Hadoop . Hadoop es tan poderoso y eficiente debido a la reducción de mapas, ya que aquí se realiza el procesamiento paralelo.

MapReduce – Entendimiento de alto nivel

Map-Reduce divide el trabajo en partes pequeñas, cada una de las cuales se puede hacer en paralelo en el grupo de servidores. Un problema se divide en un gran número de problemas más pequeños, cada uno de los cuales se procesa de forma independiente para dar salidas individuales. Estas salidas individuales se procesan adicionalmente para dar salida final.

Hadoop Map-Reduce es altamente escalable y se puede usar en muchas computadoras. Muchas máquinas pequeñas pueden usarse para procesar trabajos que normalmente no podrían ser procesados ​​por una máquina grande.

Para saber más: Introducción a MapReduce

Después de la introducción aprende el flujo de datos de MapReduce.

MapReduce flujo de ejecución de trabajo –

En Hadoop , MapReduce funciona dividiendo el procesamiento de datos en dos fases: fase de mapa y fase de reducción. El mapa es la primera fase de procesamiento, donde especificamos toda la lógica compleja / reglas de negocio / código costoso. Reducir es la segunda fase de procesamiento, donde especificamos el procesamiento ligero como la agregación / suma.

  • MapReduce diagrama de flujo

Ahora veamos el flujo de datos de Hadoop MapReduce con componentes en detalle:

a. Archivos de entrada

Los datos para una tarea de MapReduce se almacenan en archivos de entrada, y los archivos de entrada normalmente residen en HDFS. El formato de estos archivos es arbitrario, mientras que los archivos de registro basados ​​en líneas y el formato binario también se pueden usar.

Consulte esta guía rápida para conocer las características de HDFS en detalle.

Para saber más: MapReduce Job Execution Flow

Una de las partes más complejas de Hadoop MapReduce es Mapper y Reducer. Así que después de la ejecución del trabajo vamos a avanzar hacia Mapper

  • Mapeador

La tarea del asignador procesa cada registro de entrada y genera un nuevo par de . Los pares pueden ser completamente diferentes del par de entrada. En la tarea del asignador, la salida es la colección completa de todos estos pares . Antes de escribir la salida para cada tarea del asignador, la partición de la salida se realiza sobre la base de la clave y luego se realiza la clasificación. Esta partición especifica que todos los valores de cada clave se agrupan.

El marco MapReduce genera una tarea de mapa para cada InputSplit generado por el InputFormat para el trabajo.

  • Proceso de mapeador en Hadoop

La representación física de los bloques se convierte en lógica para el asignador mediante entradas divididas. Para leer el archivo de 100 MB, se requieren dos divisiones de entrada. Se crea una división de entrada para cada bloque y se crean un lector de registros y un asignador para cada división de entrada.

InputSlpits no siempre depende del número de bloques, podemos personalizar el número de divisiones para un archivo en particular configurando la propiedad mapred.max.split.size durante la ejecución del trabajo.

Para saber más consulte el siguiente enlace: Guía Mapper

  • Reductor

El reductor procesa la salida del asignador. Después de procesar los datos, produce un nuevo conjunto de salida, que se almacenará en el HDFS.

Reducer toma un conjunto de un par de clave-valor intermedio producido por el asignador como entrada y ejecuta una función de Reducer en cada uno de ellos. Estos datos (clave, valor) se pueden agregar, filtrar y combinar de varias maneras, y requieren un amplio rango de procesamiento. El reductor procesa primero los valores intermedios para una clave particular generada por la función de mapa y luego genera la salida ( cero o más par clave-valor). El mapeo uno a uno se lleva a cabo entre las teclas y los reductores. Los reductores funcionan en paralelo, ya que son independientes entre sí. El usuario decide el número de reductores. Por defecto el número de reductores es 1.

Para saber más: Guía REDUCTOR.

Para más recursos de MapReduce consulte el siguiente enlace:

MapReduce – pares clave-valor

MapReduce – InputFormat

MapReduce – InputSplit

MapReduce – Partitioner

MapReduce – Ordenación aleatoria

Hay algunos buenos lugares para aprender Hadoop. Si está buscando recursos gratuitos y confía en aprenderlo por su cuenta sin ninguna guía, ayuda o solución de problemas, considere:

Cursos y libros gratuitos para aprender Hadoop:
1.
bigdatauniversity.com
Big Data University
2. Tutorial de Hadoop – YDN
3. http://www.michael-noll.com/tutorials
4. Hadoop: la guía definitiva por Tom White ( http://shop.oreilly.com/product/ …)
5. Hadoop en acción por Chuck Lam ( http://www.amazon.in/Hadoop-Acti… )

Sin embargo, si cree que necesita orientación y capacitación para aprender Hadoop (lo cual podría considerar que se atascará con frecuencia y es posible que no tenga a quién acudir para obtener ayuda), puede consultar los programas de capacitación que se ofrecen a continuación:

1. http://www.cloudera.com/content/… (Caro)
2. Formación y certificación Hadoop | Hortonworks (Caro)
3. http://www.edvancer.in/big-data-… (Asequible)

Descargo de responsabilidad: trabajo para Edvancer

MapReduce es el componente central de Hadoop. Antes de comenzar con MapReduce, debe ir a través de los blogs de Big Data y Hadoop para comprender qué es Big Data y Hadoop y por qué surgieron. He encontrado una buena lista de videos del Tutorial de Hadoop MapReduce. Te recomendaría pasar por este Video.

De este video obtendrás una imagen completa de MapReduce

Debe visitar el blog MapReduce-Data Flow para obtener un conocimiento profundo de MapReduce en todos y cada uno de los componentes.

La elección del buen libro debe. A continuación se muestra el enlace de los libros.

  • Lista de libros de Apache Hadoop

a. Hadoop – La guía definitiva por Tom White

Este es el mejor libro para que los principiantes aprendan MapReduce para ser desarrolladores de Hadoop y administradores de Hadoop. El lenguaje es bastante sencillo y abarca los conceptos de Hadoop y su ecosistema junto con las características de Hadoop2.x. Aprenderá cómo desarrollar y mantener sistemas de nodos múltiples confiables y escalables con Apache Hadoop y cómo analizar grandes conjuntos de datos con él.

segundo. Mapa Reducir los patrones de diseño: creación de algoritmos y análisis efectivos para Hadoop por Donald Miner

Este libro asume que el lector tiene conocimientos básicos de Hadoop y está dispuesto a dominar los algoritmos de MapReduce. Describe varias aplicaciones de Map Reduce con Hadoop y varios métodos para resolver los problemas de Hadoop rápidamente y explica las técnicas para la optimización de Map Reduce.

do. Hadoop en Acción por Chuck Lam

Proporciona una introducción a las terminologías de Hadoop y la programación en Map Reduce comenzando con ejemplos fáciles y avanzando gradualmente para mostrar el uso de Hadoop en tareas complejas de análisis de datos. Abarca las mejores prácticas y los patrones de diseño de la programación de Map Reduce.

Después de aprender Hadoop MapReduce, debe pasar por las preguntas de la entrevista. Estas preguntas le ayudarán a descifrar la entrevista de hadoop en el futuro.

  • Top 100 preguntas y respuestas de la entrevista de Hadoop
  • 50 preguntas y respuestas de la entrevista de MapReduce

También vaya a los siguientes temas importantes de MapReduce:

Formato de entrada

RecorReader

Mapeador

Par clave-valor

Reductor

Combinador

Partiótico

Formato de salida

Las primeras respuestas son muy buenas y útiles.
en mi opinión, primero debe leer sobre hadoop y mapreduce, luego configurarlo y trabajar con él en tiempo real, pero primero para entenderlo.
Puedes encontrar información en:
1. wikipedia
2. libros como (hadoop en acción y Hadoop_ The Definitive Guide_ 3rd Edition) son libros geniales
3. comience su servuy respondiendo estas preguntas:
(1. ¿Qué es BigData? ¿Cuáles son las fuentes de BigData? ¿Cuál es la importancia de procesar BigData?
2. encontrar definiciones para aquellos:
a) Sistema de archivos distribuidos de Google (GFS) b) MapReduce de Google
3. Es hora de entrar en el mundo Hadoop:
a) ¿Qué es Hadoop? Su importancia en BigData Processing
b) ¿Qué es HDFS (Sistema de archivos distribuidos de Hadoop)?
c) ¿Qué es Hadoop MapReduce?
d) NameNode, DataNode, Secondary NameNode, JobTracker y TaskTracker.
)

cuando termine de leer y entender el concepto y los bloques de hadoop, creo que se preparará para configurar hadoop y mapreduce y trabajará con ellos viendo videos de youtube, por ejemplo: “instale hadoop en un solo nodo”
y también puede seguir el tutorial sobre Ejecución de Hadoop en Ubuntu Linux (Clúster de un solo nodo) – Michael G. Noll
Eso es genial

Los prerrequisitos:
linux y java
Pero puedes aprenderlos a través de tu aprendizaje de hadoop.

Los siguientes recursos / libros me ayudaron a familiarizarme con Map-Reduce durante los primeros días de mi trabajo de curso.

  1. Procesamiento de texto intensivo de datos por Jimmy Lin y Chris Dyer.
  2. MapReduce los patrones de diseño: creación de algoritmos y análisis efectivos para Hadoop y otros sistemas: Donald Miner, Adam Shook: 9781449327170: Amazon.com: Libros. Creo que este es el mejor libro para un principiante. Le proporciona fragmentos de código de cada operación admitida por Map-Reduce.
  3. MapReduce: procesamiento de datos simplificado en grandes grupos por Jeffrey Dean y Sanjay Ghemawat: Página en googleusercontent.com

Como lo menciona el usuario de Quora en su respuesta, Michael G Noll es una fuente realmente excelente.
Esto es lo que hice para comprender Hadoop, HDFS, Map Reduce. (esto no es para usar Hadoop, esto es para aprender los conceptos básicos de Hadoop).

Agoté los enlaces principales de Youtube para Hadoop, MapReduce, etc. (los vi a todos).

Esto significaba que vería algunos videos de mierda, pero esto me permitió reforzar lo que había aprendido en los increíbles tutoriales de Hadoop para principiantes.

¿Sabes que? Después de terminar de ver un buen material en Youtube, echa un vistazo a los videos de Edureka alojados en línea. La duración del video es de aproximadamente 2 horas. Y se pierde mucho tiempo en las discusiones. Pero esto te permite ignorar esas discusiones y pensar en lo que aprendiste. (aprendizaje reforzado)

A2A

Puedes comenzar con el blog michal noll, es muy útil para los principiantes.

muchas personas sugirieron videos que también es una buena manera de comenzar.

Y hasta puedes comenzar con algunos cursos de big data coursera.

Aparte de las cosas anteriores, hice debajo de dos cosas.

1. leer un libro para saber más sobre big data
Big Data: una revolución que transformará la forma en que vivimos, trabajamos y pensamos

2.Leer y practicar dos libros sobre hadoop.
La guía definitiva eBook: Tom White: Amazon.in: Libros
Hadoop en el libro de práctica

Los prerrequisitos para aprender hadoop están abajo.

Unix
rdbms
un lenguaje de programación como Java

todo lo mejor y feliz hadooping

Cuando estaba aprendiendo Hadoop, el recurso más útil para mí fue Tutoriales – Michael G. Noll. Esto me ayudó a configurar un clúster sin problemas y comenzar con un programa Map / Reduce.

Aparte de esto, obviamente tiene la documentación de Apache: Hadoop Map / Reduce Tutorial.

El único requisito previo sería conocer un poco de sintaxis de Java, pero incluso eso, aprendí en el camino, mientras escribía programas de Map / Reduce. Aparte de eso, creo que todo lo demás está cubierto en el tutorial de Michael Noll.

He estado blogueando en Learn Hadoop, Hive, Sqoop, Pig de forma gratuita con certificaciones gratuitas. Hay artículos en Mapa Reducir. Mira si te son útiles.

Entendiendo Map-Reduce Programación
Ejemplos avanzados de reducción de mapa – Parte 1
Ejemplos avanzados de reducción de mapa – Parte 2

Aquí hay una fuente donde puede encontrar videos gratis de Big Data y Hadoop. Y también
Blogs de Big Data para algunas lecturas informativas que están disponibles en internet. Además, puede optar por seminarios web en vivo sobre Big Data que deberían ser de alguna ayuda. Simultáneamente, puede planear tomar una capacitación en línea en Bigdata y Hadoop para obtener experiencia y dominar las habilidades.

Los prerrequisitos básicos para aprender Hadoop es tener un conocimiento profundo de Java, UNIX básico y SQL básico.

Además del documento de Dean y Ghemawat como se sugiere en la respuesta de Igor Markov a Informática: ¿Cuáles son algunos buenos recursos para aprender sobre MapReduce? Echa un vistazo al capítulo 2 de Minería de conjuntos de datos masivos.

Hadoop Training India, el primer socio de formación de Cloudera Hadoop en Asia
Formación y certificación de desarrollador de Cloudera para Apache Hadoop

Temas de aprendizaje

  • MapReduce y el Sistema de archivos distribuidos de Hadoop (HDFS) y cómo escribir el código de MapReduce
  • Mejores prácticas y consideraciones para el desarrollo de Hadoop, técnicas de depuración e implementación de flujos de trabajo y algoritmos comunes
  • Cómo aprovechar Hive, Pig, Sqoop, Flume, Oozie y otros proyectos del ecosistema Apache Hadoop
  • Configuraciones de hardware óptimas y consideraciones de red para construir, mantener y monitorear su clúster Hadoop
  • Temas avanzados de la API de Hadoop requeridos para el análisis de datos del mundo real

http://j.mp/hadoop-bangalore-tra…

El mejor recurso viene a la mente para aprender sistemáticamente. MapReduce es Hadoop La Guía Definitiva, pero aprender directamente la Guía Definitiva puede confundirlo.
Necesita un paso fácil y sistemático para comprender hadoop y luego el modelo de programación de hadoop MapReduce. Si considera un recurso que puede no ser interesante, no paso a paso y, si no le resulta práctico, perderá interés. En este sentido, le recomendamos que consulte a Simplilearn como una de las mejores empresas de capacitación del mundo.
Big Data y Hadoop Training con certificación de expertos certificados | Aprendizaje simplificado

Hay un montón de empresas que ofrecen esta información de forma gratuita. Aquí hay un enlace a una conferencia en vivo sobre MapReduce que se entregará en vivo en línea. Ya que está en vivo, esta compañía (NAYA Academy) le permite hacer preguntas al final de la conferencia, lo cual es una buena ventaja si hay cosas específicas que desea aprender.

También tienen otras conferencias y cursos gratuitos sobre Data Tech.

Los libros como los patrones de diseño mapreduce le darán una buena idea de la arquitectura y el pensamiento mapreduce en MR. Además, suscribirse a la lista de correo de usuarios de hadoop sería otra opción. Tienen una vasta y excelente comunidad de apoyo para aclarar sus dudas.

Y por último, pero no menos importante, al comprender los códigos de las clases de hadoop, el código de la API de entore es la mejor manera de aprender cómo funciona MR para modificar sus propios programas.

En el lado algorítmico, hay un libro de Jimmy Lin y Chris Dyer: Procesamiento de texto con uso intensivo de datos con MapReduce. No es un libro sobre escribir código Java Hadoop; Se trata de diseñar algoritmos de MapReduce, y es muy bueno.

Comience aquí … grandes cosas.

https://www.udacity.com/course/u…

No necesita pagar nada, solo presione ver software del curso y puede registrarse utilizando la cuenta de Google.
Los cursos de Udacity son realmente buenos y construyen tu base de conocimientos correctamente.
Ciao!

Las conferencias de MapReduce en el curso de Introducción a la Ciencia de Datos en Coursera son muy buenas. Para obtener mejores resultados, haz los ejercicios de programación también.

El documento OSDI 2004 de Jeff Dean y Sanjay Ghemawat
VI Simposio sobre diseño e implementación de sistemas operativos – Documento técnico