15 años de liderazgo en MBA y Maestrías Online.
Contamos con más de 200.000 alumnos de 45 países.
Ofrecemos Becas del 65% de descuento.

InicioBig Data¿Cómo es el funcionamiento del MapReduce?

¿Cómo es el funcionamiento del MapReduce?

El nombre de esta herramienta de procesamiento de datos presentada por Google a inicios del siglo XXI proviene del funcionamiento del MapReduce, ya que integra dos fases principales, las cuales son Map y Reduce.

¿Cómo es el funcionamiento del MapReduce?

El nombre de esta herramienta de procesamiento de datos presentada por Google a inicios del siglo XXI proviene del funcionamiento del MapReduce, ya que integra dos fases principales, las cuales son Map y Reduce. Este tipo de arquitectura se denomina como Maestro-Esclavo, debido a que un ordenador principal recibe los datos y los distribuye a otra serie de servidores o “esclavos”.

MapReduce fue una innovación que en su momento dio como conclusión a ciertos inconvenientes que se planteaban en el seno de Google. Especialmente en lo referente a la optimización de los resultados de búsqueda. La solución fue el framework MapReduce, el cual es capaz de recopilar y procesar grandes cantidades de datos distribuyéndolos en distintos ordenadores. De manera que al final del proceso las respuestas sean mucho más rápidas.

¿Cómo se entiende el funcionamiento del MapReduce?

El funcionamiento del MapReduce está marcado por el procesamiento de datos estructurados en pares clave/valor o tuplas. La actividad del MapReduce comprende la extracción de valores de una inmensa cantidad de datos provenientes de distintos orígenes. Este procedimiento, el MapReduce lo lleva a cabo en dos fases con las cuales esté importante framework debe su nombre: Map y Reduce.

Durante la función Map, el funcionamiento del MapReduce consiste en recopilar y asignar valores a los distintos pares de claves que corresponden a un documento. Luego, durante la fase Reduce, se acumulan y procesan claves de diferentes documentos. Con la finalidad de crear un alcance reducido específico para cada clave a partir de los distintos valores que ya se han generado.

El funcionamiento del MapReduce fue ideado de esta forma debido a que en un determinado momento Google se vio en la necesidad de dar soporte a la computación paralela. En el procesamiento de grandes cantidades de datos para que este se llevara a cabo en varios computadores y no en un único ordenador principal. 

De esta forma se creó el procesamiento de datos distribuidos. La invención de MapReduce dio origen a múltiples implementaciones que existen a día de hoy. Dichas herramientas se han creado con base en distintos tipos de lenguajes de programación. Como por ejemplo Java o C++.

El funcionamiento del MapReduce

Un aspecto muy importante a tener en cuenta acerca del funcionamiento del MapReduce es su facilidad para ser implementado en el clúster. Esto último favorece el procesamiento de datos en paralelo de forma distribuida. Cada servidor u ordenador esclavo de clúster desarrolla individualmente la parte de datos que le corresponde.

La entrada de datos a la fase Map es un par o tupla de la forma clave/valor y su salida se da también en un par o varios. Basado en dichas claves, el servidor se encargará de unir y organizar resultados intermedios. Algo muy parecido sucede con la fase Reduce, cuya entrada es también un par, solo que en este caso es de la forma clave/lista de valores, mientras que su salida es otro par pero en la forma clave/valor.

Principales módulos del MapReduce

Como se ha mencionado, las fases Map y Reduce se basan en datos estructurados en pares clave/valor. De esta forma, la fase Map recibirá un par de la forma clave/valor y devolverá conjuntos de pares clave/valor. De esta forma, los datos de entrada en Map se procesan para obtener una lista. Agrupando datos intermedios asociados a la misma clave de entrada. Que luego pasarán a la fase Reduce.

Así pues, el funcionamiento del MapReduce consiste en labores Map y actividades Reduce independientes. Pero siempre con la condición de que cada una de estas labores Reduce pueden depender de las tareas Map. 

El funcionamiento del MapReduce se compone de una serie de módulos principales

  • Entrada o Input. Se encarga de dividir la entrada en bloques de tamaño reducido, a la vez que asigna divisiones a las funciones Map.
  • Función Map. En esta etapa la función Map recibe pares clave/valor, los procesa y genera ninguno o varios pares clave/valor, pero esta vez de salida.
  • Función de partición. En este módulo se obtiene un hash de la clave.
  • Función de comparación. Se encarga de enviar órdenes a las entradas hacia la siguiente representación, la función Reduce.
  • Función Reduce. Genera una lista de valores de salida para la clave enviada en la orden de la función anterior.
  • Escritor de salida (Output). Registra la salida de la reducción en tablas de almacenamiento.

Hadoop MapReduce

Se trata de un open source implementación de MapReduce. Hadoop es una herramienta desarrollada por Apache Software Foundation. La cual posibilita el desarrollo de aplicaciones de procesamiento paralelo. Gracias a esto es posible trabajar con una gran cantidad de nodos y unidades de información. 

Lo más importante de la implementación de Hadoop por parte de las empresas es que de esta manera han podido combinarlo con el resto de sistemas informáticos. De esa forma, tanto los datos antiguos como los nuevos pueden almacenarse por igual. Lo cual representa una de las mejores virtudes de Hadoop, ya que se desarrolló para analizar velozmente tanto datos estructurados como datos más complejos. 

Otra de las grandes virtudes de Hadoop es su sistema de seguridad. Como corrección a algunas desventajas de MapReduce, en Hadoop es posible acceder a datos distribuidos y realizar búsquedas en paralelo sin que se produzcan fallos.

El funcionamiento del MapReduce ha originado la creación de diversas implementaciones. Que mejoran y hacen más especializado el sistema. Esto es un aspecto muy importante en el procesamiento de datos masivos en el entorno empresarial. 

Lo anterior se traduce en la necesidad de profesionales con una cualificación muy específica. Nuestra Maestría Big Data & Business Analytics te lleva a ahondar en cada fundamento del uso de herramientas de software como las que aquí se describen.

¡Comparte este artículo!

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí