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.


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)MathSciNetCrossRefMATHGoogle 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)MathSciNetCrossRefMATHGoogle 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)MathSciNetCrossRefMATHGoogle 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)MATHGoogle 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