A Survey of Graph Algorithms Under Extended Streaming Models of Computation

  • Thomas C. O’ConnellEmail author


There has been a great deal of recent interest in the streaming model of computation where algorithms are restricted to a single pass over the data and have significantly less internal memory available than would be required to store the entire stream of data. Because of the inherent difficulty of solving graph problems in the streaming model, a number of extensions to the streaming model have been considered, namely the Semi-Streaming model, the W-Stream model, and the Stream-Sort model. In this chapter, we survey the algorithms developed for graph problems in each of these models. The survey is intended to be tutorial in nature although familiarity with graph algorithms is assumed.


streaming stream-sort graph algorithms communication complexity 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    G. Aggarwal, M. Datar, S. Rajagopalan, and M. Ruhl. On the streaming model augmented with a sorting primitive. In Proc. 45th Annual IEEE Symp. Foundations of Computer Science (FOCS’04), pages 540–549, Rome, Italy, 2004. Google Scholar
  2. [2]
    N. Alon, Y. Matias, and M. Szegedy. The space complexity of approximating the frequency moments. J. Computer and System Sciences, 58(1):137–147, 1999. zbMATHCrossRefMathSciNetGoogle Scholar
  3. [3]
    B. Babcock, S. Babu, M. Datar, R. Motwani, and J. Widom. Models and issues in data stream systems. In Proc. 21st ACM SIGMOD-SIGACT-SIGART Symp. Principles of Database Systems, pages 1–16, Madison, WI, 2002. Google Scholar
  4. [4]
    Z. Bar-Yossef, R. Kumar, and D. Sivakumar. Reductions in streaming algorithms, with an application to counting triangles in graphs. In Proc. 13th Annual ACM-SIAM Symp. Discrete Algorithms, pages 623–632, San Francisco, CA, 2002. Google Scholar
  5. [5]
    Z. Bar-Yossef, T. Jayram, R. Kumar, and D. Sivakumar. An information statistics approach to data stream and communication complexity. J. Computer and System Sciences, 68(4):702–732, 2004. zbMATHCrossRefMathSciNetGoogle Scholar
  6. [6]
    A. L. Buchsbaum, R. Giancarlo, and J. R. Westbrook. On finding common neighborhoods in massive graphs. Theoretical Computer Science, 299(1-3):707–718, 2003. zbMATHCrossRefMathSciNetGoogle Scholar
  7. [7]
    T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein. Introduction to algorithms. McGraw–Hill/MIT Press, Cambridge, 2001. zbMATHGoogle Scholar
  8. [8]
    C. Demetrescu, I. Finocchi, and A. Ribichini. Trading off space for passes in graph streaming problems. In Proc. 17th Annual ACM-SIAM Symp. Discrete Algorithms, pages 714–723, Miami, FL, 2006. Google Scholar
  9. [9]
    M. Elkin and J. Zhang. Efficient algorithms for constructing (1+ε, β)-spanners in the distributed and streaming models. In Proc. 23rd Annual ACM Symp. Principles of Distributed Computing, pages 160–168, St. John’s, Canada, 2004. Google Scholar
  10. [10]
    D. Eppstein, Z. Galil, G. F. Italiano, and A. Nissenzweig. Sparsification: a technique for speeding up dynamic graph algorithms. J. ACM, 44(5):669–696, 1997. zbMATHCrossRefMathSciNetGoogle Scholar
  11. [11]
    J. Feigenbaum, S. Kannan, A. McGregor, S. Suri, and J. Zhang. Graph distances in the streaming model: the value of space. In Proc. 16th Annual ACM-SIAM Symp. Discrete Algorithms, pages 745–754, Vancouver, Canada, 2005. Google Scholar
  12. [12]
    J. Feigenbaum, S. Kannan, A. McGregor, S. Suri, and J. Zhang. On graph problems in a semi-streaming model. Theoretical Computer Science, 348(2-3):207–216, 2005. zbMATHCrossRefMathSciNetGoogle Scholar
  13. [13]
    R. Guha, R. Kumar, D. Sivakumar, and R. Sundaram. Unweaving a web of documents. In Proc. 11th ACM SIGKDD Intl. Conf. Knowledge Discovery in Data Mining, pages 574–579, Chicago, IL, 2005. Google Scholar
  14. [14]
    M. Henzinger, P. Raghavan, and S. Rajagopalan. Computing on data streams. In External Memory Algorithms. DIMACS Series in Discrete Mathematics and Theoretical Computer Science, volume 50, pages 107–118. American Mathematical Society, Providence, 2000. Google Scholar
  15. [15]
    D. E. Knuth. Sorting and Searching. The Art of Computer Programming, volume 3. Addison–Wesley–Longman, Redwood City, 2nd edition, 1998. Google Scholar
  16. [16]
    E. Kushilevitz and N. Nisan. Communication Complexity. Cambridge University Press, New York, 1996. Google Scholar
  17. [17]
    J. I. Munro and M. S. Paterson. Selection and sorting with limited storage. Theoretical Computer Science, 12(3):315–323, 1980. zbMATHCrossRefMathSciNetGoogle Scholar
  18. [18]
    S. Muthukrishnan. Data streams: algorithms and applications. In Proc. 14th Annual ACM-SIAM Symp. Discrete Algorithms, page 413, Baltimore, MD, 2003. Google Scholar
  19. [19]
    L. Page, S. Brin, R. Motwani, and T. Winograd. The pagerank citation ranking: Bringing order to the web. Technical Report 1999-66, Stanford Digital Libraries, Nov. 1999. Google Scholar
  20. [20]
    M. Ruhl. Efficient algorithms for new computational models. PhD Thesis, Department of Computer Science, MIT, Cambridge, MA, 2003. Google Scholar
  21. [21]
    R. E. Tarjan. Data Structures and Network Algorithms. SIAM, Philadelphia, 1983. Google Scholar
  22. [22]
    R. Uehara and Z. Chen. Parallel approximation algorithms for maximum weighted matching in general graphs. Information Processing Letters, 76(1-2):13–17, 2000. CrossRefMathSciNetGoogle Scholar
  23. [23]
    J. S. Vitter. External memory algorithms and data structures: Dealing with massive data. ACM Computing Surveys, 33(2):209–271, 2001. CrossRefGoogle Scholar
  24. [24]
    A. C. Yao. Some complexity questions related to distributive computing (preliminary report). In Proc. 11th Annual ACM Symp. Theory of Computing, pages 209–213, Atlanta, GA, Apr.–May 1979. Google Scholar

Copyright information

© Springer Science + Business Media B.V. 2009

Authors and Affiliations

  1. 1.Department of Mathematics and Computer ScienceSkidmore CollegeSaratoga SpringsUSA

Personalised recommendations