On Joining Graphs
Giacomo Bergami, Matteo Magnani, Danilo Montesi

TL;DR
This paper introduces a new binary graph join operator and an efficient algorithm for it, significantly outperforming existing graph database query languages like Cypher and SPARQL.
Contribution
It defines a novel graph join operator and proposes an efficient algorithm that improves performance over existing systems.
Findings
Algorithm outperforms Cypher and SPARQL by at least one order of magnitude.
Implementation reduces execution time and indexing/loading time.
Provides a new approach for graph joins in graph databases.
Abstract
In the graph database literature the term "join" does not refer to an operator used to merge two graphs. In particular, a counterpart of the relational join is not present in existing graph query languages, and consequently no efficient algorithms have been developed for this operator. This paper provides two main contributions. First, we define a binary graph join operator that acts on the vertices as a standard relational join and combines the edges according to a user-defined semantics. Then we propose the "CoGrouped Graph Conjunctive -Join" algorithm running over data indexed in secondary memory. Our implementation outperforms the execution of the same operation in Cypher and SPARQL on major existing graph database management systems by at least one order of magnitude, also including indexing and loading time.
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsGraph Theory and Algorithms · Advanced Database Systems and Queries · Distributed systems and fault tolerance
