Capítulo 25. MapReduce
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
El futuro ya ha llegado. Sólo que aún no está distribuido uniformemente.
William Gibson
MapReduce es un modelo de programación para realizar procesamientos paralelos en grandes conjuntos de datos. Aunque es una técnica potente, sus fundamentos son relativamente sencillos.
Imagina que tenemos una colección de elementos que nos gustaría procesar de alguna manera. Por ejemplo, los elementos pueden ser los registros de un sitio web, los textos de varios libros, archivos de imágenes o cualquier otra cosa. Una versión básica de del algoritmo MapReduce consta de los siguientes pasos:
-
Utiliza una función
mapper
para convertir cada elemento en cero o más pares clave/valor. (A menudo se denomina funciónmap
, pero ya existe una función Python llamadamap
y no necesitamos confundir ambas). -
Reúne todas las parejas con claves idénticas.
-
Utiliza una función
reducer
en cada colección de valores agrupados para producir valores de salida para la clave correspondiente.
Nota
MapReduce está un poco pasado de moda, tanto que me planteé eliminar este capítulo de la segunda edición. Pero decidí que sigue siendo un tema interesante, así que acabé dejándolo (obviamente).
Todo esto es un poco abstracto, así que veamos un ejemplo concreto. Hay pocas reglas absolutas de la ciencia de datos, pero una de ellas es que tu primer ejemplo de MapReduce tiene que implicar ...
Get Ciencia de datos desde cero, 2ª edición now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.