Answering Constraint Path Queries over Graphs
Heyang Li, Anthony Widjaja Lin, Domagoj Vrgoč
TL;DR
This work tackles constraint path queries on property graphs by extending Regular Path Queries with SMT-based data constraints. It introduces parametric regular expressions and parametric automata to express and execute these queries, and develops a macro-state optimization that enables scalable evaluation despite NP-hard combined complexity. The authors implement the approach in MillenniumDB and validate it on large, real-world graphs, showing practical performance with most queries completing in sub-second times. The results demonstrate that constraint-aware path querying can be made scalable and actionable in existing graph-DB engines.
Abstract
Constraints are powerful declarative constructs that allow users to conveniently restrict variable values that potentially range over an infinite domain. In this paper, we propose a constraint path query language over property graphs, which extends Regular Path Queries (RPQs) with SMT constraints on data attributes in the form of equality constraints and Linear Real Arithmetic (LRA) constraints. We provide efficient algorithms for evaluating such path queries over property graphs, which exploits optimization of macro-states (among others, using theory-specific techniques). In particular, we demonstrate how such an algorithm may effectively utilize highly optimized SMT solvers for resolving such constraints over paths. We implement our algorithm in MillenniumDB, an open-source graph engine supporting property graph queries and GQL. Our extensive empirical evaluation in a real-world setting demonstrates the viability of our approach.
