Pattern Morphing for Efficient Graph Mining

8 Dec 2020  ·  Kasra Jamshidi, Keval Vora ·

Graph mining applications analyze the structural properties of large graphs, and they do so by finding subgraph isomorphisms, which makes them computationally intensive. Existing graph mining techniques including both custom graph mining applications and general-purpose graph mining systems, develop efficient execution plans to speed up the exploration of the given query patterns that represent subgraph structures of interest. In this paper, we step beyond the traditional philosophy of optimizing the execution plans for a given set of patterns, and exploit the sub-structural similarities across different query patterns. We propose Pattern Morphing, a technique that enables structure-aware algebra over patterns to accurately infer the results for a given set of patterns using the results of a completely different set of patterns that are less expensive to compute. Pattern morphing "morphs" (or converts) a given set of query patterns into alternative patterns, while retaining full equivalency. It is a general technique that supports various operations over matches of a pattern beyond just counting (e.g., support calculation, enumeration, etc.), making it widely applicable to various graph mining applications like Motif Counting and Frequent Subgraph Mining. Since pattern morphing mainly transforms query patterns before their exploration starts, it can be easily incorporated in existing general-purpose graph mining systems. We evaluate the effectiveness of pattern morphing by incorporating it in Peregrine, a recent state-of-the-art graph mining system, and show that pattern morphing significantly improves the performance of different graph mining applications.

PDF Abstract
No code implementations yet. Submit your code now

Categories


Distributed, Parallel, and Cluster Computing Databases

Datasets