Day 1: MapReduce
MapReduce is a broad term. Sometimes itâs used to describe the common pattern of breaking an algorithm down into two steps: a map over a data structure, followed by a reduce operation. Our functional word count (see the âcodeâââ) is an example of exactly this (remember that frequencies is implemented using reduce). As we saw in âDay 2: Functional Parallelismâ, one of the benefits of breaking an algorithm down in this way is that it lends itself to parallelization.
But MapReduce can also be used to mean something more specificâa system that takes an algorithm encoded as a map followed by a reduce and efficiently distributes it across a cluster of computers. Not only does such a system automatically partition ...
Get Seven Concurrency Models in Seven Weeks 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.