Provide an example of a distributed computation that would be difficult to implement in MapReduce, giving full reasons for your answer.

What will be an ideal response?

MapReduce is designed to work well with applications that fit the pattern of taking large datasets, performing the same operation (the map operation) on different chunks of this data, producing a set of intermediary results, sorting these intermediary results (by intermediary key), then combining these intermediary results into a single value or values, again by carrying out a number of parallel executions of the same operation (the reduce operation). This is a flexible paradigm that matches many styles of distributed computation, but not all.
Consider for example a computation that follows a pipeline pattern where the results of one computation feed directly into another and so on, along a pipeline (for example as in the class Sieve of Eratosthenes algorithm). This is fundamentally a different programming pattern that would not work well in MapReduce. There are many other examples of distributed computation that do not fall into the pattern supported by MapReduce.

Computer Science & Information Technology

You might also like to view...

Which of the following is NOT identified in the full path of a file?

A) Subfolder B) Folder C) Drive location D) Transfer protocol

Computer Science & Information Technology

Aero Glass is the commercial name for the simplest Home version of Windows 7

Indicate whether the statement is true or false

Computer Science & Information Technology