Revisited Containment for Graph Patterns
Abstract
We consider the class of conditional graph patterns (\emph{CGPs}) that allow user to query data graphs with complex patterns that contain negation and predicates. To overcome the prohibitive cost of subgraph isomorphism, we consider matching of \emph{CGPs} under simulation semantics which can be conducted in quadratic time. In emerging applications, one would like to reduce more this matching time, and the static analysis of patterns may allow ensuring part of this reduction. We study the containment problem of \emph{CGPs} that aims to check whether the matches of some pattern $P_1$, over any data graph, are contained in those of another pattern $P_2$ (written $P_1\sqsubseteq P_2$). The optimization process consists to extract matches of $P_1$ only from those of $P_2$ without querying the (possibly large) data graph. We show that the traditional semantics of containment is decidable in quadratic time, but it fails to meet the optimization goal in the presence of negation and predicates. To overcome this limit, we propose a new semantics of containment, called \emph{strong containment}, that is more suitable for \emph{CGPs} and allows to reduce their matching time. We show that \emph{strong containment} can be decided in cubic time by providing such an algorithm. We are planing to use results of this paper to answer \emph{CGPs} using views. This paper is part of an ongoing project that aims to design a caching system for complex graph patterns.
- Publication:
-
arXiv e-prints
- Pub Date:
- July 2022
- DOI:
- arXiv:
- arXiv:2207.13017
- Bibcode:
- 2022arXiv220713017M
- Keywords:
-
- Computer Science - Databases;
- Computer Science - Data Structures and Algorithms