Core Concepts
XMiner reduces a directed pattern graph by identifying and removing constraints that are included in other constraints, thereby avoiding redundant data access and computation during the matching process.
Abstract
The key highlights and insights of the content are:
Directed graph matching is more complex than undirected graph matching because the edge direction must be taken into account, and the technologies for undirected graph matching may not be fully applicable.
XMiner's core idea is 'pattern reduction' - it first analyzes the relationship between constraints implied in a pattern digraph, then reduces the pattern graph into a simplified form by finding a minimum constraint cover.
XMiner generates an efficient execution plan to guide its exploration and materialization for a task. It reuses the matchings of edges, avoiding the need to materialize each edge using the data graph directly.
XMiner outperforms state-of-the-art undirected graph matching systems and can scale to large graphs and complex graph matching tasks.
The pattern graph reduction process identifies constraint inclusion relationships, where the matchings of one constraint are included in the matchings of another constraint. This allows XMiner to temporarily remove some constraints and reuse intermediate results, reducing redundant data access and computation.
XMiner's execution plan specifies the order of materializing vertices/edges and exploring edges. It starts with the vertex having the maximum degree and explores its adjacent edges with the highest coverage first.
During plan execution, XMiner materializes the endpoints of an edge using the matchings of the edge, and initializes other edges included by the current edge using the matchings. This avoids redundant data access and computation.