Table of Contents
Fetching ...

CEMR: An Effective Subgraph Matching Algorithm with Redundant Extension Elimination

Linglin Yang, Xunbin Su, Lei Zou, Xiangyang Gou, Yinnian Lin

TL;DR

A novel subgraph matching algorithm that incorporates two techniques to reduce duplicate extensions: common extension merging, which leverages a black-white vertex encoding, and common extension reusing, which employs common extension buffers.

Abstract

Subgraph matching is a fundamental problem in graph analysis with a wide range of applications. However, due to its inherent NP-hardness, enumerating subgraph matches efficiently on large real-world graphs remains highly challenging. Most existing works adopt a depth-first search (DFS) backtracking strategy, where a partial embedding is gradually extended in a DFS manner along a branch of the search trees until either a full embedding is found or no further extension is possible. A major limitation of this paradigm is the significant amount of duplicate computation that occurs during enumeration, which increases the overall runtime. To overcome this limitation, we propose a novel subgraph matching algorithm, CEMR. It incorporates two techniques to reduce duplicate extensions: common extension merging, which leverages a black-white vertex encoding, and common extension reusing, which employs common extension buffers. In addition, we design two pruning techniques to discard unpromising search branches. Extensive experiments on real-world datasets and diverse query workloads demonstrate that CEMR outperforms state-of-the-art subgraph matching methods.

CEMR: An Effective Subgraph Matching Algorithm with Redundant Extension Elimination

TL;DR

A novel subgraph matching algorithm that incorporates two techniques to reduce duplicate extensions: common extension merging, which leverages a black-white vertex encoding, and common extension reusing, which employs common extension buffers.

Abstract

Subgraph matching is a fundamental problem in graph analysis with a wide range of applications. However, due to its inherent NP-hardness, enumerating subgraph matches efficiently on large real-world graphs remains highly challenging. Most existing works adopt a depth-first search (DFS) backtracking strategy, where a partial embedding is gradually extended in a DFS manner along a branch of the search trees until either a full embedding is found or no further extension is possible. A major limitation of this paradigm is the significant amount of duplicate computation that occurs during enumeration, which increases the overall runtime. To overcome this limitation, we propose a novel subgraph matching algorithm, CEMR. It incorporates two techniques to reduce duplicate extensions: common extension merging, which leverages a black-white vertex encoding, and common extension reusing, which employs common extension buffers. In addition, we design two pruning techniques to discard unpromising search branches. Extensive experiments on real-world datasets and diverse query workloads demonstrate that CEMR outperforms state-of-the-art subgraph matching methods.
Paper Structure (45 sections, 3 theorems, 4 equations, 11 figures, 4 tables, 3 algorithms)

This paper contains 45 sections, 3 theorems, 4 equations, 11 figures, 4 tables, 3 algorithms.

Key Result

Lemma 1

Given a query graph $Q$ and a matching order $O = (u_0, u_1, \dots, u_{n-1})$, let $M_1$ and $M_2$ be matches of the subquery $Q_i$ induced by the first $i$ vertices. Assume that $M_1$ and $M_2$ share the same mappings for all backward neighbors of $u_i$ (i.e., $N_-^O(u_i)$), and let $v$ be a data v

Figures (11)

  • Figure 1: Subgraph Matching
  • Figure 2: Illustrations of Case 1 and Case 2.
  • Figure 3: Illustrations of Case 3.
  • Figure 4: Illustration of Case 4.
  • Figure 5: The reference set and parent vertex of $u_4$
  • ...and 6 more figures

Theorems & Definitions (19)

  • Example 1
  • definition 1: Subgraph Isomorphism
  • definition 2: Subgraph Matching Problem
  • definition 3: Matching Order
  • definition 4: Backward (Forward) Neighbors
  • Example 2
  • Lemma 1
  • definition 5: Black-White Vertex Encoding & Aggregated Embedding
  • Example 3
  • Example 4
  • ...and 9 more