¿Cuál es la relación entre hadoop y mapreduce?
Hadoop es un marco de software que puede procesar grandes cantidades de datos de forma distribuida. Implementa el modelo y marco de programación MapReduce de Google, que puede dividir una aplicación en muchas unidades de trabajo pequeñas y ejecutarlas en cualquier nodo del clúster.
MapReduce es el módulo central de operaciones de datos en Hadoop. MapReduce genera archivos de ejecución de tareas a través de JobClient, programa y asigna TaskTracker para completar tareas en JobTracker.
Datos extendidos
1. Prototipo del marco de computación distribuida MapReduce;
El modelo de computación distribuida MapReduce fue propuesto por Google y se utiliza principalmente en el campo de búsqueda para resolver. Problema de cálculo de datos masivos. La implementación de código abierto de Apache, integrada en hadoop, realiza computación de datos distribuidos generales.
MR incluye dos etapas: Mapear y Reducir. Los usuarios solo necesitan implementar las funciones map() y reduce() para implementar la computación distribuida, lo cual es muy simple. Simplifica enormemente el desarrollo de controladores concurrentes distribuidos.
La etapa de mapeo es el procesamiento de segmentación.
La etapa Reducir es el procesamiento de resumen. Después de la agregación, también se pueden realizar una serie de operaciones de embellecimiento en los datos y luego generarlos.
2. Introducción a los componentes de MapReduce:
JobClient: se utiliza para generar paquetes de ejecución de trabajos a partir de tareas de trabajo del usuario y colocarlos en HDFS.
JobinProgress: descomponga el paquete de ejecución del trabajo en MapTask y ReduceTask y guárdelo en TaskTracker.
JobTracker (principal): programa y gestiona las tareas de ejecución de TaskTracker.
TaskTracker(de): realiza cálculos de mapas asignados o reduce las tareas de cálculo.