  Most of the popular Big Data analytics tools evolved to adapt their working
environment to extract valuable information from a vast amount of unstructured
data. The ability of data mining techniques to filter this helpful information
from Big Data led to the term Big Data Mining. Shifting the scope of data from
small-size, structured, and stable data to huge volume, unstructured, and
quickly changing data brings many data management challenges. Different tools
cope with these challenges in their own way due to their architectural
limitations. There are numerous parameters to take into consideration when
choosing the right data management framework based on the task at hand. In this
paper, we present a comprehensive benchmark for two widely used Big Data
analytics tools, namely Apache Spark and Hadoop MapReduce, on a common data
mining task, i.e., classification. We employ several evaluation metrics to
compare the performance of the benchmarked frameworks, such as execution time,
accuracy, and scalability. These metrics are specialized to measure the
performance for classification task. To the best of our knowledge, there is no
previous study in the literature that employs all these metrics while taking
into consideration task-specific concerns. We show that Spark is 5 times faster
than MapReduce on training the model. Nevertheless, the performance of Spark
degrades when the input workload gets larger. Scaling the environment by
additional clusters significantly improves the performance of Spark. However,
similar enhancement is not observed in Hadoop. Machine learning utility of
MapReduce tend to have better accuracy scores than that of Spark, like around
3%, even in small size data sets.
