Sorting, Searching, and Simulation in the MapReduce Framework

  • Michael T. Goodrich
  • Nodari Sitchinava
  • Qin Zhang
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7074)


We study the MapReduce framework from an algorithmic standpoint, providing a generalization of the previous algorithmic models for MapReduce. We present optimal solutions for the fundamental problems of all-prefix-sums, sorting and multi-searching. Additionally, we design optimal simulations of the the well-established PRAM and BSP models in MapReduce, immediately resulting in optimal solutions to the problems of computing fixed-dimensional linear programming and 2-D and 3-D convex hulls.


Communication Complexity Binary Search Tree MapReduce Framework Read Request MapReduce Model 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alon, N., Megiddo, N.: Parallel linear programming in fixed dimension almost surely in constant time. J. ACM 41(2), 422–434 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Dean, J., Ghemawat, S.: MapReduce: simplified data processing on large clusters. Commun. ACM 51(1), 107–113 (2008)CrossRefGoogle Scholar
  3. 3.
    Dean, J., Ghemawat, S.: MapReduce: a flexible data processing tool. Commun. ACM 53(1), 72–77 (2010)CrossRefGoogle Scholar
  4. 4.
    DeWitt, D.J., Stonebraker, M.: MapReduce: A major step backwards. Database Column (2008),
  5. 5.
    Eisenstat, S.C.: O(log* n) algorithms on a Sum-CRCW PRAM. Computing 79(1), 93–97 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Feldman, J., Muthukrishnan, S., Sidiropoulos, A., Stein, C., Svitkina, Z.: On distributing symmetric streaming computations. In: Teng, S.H. (ed.) SODA, pp. 710–719. SIAM (2008)Google Scholar
  7. 7.
    Goodrich, M.T.: Randomized fully-scalable BSP techniques for multi-searching and convex hull construction. In: SODA, pp. 767–776 (1997)Google Scholar
  8. 8.
    Goodrich, M.T.: Communication-efficient parallel sorting. SIAM Journal on Computing 29(2), 416–432 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Goodrich, M.T., Sitchinava, N., Zhang, Q.: Sorting, searching, and simulation in the mapreduce framework (2011),
  10. 10.
    JáJá, J.: An Introduction to Parallel Algorithms. Addison-Wesley, Reading (1992)zbMATHGoogle Scholar
  11. 11.
    Kannan, S., Naor, M., Rudich, S.: Implicit representation of graphs. In: 20th Annual ACM Symposium on Theory of Computing (STOC), pp. 334–343 (1988)Google Scholar
  12. 12.
    Karloff, H., Suri, S., Vassilvitskii, S.: A model of computation for MapReduce. In: Proc. ACM-SIAM Sympos. Discrete Algorithms (SODA), pp. 938–948 (2010)Google Scholar
  13. 13.
    Valiant, L.G.: A bridging model for parallel computation. Comm. ACM 33, 103–111 (1990)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Michael T. Goodrich
    • 1
  • Nodari Sitchinava
    • 2
  • Qin Zhang
    • 2
  1. 1.Department of Computer ScienceUniversity of CaliforniaIrvineUSA
  2. 2.MADALGO, Department of Computer ScienceUniversity of AarhusDenmark

Personalised recommendations