Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Multithreading Heterogeneous Graph Aggregation

Published: 05 October 2023 Publication History

Abstract

Towards building online analytical services on big heterogeneous graphs, we study the problem of the multithreading graph aggregation. The purpose is to exploit the thread-level parallelism for accelerating the graph aggregation process, which is both data and computation intensive. We identify the sources of parallelization latency caused by multifarious factors, including data distributions and contentions, uneven workload assignments, logical aggregation plan obstructions, etc. To cope with these problems, we investigate a parallelization solution for graph aggregation with a number of threads packaged as threadblocks, categorize the parallelization latency as the thread-level and threadblock-level latency, and propose a series of optimization techniques for alleviating or eliminating the latency on different levels. The solution supports different aggregate functions, scales up to large number of threads, and scales out to big heterogeneous graphs. Experiments on real datasets show that our solution achieves up to 60x acceleration with 256 threads compared to the non-parallelized solution.

References

[1]
S. Sakr et al., “The future is big graphs: A community view on graph processing systems,” Commun. ACM, vol. 64, no. 9, pp. 62–71, 2021.
[2]
P. Zhao, X. Li, D. Xin, and J. Han, “Graph cube: On warehousing and OLAP multidimensional networks,” in Proc. ACM SIGMOD Int. Conf. Manage. Data, Athens, Greece, 2011, pp. 853–864.
[3]
Q. Qu, F. Zhu, X. Yan, J. Han, P. S. Yu, and H. Li, “Efficient topological OLAP on information networks,” in Proc. 16th Int. Conf. Database Syst. Adv. Appl., Hong Kong, China, J. X. Yu, M. Kim, and R. Unland, Eds., Springer, 2011, pp. 389–403.
[4]
X. Wu, B. Wu, and B. Wang, “P&D graph cube: Model and parallel materialization for multidimensional heterogeneous network,” in Proc. IEEE Int. Conf. Cyber-Enabled Distrib. Comput. Knowl. Discov., Nanjing, China, 2017, pp. 95–104.
[5]
Z. Wang, Q. Fan, H. Wang, K. Tan, D. Agrawal, and A.E. Abbadi, “Pagrol: Parallel graph olap over large-scale heterogeneous graphs,” in Proc. IEEE 30th Int. Data Eng., Chicago, IL, USA, I. F.E. CruzY. FerrariE. TaoBertino, and G. Trajcevski, Eds., 2014, pp. 496–507.
[6]
L. I. Gómez, B. Kuijpers, and A. A. Vaisman, “Performing OLAP over graph data: Query language, implementation, and a case study,” in Proc. Int. Workshop Real-Time Bus. Intell. Analytics, D. Chatziantoniou, M. Castellanos, and P. K. Chrysanthis, Eds., 2017, pp. 6:1–6:8.
[7]
C. Shi, Y. Li, J. Zhang, Y. Sun, and P. S. Yu, “A survey of heterogeneous information network analysis,” IEEE Trans. Knowl. Data Eng., vol. 29, no. 1, pp. 17–37, Jan. 2017.
[8]
Z. Hu, Y. Dong, K. Wang, and Y. Sun, “Heterogeneous graph transformer,” in Proc. Web Conf., Taipei, Taiwan, Y. Huang, I. King, T. Liu, and M. van Steen, Eds., 2020, pp. 2704–2710.
[9]
“Sqream: Fastest time to insight for data at any scale,” 2020. [Online]. Available: https://sqream.com/
[10]
“Snowflake data cloud| enable the most critical workloads,” 2014. [Online]. Available: https://www.snowflake.com/
[11]
B. Shao, Y. Li, H. Wang, and H. Xia, “Trinity graph engine and its applications,” IEEE Data Eng. Bull., vol. 40, no. 3, pp. 18–29, 2017. [Online]. Available: http://sites.computer.org/debull/A17sept/p18.pdf
[12]
A. Lumsdaine, D. P. Gregor, B. Hendrickson, and J. W. Berry, “Challenges in parallel graph processing,” Parallel Process. Lett., vol. 17, no. 1, pp. 5–20, 2007. [Online]. Available: https://doi.org/10.1142/S0129626407002843
[13]
M. D. Linderman, J. D. Collins, H. Wang, and T. H. Meng, “Merge: A programming model for heterogeneous multi-core systems,” in Proc. 13th Int. Conf. Architectural Support Program. Lang. Operating Syst., Seattle, WA, USA, S. J. Eggers and J. R. Larus, Eds., 2008, pp. 287–296.
[14]
A. Haidar et al., “Unified development for mixed multi-GPU and multi-coprocessor environments using a lightweight runtime environment,” in Proc. IEEE 28th Int. Parallel Distrib. Process. Symp., Phoenix, AZ, USA, 2014, pp. 491–500.
[15]
NVIDIA, “GPU-accelerated apache spark,” 2020. [Online]. Available: https://www.nvidia.com/en-us/deep-learning-ai/solutions/data-science/apache-spark-3/
[16]
R. Angles, M. Arenas, P. Barceló, A. Hogan, J. L. Reutter, and D. Vrgoc, “Foundations of modern query languages for graph databases,” ACM Comput. Surveys, vol. 50, no. 5, pp. 68:1–68:40, 2017. [Online]. Available: https://doi.org/10.1145/3104031
[17]
P. Wang, B. Wu, and B. Wang, “TSMH graph cube: A novel framework for large scale multi-dimensional network analysis,” in Proc. IEEE Int. Conf. Data Sci. Adv. Analytics, Paris, France, 2015, pp. 1–10.
[18]
H. Voigt, “Declarative multidimensional graph queries,” in Proc. 6th Eur. Summer Sch. Bus. Intell., P. Marcel and E. Zimányi, Eds., Springer, 2016, pp. 1–37. [Online]. Available: https://doi.org/10.1007/978%E2%80%933-319-61164-8_1
[19]
“QThreadPool Class| Qt core 5. 13.1,” 2019. [Online]. Available: https://doc.qt.io/qt-5/qthreadpool.html
[20]
“Github - vit-vit/ctpl: Modern and efficient C thread pool library,” 2019. [Online]. Available: https://github.com/vit-vit/ctpl
[21]
M. Faloutsos, P. Faloutsos, and C. Faloutsos, “On power-law relationships of the internet topology,” in Proc. ACM SIGCOMM Conf. Appl., Technol., Architectures, Protoc. Comput. Commun., Cambridge, Massachusetts, USA, L. Chapin, J. P. G. Sterbenz, G. M. Parulkar, and J. S. Turner, Eds., 1999, pp. 251–262. [Online]. Available: https://doi.org/10.1145/316188.316229
[22]
J. E. Gonzalez, Y. Low, H. Gu, D. Bickson, and C. Guestrin, “Powergraph: Distributed graph-parallel computation on natural graphs,” in Proc. USENIX Conf. Operating Syst. Des. Implementation, 2012, pp. 17–30.
[23]
W. H. Brock, Justus Von Liebig: The Chemical Gatekeeper, Cambridge, U.K.: Cambridge Univ. Press, 2002.
[24]
T. Yang, J. Gong, H. Zhang, L. Zou, L. Shi, and X. Li, “Heavyguardian: Separate and guard hot items in data streams,” in Proc. 24th ACM SIGKDD Int. Conf. Knowl. Discov. Data Mining, London, U.K., Y. Guo and F. Farooq, Eds., 2018, pp. 2584–2593.
[25]
F. Petroni, L. Querzoni, K.S. DaudjeeKamali, and G. Iacoboni, “HDRF: Stream-based partitioning for power-law graphs,” in Proc. 24th ACM Int. Conf. Inf. Knowl. Manage., Melbourne, VIC, Australia, J.A. Bailey, C. C. Moffat, M. de Aggarwal, R. Rijke, V. Kumar, T. K. Murdock Sellis, and J. X. Yu, Eds., 2015, pp. 243–252.
[26]
K. Lab, “Metis - serial graph partitioning and fill-reducing matrix ordering,” 2013, 2020. [Online]. Available: http://glaros.dtc.umn.edu/gkhome/metis/metis/overview
[27]
D. dataset, “UK -2007–02 dataset,” 2007. [Online]. Available: https://law.di.unimi.it/webdata/uk-2007–02/
[28]
“Tagged,” 2015. [Online]. Available: https://linqs.org/datasets/
[29]
“DBLP,” 2012. [Online]. Available: http://snap.stanford.edu/data/com-DBLP.html
[30]
“Texas,” 2009. [Online]. Available: http://snap.stanford.edu/data/roadNet-TX.html
[31]
“Neo4j graph data platform| graph database management system,” 2023. [Online]. Available: https://neo4j.com/
[32]
C. Chen, X. Yan, F. Zhu, J. Han, and P. S. Yu, “Graph OLAP: Towards online analytical processing on graphs,” in Proc. IEEE 8th Int. Conf. Data Mining, Pisa, Italy, 2008, pp. 103–112. [Online]. Available: https://doi.org/10.1109/ICDM.2008.30
[33]
C. Chen, X. Yan, F. Zhu, J. Han, and P. S. Yu, “Graph OLAP: A multi-dimensional framework for graph data analysis,” Knowl. Inf. Syst., vol. 21, no. 1, pp. 41–63, 2009.
[34]
M. Yin, B. Wu, and Z. Zeng, “HMGraph OLAP: A novel framework for multi-dimensional heterogeneous network analysis,” in Proc. ACM 15th Int. Workshop Data Warehousing OLAP, Maui, HI, USA, I. Song and M. Golfarelli, Eds., 2012, pp. 137–144.
[35]
R. Angles et al., “G-CORE: A core for future graph query languages,” in Proc. Int. Conf. Manage. Data, Houston, TX, USA, G. C. M. DasJermaine, and P. A.Bernstein, Eds., 2018, pp. 1421–1432. [Online]. Available: https://doi.org/10.1145/3183713.3190654
[36]
M. Berlingerio, M. Coscia, F. Giannotti, A. Monreale, and D. Pedreschi, “Multidimensional networks: Foundations of structural analysis,” World Wide Web, vol. 16, no. 5/6, pp. 567–593, 2013.
[37]
A. Ghrab, O. Romero, S. Skhiri, A. A. Vaisman, and E. Zimányi, “A framework for building OLAP cubes on graphs,” in Proc. 19th East Eur. Conf. Adv. Databases Inf. Syst., Poitiers, France, T. Morzy, P. Valduriez, and L. Bellatreche, Eds., Springer, 2015, pp. 92–105.
[38]
S. Loudcher, W. Jakawat, E. Soriano-Morales, and C. Favre, “Combining OLAP and information networks for bibliographic data analysis: A survey,” Scientometrics, vol. 103, no. 2, pp. 471–487, 2015.
[39]
W. M. P. vander Aalst, “Process cubes: Slicing, dicing, rolling up and drilling down event data for process mining,” in Proc. 1st Asia Pacific Conf. Asia Pacific Bus. Process Manage., Beijing, China, M. Song, M.T. Wynn, and J. Liu, Eds., Springer, 2013, pp. 1–22.
[40]
S. Beheshti, B. Benatallah, and H. R. Motahari-Nezhad, “Scalable graph-based OLAP analytics over process execution data,” Distrib. Parallel Databases, vol. 34, no. 3, pp. 379–423, 2016.
[41]
B. ChenS. WuC. DengC. HuangY. LiLi, and J. Cheng, “High performance distributed OLAP on property graphs with grasper,” in Proc. Int. Conf. Manage. Data, SIGMOD Conf., Online Conf., Portland, OR, USA, D.R. MaierA. PottingerW. DoanA. TanAlawini, and H. Q.Ngo, Eds., 2020, pp. 2705–2708. [Online]. Available: https://doi.org/10.1145/3318464.3384685
[42]
M. A. Jibril, H. Al-Sayeh, A. Baumstark, and K. Sattler, “Fast and efficient update handling for graph H2TAP,” in Proc. 26th Int. Conf. Extending Database Technol., Ioannina, Greece, J. Stoyanovich, J. Teubner, N. Mamoulis, E. Pitoura, J. Mühlig, K. Hose, S. S. Bhowmick, and M. Lissandrini, Eds., 2023, pp. 723–736. [Online]. Available: https://doi.org/10.48786/edbt.2023.60
[43]
S. Goil and A. N. Choudhary, “High performance OLAP and data mining on parallel computers,” Data Min. Knowl. Discov., vol. 1, no. 4, pp. 391–417, 1997.
[44]
D. G. Tomé, T. Gubner, M. Raasveldt, E. Rozenberg, and P. A. Boncz, “Optimizing group-by and aggregation using GPU-CPU co-processing,” in Proc. Int. Workshop Accelerating Analytics Data Manage. Syst. Using Modern Processor Storage Architectures, Rio de Janeiro, Brazil, R. Bordawekar and T. Lahiri, Eds., 2018, pp. 1–10.
[45]
E. T. Zacharatou, H. Doraiswamy, A. Ailamaki, C. T. Silva, and J. Freire, “GPU rasterization for real-time spatial aggregation over arbitrary polygons,” in Proc. VLDB Endowment, vol. 11, no. 3, pp. 352–365, 2017.
[46]
B. Gurumurthy, D. Broneske, M. Schäler, T. Pionteck, and G. Saake, “An investigation of atomic synchronization for sort-based group-by aggregation on gpus,” in Proc. IEEE 37th Int. Conf. Data Eng. Workshops, Chania, Greece, 2021, pp. 48–53.
[47]
J. Arnold, B. Glavic, and I. Raicu, “A high-performance distributed relational database system for scalable OLAP processing,” in Proc. IEEE Int. Parallel Distrib. Process. Symp., Rio de Janeiro, Brazil, 2019, pp. 738–748.
[48]
K. Zhang, M. Sadoghi, and H. Jacobsen, “Dl-store: A distributed hybrid OLTP and OLAP data processing engine,” in Proc. IEEE 36th Int. Conf. Distrib. Comput. Syst., Nara, Japan, 2016, pp. 769–770.
[49]
G. Malewicz et al., “Pregel: A system for large-scale graph processing,” in Proc. ACM SIGMOD Int. Conf. Manage. Data, 2010, pp. 135–146.
[50]
A. Ching, S. Edunov, M. Kabiljo, D. Logothetis, and S. Muthukrishnan, “One trillion edges: Graph processing at Facebook-scale,” in Proc. VLDB Endowment, vol. 8, no. 12, pp. 1804–1815, 2015. [Online]. Available: http://www.vldb.org/pvldb/vol8/p1804-ching.pdf
[51]
Y. Low, J. Gonzalez, A. Kyrola, D. Bickson, C. Guestrin, and J. M. Hellerstein, “Distributed graphlab: A framework for machine learning in the cloud,” in Proc. VLDB Endowment, vol. 5, no. 8, pp. 716–727, 2012.
[52]
J. E. Gonzalez, R. S. Xin, A. Dave, D. Crankshaw, M. J. Franklin, and I. Stoica, “Graphx: Graph processing in a distributed dataflow framework,” in Proc. USENIX Conf. Operating Syst. Des. Implementation, J. Flinn and H. Levy, Eds., 2014, pp. 599–613.
[53]
Y. Bu, B. Howe, M. Balazinska, and M. D. Ernst, “The HaLoop approach to large-scale iterative data analysis,” VLDB J., vol. 21, no. 2, pp. 169–190, 2012.
[54]
J. Zhong and B. He, “Medusa: A parallel graph processing system on graphics processors,” SIGMOD Rec., vol. 43, no. 2, pp. 35–40, 2014.
[55]
Y. Wang, A. A. Davidson, Y. Pan, Y. Wu, A. Riffel, and J. D. Owens, “Gunrock: A high-performance graph processing library on the GPU,” in Proc. 21st ACM SIGPLAN Symp. Princ. Pract. Parallel Program., 2016, pp. 11:1–11:12.
[56]
F. Khorasani, K. Vora, R. Gupta, and L. N. Bhuyan, “CuSha: Vertex-centric graph processing on GPUs,” in Proc. 23rd Int. Symp. High-Perform. Parallel Distrib. Comput., 2014, pp. 239–252.
[57]
X. Chen, H. Tan, Y. Chen, B. He, W. Wong, and D. Chen, “ThunderGP: Hls-based graph processing framework on FPGAs,” in Proc. ACM/SIGDA Int. Symp. Field Program. Gate Arrays, Virtual Event, USA, L. Shannon and M. Adler, Eds., 2021, pp. 69–80.
[58]
F. O’Brien, M. Agostini, and T. S. Abdelrahman, “A streaming accelerator for heterogeneous CPU-FPGA processing of graph applications,” in Proc. IEEE Int. Parallel Distrib. Process. Symp. Workshops, Portland, OR, USA, 2021, pp. 26–35.
[59]
S. Zhou, R. Kannan, H. Zeng, and V. K. Prasanna, “An FPGA framework for edge-centric graph processing,” in Proc. 15th ACM Int. Conf. Comput. Front., Ischia, Italy, D. R. Kaeli and M. Pericàs, Eds., 2018, pp. 69–77.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Knowledge and Data Engineering
IEEE Transactions on Knowledge and Data Engineering  Volume 36, Issue 6
June 2024
458 pages

Publisher

IEEE Educational Activities Department

United States

Publication History

Published: 05 October 2023

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 10 Oct 2024

Other Metrics

Citations

View Options

View options

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media