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:

  1. Utiliza una función mapper para convertir cada elemento en cero o más pares clave/valor. (A menudo se denomina función map, pero ya existe una función Python llamada map y no necesitamos confundir ambas).

  2. Reúne todas las parejas con claves idénticas.

  3. 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.