Introducing PathQuery, Google's Graph Query Language
Jesse Weaver, Eric Paniagua, Tushar Agarwal, Nicholas Guy and, Alexandre Mattos

TL;DR
PathQuery is a scalable, declarative graph query language designed for Google's large-scale data needs, enabling natural graph traversal expressions with efficient optimization foundations.
Contribution
The paper introduces PathQuery, a new graph query language with a declarative, traversal-oriented syntax and a relational algebra foundation, optimized for large-scale use at Google.
Findings
PathQuery scales effectively with Google's data volumes.
It supports complex graph patterns with a natural syntax.
It has proven robust under large-scale, low-latency conditions.
Abstract
We introduce PathQuery, a graph query language developed to scale with Google's query and data volumes as well as its internal developer community. PathQuery supports flexible and declarative semantics. We have found that this enables query developers to think in a naturally "graphy" design space and to avoid the additional cognitive effort of coordinating numerous joins and subqueries often required to express an equivalent query in a relational space. Despite its traversal-oriented syntactic style, PathQuery has a foundation on a custom variant of relational algebra -- the exposition of which we presently defer -- allowing for the application of both common and novel optimizations. We believe that PathQuery has withstood a "test of time" at Google, under both large scale and low latency requirements. We thus share herein a language design that admits a rigorous declarative semantics,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Database Systems and Queries · Graph Theory and Algorithms · Semantic Web and Ontologies
