In this case, the input data size is equal to the output data size. However, as evident word count (WC) plots, the relationship between processing time and input data size is non-trivial and therefore there need for more investigation. The amount of data that passes through the various phases of the MapReduce pattern is crucial to its overall performance. This leads us to dig further into the low-level details of the framework. This work can also serve as a foundation for performance modelling of big data frameworks like Apache Spark, a general purpose computation engine that does of superset of what MapReduce does. The findings could be useful in size-based schedulers to run small jobs even when the cluster is loaded with long running and expensive jobs.

![**Execution time for varying datasets for MapReduce WordCount, TeraSort and Simple-Sort Programs** []{data-label="joblevel"}](images/joblevel2){width="35.00000%"}

The research questions we seek to address in this paper are:

-   RQ0: Considering the ubiquity of MapReduce workloads, can we use a generic approach to model the performance of MapReduce applications?

-   RQ1: Considering how expensive it is to improvise a production size Hadoop cluster, can we identify major performance drivers for the MapReduce framework and use them to 