G-ThinkerQ: A General Subgraph Querying System With a Unified Task-Based Programming Model

Given a large graph <inline-formula><tex-math notation="LaTeX">$G$</tex-math></inline-formula>, a subgraph query <inline-formula><tex-math notation="LaTeX">$Q$</tex-math></inline-formula> finds the set of all subgraphs of <inline-formula><tex-math notation="LaTeX">$G$</tex-math></inline-formula> that satisfy certain conditions specified by <inline-formula><tex-math notation="LaTeX">$Q$</tex-math></inline-formula>. Examples of subgraph queries including finding a community containing designated members to organize an event, and subgraph matching. To overcome the weakness of existing graph-parallel systems that underutilize CPU cores when finding subgraphs, our prior system, G-thinker, was proposed that adopts a novel think-like-a-task (TLAT) parallel programming model. However, G-thinker targets offline analytics and cannot support interactive online querying where users continually submit subgraph queries with different query contents. The challenges here are (i) how to maintain fairness that queries are answered in the order that they are received: a later query is processed only if earlier queries cannot saturate the available computation resources; (ii) how to track the progress of active queries (each with many tasks under computation) so that users can be timely notified as soon as a query completes; and (iii) how to maintain memory boundedness and high task concurrency as in G-thinker. In this article, we propose a novel TLAT programming framework, called G-thinkerQ, for answering online subgraph queries. G-thinkerQ inherits the memory boundedness and high task concurrency of G-thinker by organizing the tasks of each query using a “task capsule” structure, and designs a novel task-capsule list is to ensure fairness among queries. A novel lineage-based mechanism is also designed to keep track of when the last task of a query is completed. Parallel counterparts of the state-of-the-art algorithms for 4 recent advanced subgraph queries are implemented on G-thinkerQ to demonstrate its CPU-scalability.

Authors

Institutions

Publication Details

Journal
IEEE Transactions on Knowledge and Data Engineering
Published
2025-05-03
DOI
https://doi.org/10.1109/tkde.2025.3537964
Citations
1
Primary Topic
Advanced Database Systems and Queries
Type
article
Field-Weighted Citation Impact
1.49

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

G-ThinkerQ: A General Subgraph Querying System With a Unified Task-Based Programming Model

Lyuheng Yuan, Jalal Khalil, Lei Zou, Cheng Long et al.
1 citations
IEEE Transactions on Knowledge and Data Engineering
Advanced Database Systems and Queries
1.49
article

G-ThinkerQ: A General Subgraph Querying System With a Unified Task-Based Programming Model

Lyuheng Yuan, Jalal Khalil, Lei Zou, Cheng Long, Saugat Adhikari, Da Yan, Guimu Guo
article en
1 citations

Abstract

Given a large graph <inline-formula><tex-math notation="LaTeX">$G$</tex-math></inline-formula>, a subgraph query <inline-formula><tex-math notation="LaTeX">$Q$</tex-math></inline-formula> finds the set of all subgraphs of <inline-formula><tex-math notation="LaTeX">$G$</tex-math></inline-formula> that satisfy certain conditions specified by <inline-formula><tex-math notation="LaTeX">$Q$</tex-math></inline-formula>. Examples of subgraph queries including finding a community containing designated members to organize an event, and subgraph matching. To overcome the weakness of existing graph-parallel systems that underutilize CPU cores when finding subgraphs, our prior system, G-thinker, was proposed that adopts a novel think-like-a-task (TLAT) parallel programming model. However, G-thinker targets offline analytics and cannot support interactive online querying where users continually submit subgraph queries with different query contents. The challenges here are (i) how to maintain fairness that queries are answered in the order that they are received: a later query is processed only if earlier queries cannot saturate the available computation resources; (ii) how to track the progress of active queries (each with many tasks under computation) so that users can be timely notified as soon as a query completes; and (iii) how to maintain memory boundedness and high task concurrency as in G-thinker. In this article, we propose a novel TLAT programming framework, called G-thinkerQ, for answering online subgraph queries. G-thinkerQ inherits the memory boundedness and high task concurrency of G-thinker by organizing the tasks of each query using a “task capsule” structure, and designs a novel task-capsule list is to ensure fairness among queries. A novel lineage-based mechanism is also designed to keep track of when the last task of a query is completed. Parallel counterparts of the state-of-the-art algorithms for 4 recent advanced subgraph queries are implemented on G-thinkerQ to demonstrate its CPU-scalability.

IEEE Transactions on Knowledge and Data EngineeringVol. 37(6)
Nanyang Technological University (SG), St. Cloud State University (US), Peking University (CN), Indiana University Bloomington (US), Rowan University (US)
Ministry of Education, Libya
Openalex Percentile: Top 18%
Advanced Database Systems and Queries
1.49
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.