Ya hemos hablado de estas 2 tecnologías en varias ocasiones, pero nunca juntas 🙂

MapReduce es un framework software creado por Google en 2004 para computación distribuida en cluster sobre grandes volúmenes de datos.

MongoDB es una base de datos NoSQL orientada a documentos escrita en C++.
MongoDB soporta este modelo de programación y además es una buena forma de entender los conceptos de MapReduce como vais a ver:

A través de la consola de MongoDB podemos insertar registros:

Y buscarlos:

Podríamos usar el concepto MapReduce en MongoDB por ejemplo para contar el número de libros que tienen más de 250 páginas.

Escribo la función map:

Que después de haber insertado más libros retornaría:

Escribimos la función reduce:

Finalmente ejecuto la función mapreduce sobre la colección de books:

Podéis comparar este MapReduce con un MapReduce básico en Java:

http://kickstarthadoop.blogspot.com.es/2011/04/word-count-hadoop-map-reduce-example.html

Leer artículo completo