A Structure-Aware Storage Optimization for Out-of-Core Concurrent Graph Processing

被引:3
|
作者
Liao, Xiaofei [1 ]
Zhao, Jin [1 ]
Zhang, Yu [1 ]
He, Bingsheng [2 ]
He, Ligang [3 ]
Jin, Hai [1 ]
Gu, Lin [1 ]
机构
[1] Huazhong Univ Sci & Technol, Natl Engn Res Ctr Big Data Technol & Syst, Serv Comp Technol & Syst Lab, Sch Comp Sci & Technol,Cluster & Grid Comp Lab, Wuhan 430074, Peoples R China
[2] Natl Univ Singapore, Dept Comp Sci, Singapore 117418, Singapore
[3] Univ Warwick, Dept Comp Sci, Coventry CV4 7AL, W Midlands, England
基金
中国国家自然科学基金;
关键词
Throughput; Loading; Partitioning algorithms; Graphene; Computer science; Social networking (online); Runtime; Iterative graph processing; out-of-core; concurrent jobs; storage system; FRAMEWORK;
D O I
10.1109/TC.2021.3098976
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
With the huge demand for graph analytics in many real-world applications, massive iterative graph processing jobs are concurrently performed on the same graphs and suffer from significant high data access cost. To lower the data access cost toward high performance, several out-of-core concurrent graph processing solutions are recently designed to handle concurrent jobs by enabling these jobs to share the accesses of the same graph data. However, the set of active vertices in each partition are usually different for various concurrent jobs and also evolve with time, where some high-degree ones (or called hub-vertices) of these active vertices require more iterations to converge due to the power-law property of real-world graphs. In consequence, existing solutions still suffer from much unnecessary I/O traffic, because they have to entirely load each partition into the memory for concurrent jobs even if most vertices in this partition are inactive and may be shared by a few jobs. In this paper, we propose an efficient structure-aware storage system, called GraphSO, for higher throughput of the execution of concurrent graph processing jobs. It can be integrated into existing out-of-core graph processing systems to promote the execution efficiency of concurrent jobs with lower I/O overhead. The key design of GraphSO is a fine-grained storage management scheme. Specifically, it logically divides the partitions of existing graph processing systems into a series of small same-sized chunks. At runtime, these small chunks with active vertices are judiciously loaded by GraphSO to construct new logical partitions (i.e., each logical partition is a subset of active chunks) for existing graph processing systems to handle, where the most-frequently-used chunks are preferentially loaded to construct the logical partitions and the other ones are delayed to wait to be required by more jobs. In this way, it can effectively spare the cost of loading the graph data associated with the inactive vertices with low repartitioning overhead and can also enable the loaded graph data to be fully shared by concurrent jobs. Moreover, GraphSO also designs a buffering strategy to efficiently cache the most-frequently-used chunks in the main memory to further minimize the I/O traffic by avoiding repeated load of them. Experimental results show that GraphSO improves the throughput of GridGraph, GraphChi, X-Stream, DynamicShards, LUMOS, Graphene, and Wonderland by 1.4-3.5 times, 2.1-4.3 times, 1.9-4.1 times, 1.9-2.9 times, 1.5-3.1 times, 1.3-1.5 times, and 1.3-2.7 times after integrating with them, respectively.
引用
收藏
页码:1612 / 1625
页数:14
相关论文
共 50 条
  • [1] GraphSD: A State and Dependency aware Out-of-Core Graph Processing System
    Xu, Xianghao
    Jiang, Hong
    Wang, Fang
    Cheng, Yongli
    Fang, Peng
    [J]. 51ST INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, ICPP 2022, 2022,
  • [2] MultiLogVC: Efficient Out-of-Core Graph Processing Framework for Flash Storage
    Matam, Kiran Kumar
    Hashemi, Hanieh
    Annavaram, Murali
    [J]. 2021 IEEE 35TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS), 2021, : 245 - 255
  • [3] FOG: A Fast Out-of-Core Graph Processing Framework
    Zhiyuan Shao
    Jian He
    Huiming Lv
    Hai Jin
    [J]. International Journal of Parallel Programming, 2017, 45 : 1259 - 1272
  • [4] FOG: A Fast Out-of-Core Graph Processing Framework
    Shao, Zhiyuan
    He, Jian
    Lv, Huiming
    Jin, Hai
    [J]. INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2017, 45 (06) : 1259 - 1272
  • [5] BlockGraphChi: Enabling Block Update in Out-of-Core Graph Processing
    Shao, Zhiyuan
    Mei, Zhenjie
    Ding, Xiaofeng
    Jin, Hai
    [J]. INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2019, 47 (04) : 668 - 685
  • [6] BlockGraphChi: Enabling Block Update in Out-of-Core Graph Processing
    Zhiyuan Shao
    Zhenjie Mei
    Xiaofeng Ding
    Hai Jin
    [J]. International Journal of Parallel Programming, 2019, 47 : 668 - 685
  • [7] OMRGx: Programmable and Transparent Out-of-Core Graph Partitioning and Processing
    Kaur, Gurneet
    Gupta, Rajiv
    [J]. PROCEEDINGS OF THE 2023 ACM SIGPLAN INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT, ISMM 2023, 2023, : 137 - 149
  • [8] GGraph: An Efficient Structure-Aware Approach for Iterative Graph Processing
    Si, Beibei
    Liang, Yuxuan
    Zhao, Jin
    Zhang, Yu
    Liao, Xiaofei
    Jin, Hai
    Liu, Haikun
    Gu, Lin
    [J]. IEEE TRANSACTIONS ON BIG DATA, 2022, 8 (05) : 1182 - 1194
  • [9] Competition-Based Adaptive Caching for Out-of-core Graph Processing
    Myung, Kihyeon
    Kim, Hwajung
    Lee, Yunjae
    Yeom, HeonYoung
    [J]. 21ST IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND INTERNET COMPUTING (CCGRID 2021), 2021, : 31 - 40
  • [10] Wonderland: A Novel Abstraction-Based Out-Of-Core Graph Processing System
    Zhang, Mingxing
    Wu, Yongwei
    Zhuo, Youwei
    Qian, Xuehai
    Huan, Chengying
    Chen, Kang
    [J]. ACM SIGPLAN NOTICES, 2018, 53 (02) : 608 - 621