Clash of the titans
- 1 September 2015
- journal article
- Published by Association for Computing Machinery (ACM) in Proceedings of the VLDB Endowment
- Vol. 8 (13), 2110-2121
- https://doi.org/10.14778/2831360.2831365
Abstract
MapReduce and Spark are two very popular open source cluster computing frameworks for large scale data analytics. These frameworks hide the complexity of task parallelism and fault-tolerance, by exposing a simple programming API to users. In this paper, we evaluate the major architectural components in MapReduce and Spark frameworks including: shuffle, execution model, and caching, by using a set of important analytic workloads. To conduct a detailed analysis, we developed two profiling tools: (1) We correlate the task execution plan with the resource utilization for both MapReduce and Spark, and visually present this correlation; (2) We provide a break-down of the task execution time for in-depth analysis. Through detailed experiments, we quantify the performance differences between MapReduce and Spark. Furthermore, we attribute these performance differences to different components which are architected differently in the two frameworks. We further expose the source of these performance differences by using a set of micro-benchmark experiments. Overall, our experiments show that Spark is about 2.5x, 5x, and 5x faster than MapReduce, for Word Count, k-means, and PageRank, respectively. The main causes of these speedups are the efficiency of the hash-based aggregation component for combine, as well as reduced CPU and disk overheads due to RDD caching in Spark. An exception to this is the Sort workload, for which MapReduce is 2x faster than Spark. We show that MapReduce's execution model is more efficient for shuffling data than Spark, thus making Sort run faster on MapReduce.Keywords
This publication has 9 references indexed in Scilit:
- TachyonPublished by Association for Computing Machinery (ACM) ,2014
- MRTunerProceedings of the VLDB Endowment, 2014
- Apache Hadoop YARNPublished by Association for Computing Machinery (ACM) ,2013
- X-RIME: Cloud-Based Large Scale Social Network AnalysisPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2010
- PregelPublished by Association for Computing Machinery (ACM) ,2010
- The HiBench benchmark suite: Characterization of the MapReduce-based data analysisPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2010
- MapReduceCommunications of the ACM, 2008
- Measurement and analysis of online social networksPublished by Association for Computing Machinery (ACM) ,2007
- The ganglia distributed monitoring system: design, implementation, and experienceParallel Computing, 2004