Graph is a significant data structure that describes the relationship between entries.Many application domains in the real world are heavily dependent on graph data.However,graph applications are vastly different from...Graph is a significant data structure that describes the relationship between entries.Many application domains in the real world are heavily dependent on graph data.However,graph applications are vastly different from traditional applications.It is inefficient to use general-purpose platforms for graph applications,thus contributing to the research of specific graph processing platforms.In this survey,we systematically categorize the graph workloads and applications,and provide a detailed review of existing graph processing platforms by dividing them into generalpurpose and specialized systems.We thoroughly analyze the implementation technologies including programming models,partitioning strategies,communication models,execution models,and fault tolerance strategies.Finally,we analyze recent advances and present four open problems for future research.展开更多
基金Project supported by the National Key Program of China(No.2018YFB2101100)the National Natural Science Foundation of China(Nos.61932001 and 61872376)the Major State Research Development Program of China(No.2016YFB0201305).
文摘Graph is a significant data structure that describes the relationship between entries.Many application domains in the real world are heavily dependent on graph data.However,graph applications are vastly different from traditional applications.It is inefficient to use general-purpose platforms for graph applications,thus contributing to the research of specific graph processing platforms.In this survey,we systematically categorize the graph workloads and applications,and provide a detailed review of existing graph processing platforms by dividing them into generalpurpose and specialized systems.We thoroughly analyze the implementation technologies including programming models,partitioning strategies,communication models,execution models,and fault tolerance strategies.Finally,we analyze recent advances and present four open problems for future research.