Assignment of different-sized inputs in MapReduce

Foto Afrati, Shlomi Dolev, Ephraim Korach, Shantanu Sharma, Jeffrey D. Ullman

Research output: Contribution to journalConference articlepeer-review

3 Scopus citations

Abstract

A MapReduce algorithm can be described by a mapping schema, which assigns inputs to a set of reducers, such that for each required output there exists a reducer that receives all the inputs that participate in the computation of this output. Reducers have a capacity, which limits the sets of inputs that they can be assigned. However, individual inputs may vary in terms of size. We consider, for the first time, mapping schemas where input sizes are part of the considerations and restrictions. One of the significant parameters to optimize in any MapReduce job is communication cost between the map and reduce phases. The communication cost can be optimized by minimizing the number of copies of inputs sent to the reducers. The communication cost is closely related to the number of reducers of constrained capacity that are used to accommodate appropriately the inputs, so that the requirement of how the inputs must meet in a reducer is satisfied. In this work, we consider a family of problems where it is required that each input meets with each other input in at least one reducer. We also consider a slightly different family of problems in which, each input of a set, X, is required to meet each input of another set, Y , in at least one reducer. We prove that finding an optimal mapping schema for these families of problem is NP-hard, and present several approximation algorithms for finding a near optimal mapping schema.

Original languageEnglish
Pages (from-to)28-37
Number of pages10
JournalCEUR Workshop Proceedings
Volume1330
StatePublished - 1 Jan 2015
EventJoint Workshops of the International Conference on Extending Database Technology and the International Conference on Database Theory, EDBT/ICDT-WS 2015 - Brussels, Belgium
Duration: 27 Mar 2015 → …

Fingerprint

Dive into the research topics of 'Assignment of different-sized inputs in MapReduce'. Together they form a unique fingerprint.

Cite this