skip to main content
research-article

Leopard: lightweight edge-oriented partitioning and replication for dynamic graphs

Published:01 March 2016Publication History
Skip Abstract Section

Abstract

This paper introduces a dynamic graph partitioning algorithm, designed for large, constantly changing graphs. We propose a partitioning framework that adjusts on the fly as the graph structure changes. We also introduce a replication algorithm that is tightly integrated with the partitioning algorithm, which further reduces the number of edges cut by the partitioning algorithm. Even though the proposed approach is handicapped by only taking into consideration local parts of the graph when reassigning vertices, extensive evaluation shows that the proposed approach maintains a quality partitioning over time, which is comparable at any point in time to performing a full partitioning from scratch using a state-the-art static graph partitioning algorithm such as METIS. Furthermore, when vertex replication is turned on, edge-cut can improve by an order of magnitude.

References

  1. K. Andreev and H. Räcke. Balanced graph partitioning. In ACM Symposium on Parallelism in Algorithms and Architectures '04.Google ScholarGoogle Scholar
  2. A.-L. Barabasi and R. Albert. Emergence of scaling in random networks. Science, 286(5439):509--512, 1999.Google ScholarGoogle Scholar
  3. S. T. Barnard. Pmrsb: Parallel multilevel recursive spectral bisection. In Supercomputing '95.Google ScholarGoogle Scholar
  4. V. D. Blondel, J.-L. Guillaume, R. Lambiotte, and E. Lefebvre. Fast unfolding of communities in large networks. Journal of Statistical Mechanics: Theory and Experiment, 2008.Google ScholarGoogle Scholar
  5. C. Chevalier and F. Pellegrini. Pt-scotch: A tool for efficient parallel graph ordering. Parallel Comput. '08.Google ScholarGoogle Scholar
  6. C. Curino, E. Jones, Y. Zhang, and S. Madden. Schism: A workload-driven approach to database replication and partitioning. PVLDB, 3(1), 2010.Google ScholarGoogle Scholar
  7. Q. Duong, S. Goel, J. Hofman, and S. Vassilvitskii. Sharding social networks. In Proc. of WSDM, 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. G. Even, J. S. Naor, S. Rao, and B. Schieber. Fast approximate graph partitioning algorithms. In SODA '97.Google ScholarGoogle Scholar
  9. C. Fiduccia and R. Mattheyses. A linear-time heuristic for improving network partitions. In DAC 1982.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. R. Garey and D. S. Johnson. Computers and intractability. 1979.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. R. Garey, D. S. Johnson, and L. Stockmeyer. Some simplified np-complete problems. In STOC '74.Google ScholarGoogle Scholar
  12. B. Hendrickson and R. Leland. A multilevel algorithm for partitioning graphs. In Supercomputing, 1995.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. Huang, D. J. Abadi, and K. Ren. Scalable sparql querying of large rdf graphs. In PVLDB '11.Google ScholarGoogle Scholar
  14. U. Kang, H. Tong, J. Sun, C.-Y. Lin, and C. Faloutsos. Gbase: a scalable and general graph management system. In KDD'11.Google ScholarGoogle Scholar
  15. U. Kang, C. E. Tsourakakis, and C. Faloutsos. Pegasus: A peta-scale graph mining system. In ICDM'09.Google ScholarGoogle Scholar
  16. D. Karger, E. Lehman, T. Leighton, R. Panigrahy, M. Levine, and D. Lewin. Consistent hashing and random trees: Distributed caching protocols for relieving hot spots on the world wide web. In Proc. of STOC, 1997.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. G. Karypis and V. Kumar. A fast and high quality multilevel scheme for partitioning irregular graphs. SIAM J. Sci. Comput., 1998.Google ScholarGoogle Scholar
  18. G. Karypis and V. Kumar. A parallel algorithm for multilevel graph partitioning and sparse matrix ordering. J. Parallel Distrib. Comput., 1998.Google ScholarGoogle Scholar
  19. B. W. Kernighan and S. Lin. An Efficient Heuristic Procedure for Partitioning Graphs. The Bell system technical journal, 1970.Google ScholarGoogle Scholar
  20. J. Leskovec, J. Kleinberg, and C. Faloutsos. Graphs over time: Densification laws, shrinking diameters and possible explanations. In KDD '05.Google ScholarGoogle Scholar
  21. Y. Low, J. Gonzalez, A. Kyrola, D. Bickson, C. Guestrin, and J. M. Hellerstein. Graphlab: A new parallel framework for machine learning. In UAI, 2010.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. G. Malewicz, M. H. Austern, A. J. C. Bik, J. C. Dehnert, I. Horn, N. Leiser, and G. Czajkowski. Pregel: a system for large-scale graph processing. In SIGMOD'10.Google ScholarGoogle Scholar
  23. J. Mondal and A. Deshpande. Managing large dynamic graphs efficiently. In SIGMOD '12.Google ScholarGoogle Scholar
  24. M. E. Newman. Modularity and community structure in networks. PNAS, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  25. J. Nishimura and J. Ugander. Restreaming graph partitioning: Simple versatile algorithms for advanced balancing. In KDD '13.Google ScholarGoogle Scholar
  26. F. Pellegrini and J. Roman. Scotch: A software package for static mapping by dual recursive bipartitioning of process and architecture graphs. In HPCN Europe '96.Google ScholarGoogle Scholar
  27. J. M. Pujol, V. Erramilli, G. Siganos, X. Yang, N. Laoutaris, P. Chhabra, and P. Rodriguez. The little engine(s) that could: scaling online social networks. In SIGCOMM '10.Google ScholarGoogle Scholar
  28. A. Quamar, K. A. Kumar, and A. Deshpande. Sword: Scalable workload-aware data placement for transactional workloads. In Proc. of EDBT, 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. U. N. Raghavan, R. Albert, and S. Kumara. Near linear time algorithm to detect community structures in large-scale networks. Physical Review E, 2007.Google ScholarGoogle Scholar
  30. M. Sarwat, S. Elnikety, Y. He, and G. Kliot. Horton: Online query execution engine for large distributed graphs. In ICDE '12.Google ScholarGoogle Scholar
  31. K. Schloegel, G. Karypis, and V. Kumar. Multilevel diffusion schemes for repartitioning of adaptive meshes. J. Parallel Distrib. Comput., 1997.Google ScholarGoogle Scholar
  32. K. Schloegel, G. Karypis, and V. Kumar. Parallel static and dynamic multi-constraint graph partitioning. Concurrency and Computation: Practice and Experience, 2002.Google ScholarGoogle ScholarCross RefCross Ref
  33. K. Schloegel, G. Karypis, and V. Kumar. Sourcebook of parallel computing. chapter Graph Partitioning for High-performance Scientific Simulations. 2003.Google ScholarGoogle Scholar
  34. B. Shao, H. Wang, and Y. Li. Trinity: A distributed graph engine on a memory cloud. In SIGMOD '13.Google ScholarGoogle Scholar
  35. I. Stanton and G. Kliot. Streaming graph partitioning for large distributed graphs. In KDD '12.Google ScholarGoogle Scholar
  36. M. Stonebraker, D. J. Abadi, A. Batkin, X. Chen, M. Cherniack, M. Ferreira, E. Lau, A. Lin, S. Madden, E. O'Neil, P. O'Neil, A. Rasin, N. Tran, and S. Zdonik. C-store: A column-oriented dbms. In Proc. of VLDB, 2005.Google ScholarGoogle Scholar
  37. C. Tsourakakis, C. Gkantsidis, B. Radunovic, and M. Vojnovic. Fennel: Streaming graph partitioning for massive scale graphs. In WSDM '14.Google ScholarGoogle Scholar
  38. J. Ugander and L. Backstrom. Balanced label propagation for partitioning massive graphs. In Proc. of WSDM, 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. L. Vaquero, F. Cuadrado, D. Logothetis, and C. Martella. Adaptive partitioning for large-scale dynamic graphs. In ICDCS '14.Google ScholarGoogle Scholar
  40. C. Walshaw, M. G. Everett, and M. Cross. Parallel dynamic graph partitioning for adaptive unstructured meshes. J. Parallel Distrib. Comput., 1997.Google ScholarGoogle Scholar
  41. L. Wang, Y. Xiao, B. Shao, and H. Wang. How to partition a billion-node graph. In ICDE '14.Google ScholarGoogle Scholar
  42. N. Xu, L. Chen, and B. Cui. Loggp: A log-based dynamic graph partitioning method. PVLDB, 2014.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Leopard: lightweight edge-oriented partitioning and replication for dynamic graphs
    Index terms have been assigned to the content through auto-classification.

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image Proceedings of the VLDB Endowment
      Proceedings of the VLDB Endowment  Volume 9, Issue 7
      March 2016
      96 pages
      ISSN:2150-8097
      Issue’s Table of Contents

      Publisher

      VLDB Endowment

      Publication History

      • Published: 1 March 2016
      Published in pvldb Volume 9, Issue 7

      Qualifiers

      • research-article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader