Cargando…
An analysis of the graph processing landscape
The value of graph-based big data can be unlocked by exploring the topology and metrics of the networks they represent, and the computational approaches to this exploration take on many forms. For the use-case of performing global computations over a graph, it is first ingested into a graph processi...
Autores principales: | , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Springer International Publishing
2021
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8033100/ https://www.ncbi.nlm.nih.gov/pubmed/33850687 http://dx.doi.org/10.1186/s40537-021-00443-9 |
_version_ | 1783676341243084800 |
---|---|
author | Coimbra, Miguel E. Francisco, Alexandre P. Veiga, Luís |
author_facet | Coimbra, Miguel E. Francisco, Alexandre P. Veiga, Luís |
author_sort | Coimbra, Miguel E. |
collection | PubMed |
description | The value of graph-based big data can be unlocked by exploring the topology and metrics of the networks they represent, and the computational approaches to this exploration take on many forms. For the use-case of performing global computations over a graph, it is first ingested into a graph processing system from one of many digital representations. Extracting information from graphs involves processing all their elements globally, which can be done with single-machine systems (with varying approaches to hardware usage), distributed systems (either homogeneous or heterogeneous groups of machines) and systems dedicated to high-performance computing (HPC). For these systems focused on processing the bulk of graph elements, common use-cases consist in executing for example algorithms for vertex ranking or community detection, which produce insights on graph structure and relevance of their elements. Many distributed systems (such as Flink, Spark) and libraries (e.g. Gelly, GraphX) have been built to enable these tasks and improve performance. This is achieved with techniques ranging from classic load balancing (often geared to reduce communication overhead) to exploring trade-offs between delaying computation and relaxing accuracy. In this survey we firstly familiarize the reader with common graph datasets and applications in the world of today. We provide an overview of different aspects of the graph processing landscape and describe classes of systems based on a set of dimensions we describe. The dimensions we detail encompass paradigms to express graph processing, different types of systems to use, coordination and communication models in distributed graph processing, partitioning techniques and different definitions related to the potential for a graph to be updated. This survey is aimed at both the experienced software engineer or researcher as well as the graduate student looking for an understanding of the landscape of solutions (and their limitations) for graph processing. |
format | Online Article Text |
id | pubmed-8033100 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2021 |
publisher | Springer International Publishing |
record_format | MEDLINE/PubMed |
spelling | pubmed-80331002021-04-09 An analysis of the graph processing landscape Coimbra, Miguel E. Francisco, Alexandre P. Veiga, Luís J Big Data Survey Paper The value of graph-based big data can be unlocked by exploring the topology and metrics of the networks they represent, and the computational approaches to this exploration take on many forms. For the use-case of performing global computations over a graph, it is first ingested into a graph processing system from one of many digital representations. Extracting information from graphs involves processing all their elements globally, which can be done with single-machine systems (with varying approaches to hardware usage), distributed systems (either homogeneous or heterogeneous groups of machines) and systems dedicated to high-performance computing (HPC). For these systems focused on processing the bulk of graph elements, common use-cases consist in executing for example algorithms for vertex ranking or community detection, which produce insights on graph structure and relevance of their elements. Many distributed systems (such as Flink, Spark) and libraries (e.g. Gelly, GraphX) have been built to enable these tasks and improve performance. This is achieved with techniques ranging from classic load balancing (often geared to reduce communication overhead) to exploring trade-offs between delaying computation and relaxing accuracy. In this survey we firstly familiarize the reader with common graph datasets and applications in the world of today. We provide an overview of different aspects of the graph processing landscape and describe classes of systems based on a set of dimensions we describe. The dimensions we detail encompass paradigms to express graph processing, different types of systems to use, coordination and communication models in distributed graph processing, partitioning techniques and different definitions related to the potential for a graph to be updated. This survey is aimed at both the experienced software engineer or researcher as well as the graduate student looking for an understanding of the landscape of solutions (and their limitations) for graph processing. Springer International Publishing 2021-04-09 2021 /pmc/articles/PMC8033100/ /pubmed/33850687 http://dx.doi.org/10.1186/s40537-021-00443-9 Text en © The Author(s) 2021 https://creativecommons.org/licenses/by/4.0/Open AccessThis article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ (https://creativecommons.org/licenses/by/4.0/) . |
spellingShingle | Survey Paper Coimbra, Miguel E. Francisco, Alexandre P. Veiga, Luís An analysis of the graph processing landscape |
title | An analysis of the graph processing landscape |
title_full | An analysis of the graph processing landscape |
title_fullStr | An analysis of the graph processing landscape |
title_full_unstemmed | An analysis of the graph processing landscape |
title_short | An analysis of the graph processing landscape |
title_sort | analysis of the graph processing landscape |
topic | Survey Paper |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8033100/ https://www.ncbi.nlm.nih.gov/pubmed/33850687 http://dx.doi.org/10.1186/s40537-021-00443-9 |
work_keys_str_mv | AT coimbramiguele ananalysisofthegraphprocessinglandscape AT franciscoalexandrep ananalysisofthegraphprocessinglandscape AT veigaluis ananalysisofthegraphprocessinglandscape AT coimbramiguele analysisofthegraphprocessinglandscape AT franciscoalexandrep analysisofthegraphprocessinglandscape AT veigaluis analysisofthegraphprocessinglandscape |