Electrical Engineering
      and Computer Sciences

Electrical Engineering and Computer Sciences

COLLEGE OF ENGINEERING

UC Berkeley

Improving MapReduce Performance in Heterogeneous Environments

Andrew Konwinski

EECS Department
University of California, Berkeley
Technical Report No. UCB/EECS-2009-183
December 17, 2009

http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-183.pdf

MapReduce is emerging as an important programming model for large-scale data-parallel applications such as web indexing, data mining, and scientific simulation. Hadoop is an open-source implementation of MapReduce enjoying wide adoption and is often used for short jobs where low response time is critical. Hadoop's performance is closely tied to its task scheduler, which implicitly assumes that cluster nodes are homogeneous and tasks make progress linearly, and uses these assumptions to decide when to speculatively re-execute tasks that appear to be stragglers. In practice, the homogeneity assumptions do not always hold. An especially compelling setting where this occurs is a virtualized data center, such as Amazon's Elastic Compute Cloud (EC2). We show that Hadoop's scheduler can cause severe performance degradation in heterogeneous environments. We design a new scheduling algorithm, Longest Approximate Time to End (LATE), that is highly robust to heterogeneity. LATE can improve Hadoop response times by a factor of 2 in heterogeneous cluster environments.

Advisor: Randy H. Katz


BibTeX citation:

@mastersthesis{Konwinski:EECS-2009-183,
    Author = {Konwinski, Andrew},
    Title = {Improving MapReduce Performance in Heterogeneous Environments},
    School = {EECS Department, University of California, Berkeley},
    Year = {2009},
    Month = {Dec},
    URL = {http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-183.html},
    Number = {UCB/EECS-2009-183},
    Abstract = {MapReduce is emerging as an important programming model for large-scale data-parallel applications such as web indexing, data mining, and scientific simulation. Hadoop is an open-source implementation of MapReduce enjoying wide adoption and is often used for short jobs where low response time is critical. Hadoop's performance is closely tied to its task scheduler, which implicitly assumes that cluster nodes are homogeneous and tasks make progress linearly, and uses these assumptions to decide when to speculatively re-execute tasks that appear to be stragglers. In practice, the homogeneity assumptions do not always hold. An especially compelling setting where this occurs is a virtualized data center, such as Amazon's Elastic Compute Cloud (EC2). We show that Hadoop's scheduler can cause severe performance degradation in heterogeneous environments. We design a new scheduling algorithm, Longest Approximate Time to End (LATE), that is highly robust to heterogeneity. LATE can improve Hadoop response times by a factor of 2 in heterogeneous cluster environments.}
}

EndNote citation:

%0 Thesis
%A Konwinski, Andrew
%T Improving MapReduce Performance in Heterogeneous Environments
%I EECS Department, University of California, Berkeley
%D 2009
%8 December 17
%@ UCB/EECS-2009-183
%U http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-183.html
%F Konwinski:EECS-2009-183