License: Creative Commons Attribution 4.0 International license (CC BY 4.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.OPODIS.2021.20
URN: urn:nbn:de:0030-drops-157952
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2022/15795/
Go to the corresponding LIPIcs Volume Portal


Chatterjee, Bapi ; Peri, Sathya ; Sa, Muktikanta ; Manogna, Komma

Non-Blocking Dynamic Unbounded Graphs with Worst-Case Amortized Bounds

pdf-format:
LIPIcs-OPODIS-2021-20.pdf (2 MB)


Abstract

Today’s graph-based analytics tasks in domains such as blockchains, social networks, biological networks, and several others demand real-time data updates at high speed. The real-time updates are efficiently ingested if the data structure naturally supports dynamic addition and removal of both edges and vertices. These dynamic updates are best facilitated by concurrency in the underlying data structure. Unfortunately, the existing dynamic graph frameworks broadly refurbish the static processing models using approaches such as versioning and incremental computation. Consequently, they carry their original design traits such as high memory footprint and batch processing that do not honor the real-time changes. At the same time, multi-core processors-a natural setting for concurrent data structures-are now commonplace, and the analytics tasks are moving closer to data sources over lightweight devices. Thus, exploring a fresh design approach for real-time graph analytics is significant.
This paper reports a novel concurrent graph data structure that provides breadth-first search, single-source shortest-path, and betweenness centrality with concurrent dynamic updates of both edges and vertices. We evaluate the proposed data structure theoretically - by an amortized analysis - and experimentally via a C++ implementation. The experimental results show that (a) our algorithm outperforms the current state-of-the-art by a throughput speed-up of up to three orders of magnitude in several cases, and (b) it offers up to 80x lighter memory-footprint compared to existing methods. The experiments include several counterparts: Stinger, Ligra and GraphOne. We prove that the presented concurrent algorithms are non-blocking and linearizable.

BibTeX - Entry

@InProceedings{chatterjee_et_al:LIPIcs.OPODIS.2021.20,
  author =	{Chatterjee, Bapi and Peri, Sathya and Sa, Muktikanta and Manogna, Komma},
  title =	{{Non-Blocking Dynamic Unbounded Graphs with Worst-Case Amortized Bounds}},
  booktitle =	{25th International Conference on Principles of Distributed Systems (OPODIS 2021)},
  pages =	{20:1--20:25},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-219-8},
  ISSN =	{1868-8969},
  year =	{2022},
  volume =	{217},
  editor =	{Bramas, Quentin and Gramoli, Vincent and Milani, Alessia},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/opus/volltexte/2022/15795},
  URN =		{urn:nbn:de:0030-drops-157952},
  doi =		{10.4230/LIPIcs.OPODIS.2021.20},
  annote =	{Keywords: concurrent data structure, linearizability, non-blocking, directed graph, breadth-first search, single-source shortest-path, betweenness centrality}
}

Keywords: concurrent data structure, linearizability, non-blocking, directed graph, breadth-first search, single-source shortest-path, betweenness centrality
Collection: 25th International Conference on Principles of Distributed Systems (OPODIS 2021)
Issue Date: 2022
Date of publication: 28.02.2022
Supplementary Material: Software (Source Code): https://github.com/sngraha/PANIGRAHAM


DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI