Table of Contents
Fetching ...

GraphMini: Accelerating Graph Pattern Matching Using Auxiliary Graphs

Juelin Liu, Sandeep Polisetty, Hui Guan, Marco Serafini

TL;DR

This paper explores for the first time how to proactively prune graphs to speed up graph pattern matching by leveraging the structure of the query pattern and the input graph to propose GraphMini, a new system that uses query compilation and a new cost model to minimize the cost of building and maintaining auxiliary graphs and maximize gains.

Abstract

Graph pattern matching is a fundamental problem encountered by many common graph mining tasks and the basic building block of several graph mining systems. This paper explores for the first time how to proactively prune graphs to speed up graph pattern matching by leveraging the structure of the query pattern and the input graph. We propose building auxiliary graphs, which are different pruned versions of the graph, during query execution. This requires careful balancing between the upfront cost of building and managing auxiliary graphs and the gains of faster set operations. To this end, we propose GraphMini, a new system that uses query compilation and a new cost model to minimize the cost of building and maintaining auxiliary graphs and maximize gains. Our evaluation shows that using GraphMini can achieve one order of magnitude speedup compared to state-of-the-art subgraph enumeration systems on commonly used benchmarks.

GraphMini: Accelerating Graph Pattern Matching Using Auxiliary Graphs

TL;DR

This paper explores for the first time how to proactively prune graphs to speed up graph pattern matching by leveraging the structure of the query pattern and the input graph to propose GraphMini, a new system that uses query compilation and a new cost model to minimize the cost of building and maintaining auxiliary graphs and maximize gains.

Abstract

Graph pattern matching is a fundamental problem encountered by many common graph mining tasks and the basic building block of several graph mining systems. This paper explores for the first time how to proactively prune graphs to speed up graph pattern matching by leveraging the structure of the query pattern and the input graph. We propose building auxiliary graphs, which are different pruned versions of the graph, during query execution. This requires careful balancing between the upfront cost of building and managing auxiliary graphs and the gains of faster set operations. To this end, we propose GraphMini, a new system that uses query compilation and a new cost model to minimize the cost of building and maintaining auxiliary graphs and maximize gains. Our evaluation shows that using GraphMini can achieve one order of magnitude speedup compared to state-of-the-art subgraph enumeration systems on commonly used benchmarks.
Paper Structure (26 sections, 1 theorem, 24 equations, 7 figures, 7 tables, 2 algorithms)

This paper contains 26 sections, 1 theorem, 24 equations, 7 figures, 7 tables, 2 algorithms.

Key Result

Lemma 1

Let $C$, $C'$, $P$, and $N$ be four sets, and $\circ$ denote either the set intersection or the set subtraction operator. If $C \subseteq C'$ and $P = C' \cap N$ then:

Figures (7)

  • Figure 1: Query Schedule and Execution Plan a 4-clique Query
  • Figure 2: Workflow of GraphMini
  • Figure 3: GraphMini Pruning Example. Query vertices with dashed outlines have not been pruned in that loop. We focus on the set operations for computing $C(v_4)$ at different loop levels. We assume $u_1$ is matched to $a$ in this example.
  • Figure 4: Query Graph Patterns
  • Figure 5: GraphMini vs State-of-The-Art Systems
  • ...and 2 more figures

Theorems & Definitions (1)

  • Lemma 1: Superset-based pruning rule