Cómo optimizar la eficiencia operativa de los trabajos de mapreduce
La optimización del programa MapReduce se centra principalmente en dos aspectos: uno es la optimización del rendimiento informático y el otro es la optimización de las operaciones de IO.
Se refleja específicamente en los siguientes enlaces:
1. Programación de tareas
a. Intente elegir nodos inactivos para el cálculo
b. Intente asignar tareas a la máquina donde se encuentra InputSplit
2. Preprocesamiento de datos y tamaño de InputSplit
Intente procesar una pequeña cantidad de big data en lugar de una gran cantidad; pequeños datos. Por lo tanto, los datos se pueden preprocesar antes del procesamiento y los datos se pueden fusionar.
Si eres demasiado vago para fusionar, puedes consultar la función CombineFileInputFormat. Consulte el manual de funciones correspondiente para conocer el uso específico.
3. Número de tareas de Mapa y Reducción
El número de tareas en el espacio de tareas del Mapa debe referirse al tiempo de ejecución del Mapa, mientras que el número de tareas de Reducción solo necesita para referirse a las tareas en el número de espacio del mapa, generalmente 0,95 o 1,75 veces.
4. Utilice la función Combinar
Esta función se utiliza para fusionar datos locales y puede reducir en gran medida el consumo de la red. Consulte el manual de funciones para obtener más detalles.
5. Compresión
Algunos datos intermedios se pueden comprimir para reducir el consumo de la red.
6. Comparador personalizado
Puedes personalizar los tipos de datos para lograr propósitos más complejos.