Proceso de operación Hadoop_MapReduce-5 etapas de la operación de trabajo MR

 

Artículo de referencia: 

https://www.cnblogs.com/cjsblog/p/8168642.html

https://www.jianshu.com/p/461f86936972

https://blog.csdn.net/wyqwilliam/article/details/84669579

5 etapas de la operación mapreduce


Mapreduce se resume a grandes rasgos en 5 pasos en el proceso de ejecución

1. [input阶段]获取输入数据进行分片作为map的输入
2. [map阶段]过程对某种输入格式的一条记录解析成一条或多条记录
3. [shffle阶段]对中间数据的控制,作为reduce的输入
4. [reduce阶段]对相同key的数据进行合并
5. [output阶段]按照格式输出到指定目录

 

 

Diagrama de proceso en ejecución

 

 

etapa de entrada

input阶段主要是从节点上反序列化数据,读取后切片,供map阶段使用
序列化格式和inputformat格式可以自定义设置
只有支持分片的压缩格式可以分片
记录格式:如serse 用正则表达式来转换文本hive

Los pasos específicos son los siguientes:


1. Acceda a los datos en el nodo de datos para deserializar los datos y el segmento, asigne una tarea de mapa a cada segmento
2. Realice estas tareas simultáneamente
3. Lea cada registro en el segmento a través de recordReader, lea de acuerdo con el formato de registro, parcial El valor de desplazamiento se usa como la clave del mapa, y la línea de registro se usa como el valor, que se usa como parámetro del método del mapa.
 

 

etapa del mapa

通过对输入记录的处理,转换成一个或多个中间记录

 

 

etapa aleatoria

需要注意:
1. shuffle阶段会对中间值进行优化,并且将分区的数据分发给各个reduce处理

map任务的输出默认是放在本地磁盘的临时缓冲目录中的

分区,排序,combiner过程可自定义

由于受限于集群可用带宽,通常会对中间数据做压缩,combiner处理,减少网络带宽消耗

分区的作用就是决定根据map 输出的key值由哪个reduce处理

mapper实现类读取配置文件属性,可以在配置中指定压缩的格式

每一个分组的后台线程对输出结果的key进行排序,在排序的过程中,有combine函数则会进行调用

1. Los datos del mapa se enviarán primero al búfer de memoria. Después de alcanzar el umbral predeterminado del 80%, los datos se escribirán localmente como la tarea del mapa, y se generará un pequeño archivo para cada escritura.
2. En el proceso de escritura en el local, pasará por el proceso de particionamiento, clasificación y combinación (opcional)
3. Cuando el último archivo se escribe en el disco local, los archivos del área y el área se fusionan, ordenan y comprimen ( (Opcional)
4. Los archivos grandes que han sido ordenados por la partición se copiarán en la reducción correspondiente de acuerdo con las diferentes particiones 5. El
extremo de la copia copiará los datos del extremo del mapa a través de la red http
6. Los datos de entrada se ordenarán y fusionarán. Devolverá un iterador de valores después de 2 tipos
7. Agrupe los valores de la misma clave como un conjunto de valores, como entrada para reducir
 

 

reducir etapa

处理<key,list<value>>对,对每个key产生一个结果

 

etapa de salida

对输出数据通常会做压缩,节省磁盘空间

将reduce结果按照输出的格式写入文件中

Según el formato del archivo de salida, envíe cada resultado de par clave-valor por una línea. El separador medio predeterminado es '\ t'. El método toString () del objeto de par clave-valor se llama por defecto
 

519 artículos originales publicados · elogiados 1146 · 2,83 millones de visitas

Supongo que te gusta

Origin blog.csdn.net/u010003835/article/details/105334025
Recomendado
Clasificación