Parallel External Sorting

  • Yannis Manolopoulos
  • Yannis Theodoridis
  • Vassilis J. Tsotras
Part of the Advances in Database Systems book series (ADBS, volume 17)


One of the goals of computer science is to invent effective and efficient methods towards problem solving. However, even if the best method (time optimal) is applied to solve a particular problem, the results may not be satisfactory to use the method in a real-life situation. For example, even if we apply the best sorting algorithm on a set of 10,000,000 records, the real-time constraints that are posed by the application may not be satisfied. Therefore, apart from the design and implementation of efficient algorithms, the research community is still developed new techniques aiming at more efficient processing. One such technique is the exploitation of multiple resources (processors, disks) to reduce the processing costs.


Parallel Algorithm Query Processing Large Data Base Load Imbalance Initial File 
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. Balakrishna, R., Iyer, D., and Dias, M. (1990). System Issues in Parallel Sorting for Database Systems. In Proceedings of the 6 th IEEE International Conference on Data Engineering, pages 246–255Google Scholar
  2. Beck, M., Bitton, D., and Wilkinson, W.K. (1988). Sorting Large Files on a Backend Multiprocessor. IEEE Transactions on Computers, 37(7):769–778.CrossRefGoogle Scholar
  3. Bitton, D. (1982). Design, Analysis and Implementation of Parallel External Sorting Algorithms. Ph.D. Dissertation, TR 464, Departemnt of Computer Science, University of Wisconsin-Madison.Google Scholar
  4. DeWitt, D.J., Naughton, J.F., and Schneider, D.A. (1991). Parallel Sorting on a Shared-Nothing Architecture using Probabilistic Splitting. In Proceedings of the 1 st International Conference on Parallel and Distributed Information Systems, pages 280–291.Google Scholar
  5. DeWitt, D.J. and Gray, J. (1992). Parallel Database Systems: the Future of High Performance Database Systems. Communications of the ACM, 35(6):85–98.CrossRefGoogle Scholar
  6. Graefe, G. (1990). Encapsulation of Parallelism in the Volcano Query Processing System. In Proceedings of ACM SIGMOD Conference on Management of Data, pages 102–111.Google Scholar
  7. Graefe, G. (1993). Query Evaluation Techniques for Large Databases. A CM Computing Surveys, 25(2):73–170.CrossRefGoogle Scholar
  8. Gray, J., Stewart, M., Tsukerman, A., Uren, S., and Vaughan, B. (1986). Fastsort: an External Sort using Parallel Processing. Tandem Systems Review, 2.Google Scholar
  9. Iyer, B.R., Ricard, G.R., and Varman, P.J. (1989). Percentile Finding Algorithm for Multiple Sorted Runs. In Proceedings of the 15 th International Conference on Very Large Data Bases, pages 135–144.Google Scholar
  10. Knuth, D.E. (1973). The Art of Computer Programming, Vol.3: Sorting and Searching. Addison-Wesley.Google Scholar
  11. Kumar, A., Lee, T., and Tsotras, J. (1995). A Load-Balanced Parallel Sorting Algorithm for Shared-Nothing Architectures. Distributed and Parallel Databases, 3(1):37–68.CrossRefGoogle Scholar
  12. Lu, H., Ooi, B.-C, and Tan, K.L. (1994). Query Processing in Parallel Relational Database Systems. IEEE CS Press.Google Scholar
  13. Menezes, B.L., Ricarte, I.L.M., and Thurimella, R. (1993). Analysis of Pipelined External Sorting on a Reconfigurable Message-Passing Multicomputer. Parallel Computing, 19(8):839–858.CrossRefGoogle Scholar
  14. Menon, J. (1986). A Study of Sort Algorithms for Multiprocessor Database Machines. In Proceedings of the 12 th International Conference on Very Large Data Bases, pages 197–206.Google Scholar
  15. Nyberg, C, Barclay, T., Cvetanovic, Z., Gray, J., and Lomet, D. (1995). Alphasort: A Cache-Sensitive Parallel External Sort. The VLDB Journal, 4(4):603–627.CrossRefGoogle Scholar
  16. Pai, V.S. and Varman, P.J. (1992). Prefetching with Multiple Disks for External Mergesort-Simulation and Analysis. In Proceedings of the 8 th IEEE International Conference on Data Engineering, pages 273–282.Google Scholar
  17. Verkamo, A.I. (1988). External Quicksort. Performance Evaluation, 8(4):271–288.MathSciNetzbMATHCrossRefGoogle Scholar
  18. Wegner, L.M. and Teuhola, J.I. (1989). The External Heapsort. IEEE Transactions on Software Engineering, 15(7):917–925.CrossRefGoogle Scholar
  19. Wolf, J.L., Dias, D.M., and Yu, P.S. (1990). An Effective Algorithm for Parallelizing Sort Merge in the Presence of Data Skew. In Proceedings of the 2 nd International Symposium on Parallel and Distributed Systems, pages 103–115.Google Scholar
  20. Zhang, W. and Larson, P. A. (1997). Dynamic Memory Adjustment for External Mergesort. In Proceedings of the 23 rd International Conference on Very Large Data Bases, pages 376–385.Google Scholar
  21. Zhang, W. and Larson, P.A. (1998). Buffering and Read-Ahead Strategies for External Mergesort. In Proceedings of the 24 th International Conference on Very Large Data Bases, pages 523–533.Google Scholar

Copyright information

© Springer Science+Business Media New York 2000

Authors and Affiliations

  • Yannis Manolopoulos
    • 1
  • Yannis Theodoridis
    • 2
  • Vassilis J. Tsotras
    • 3
  1. 1.Aristotle UniversityGreece
  2. 2.Greece
  3. 3.University of CaliforniaRiversideUSA

Personalised recommendations