Practice this topic in a realistic system design interview
When a dataset is too large for one machine, the work has to be split across many machines. That sounds simple until you have to decide how to split the data, how to combine partial results, and what to do when a machine crashes halfway through.
MapReduce answers those questions once, in a framework, so that each job only has to supply two small functions.
In this chapter, we will look at what MapReduce is, how a MapReduce job runs from start to finish, how it handles machine failures, and why newer systems have largely replaced it while keeping many of its ideas.