MapReduce es un modelo de programación para dar soporte a la computación paralela sobre grandes colecciones de datos en grupos de computadoras y al commodity computing. El nombre del framework está inspirado en los nombres de dos importantes métodos, macros o funciones en programación funcional: Map y Reduce. MapReduce ha sido adoptado mundialmente, ya que existe una implementación OpenSource denominada Hadoop. Su desarrollo fue liderado inicialmente por Yahoo y actualmente lo realiza el proyecto Apache. Desde la década de los años 2010 existen diversas iniciativas similares a Hadoop tanto en la industria como en el ámbito académico. Se han escrito implementaciones de bibliotecas de MapReduce en diversos lenguajes de programación como C++, Java y Python.
MapReduce es un enfoque utilizado para resolver algoritmos que pueden ser paralelizados y que involucran grandes conjuntos de datos. Sin embargo, no es una solución universal y no garantiza eficiencia óptima en todos los problemas. Se utiliza principalmente en situaciones donde se manejan datasets de gran tamaño, como petabytes, y se ejecuta en sistemas de archivos distribuidos, como HDFS.
El uso de herramientas de procesamiento masivo y distribuido de datos como Hadoop a través del paradigma MapReduce, permiten a las empresas acceder a la posibilidad de escalar de manera veloz, sin tener que depender de la capacidad de procesamiento de un solo equipo de trabajo o de cantidades pequeñas de información sobre las cuales realizar análisis. La implementación de estas herramientas de procesamiento hace uso eficiente de los recursos de la máquina y es óptima para una gran variedad de problemas computacionales.