Mage: Expressive Pattern Matching in Richly-Attributed Graphs
Chau, Duen horng (Polo)
MetadataShow full item record
Given a large graph with millions of nodes and edges, say a social graph where both the nodes and edges can have multiple different kinds of attributes (e.g., job titles, tie strengths), how do we quickly find matches for subgraphs of interest (e.g., a ring of businessmen with strong ties)? We propose MAGE, Multiple Attribute Graph Engine, a subgraph matching framework that pushes the envelope of graph matching capabilities and performance, through several major innovations: (i) with line graph transformation, MAGE works for graphs with both node and edge attributes and return both exact as well as near matches — other techniques often support only node attributes and return only exact matches; (ii) MAGE supports a plethora of queries, including multiple attributes for each node or edge, wild-cards as attribute values (i.e., match any permissible value), and continuous attributes via multiple discretization strategies; (iii) MAGE leverages a novel technique based on memory mapping to compute random walk with restart probabilities, which provides a speedup of more than 2 orders of magnitude on large graphs. We evaluated MAGE’s effectiveness and scalability with real and synthetic graphs with up to 2.3 million edges. Experimental results on the DBLP authorship graph and the Rotten Tomatoes movie graph illustrate the effectiveness and exploratory functionality of our contributions to graph querying. By devising query-centric innovations, our work improves the ease with which a user can explore their graph data.