Abstract
Graph data management has revealed beneficial characteristics in terms of flexibility and scalability by differently balancing between query expressivity and schema flexibility. This has resulted into an rapid developing new task specific graph systems, query languages and data models, such as property graphs, key-value, wide column, resource description framework (RDF), etc. Present day graph query languages are focused towards flexible graph pattern matching (aka sub-graph matching), where as graph computing frameworks aim towards providing fast parallel (distributed) execution of instructions. The consequence of this rapid growth in the variety of graph based data management systems has resulted in a lack of standardization. Gremlin, a graph traversal language and machine, provides a common platform for supporting any graph computing system (such as an OLTP graph database or OLAP graph processors). We present a formalization of graph pattern matching for Gremlin queries. We also study, discuss and consolidate various existing graph algebra operators into an integrated graph algebra.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
set of strings (\(\varSigma ^{*}\)).
- 2.
- 3.
- 4.
- 5.
- 6.
The act of visiting of vertices (\(v \in V\)) and edges (\(e \in E\)) in a graph in an alternating manner (in some algorithmic fashion) [11].
- 7.
Here, (\(\gamma ^{-}, \gamma ^{+}\)) denote the first and last elements of a path respectively.
- 8.
The Kleene star notation (\(A^{*}, B^{*}\)) denotes presence of multiple traversers in (A,B).
- 9.
- 10.
Rodriguez and Neubauer [11] refer to step modulators as ‘syntactic sugar’.
- 11.
References
Angles, R., Arenas, M., et al.: Foundations of modern graph query languages. arXiv preprint arXiv:1610.06264 (2016)
Angles, R., Gutierrez, C.: The multiset semantics of SPARQL patterns. In: Groth, P., Simperl, E., Gray, A., Sabou, M., Krötzsch, M., Lecue, F., Flöck, F., Gil, Y. (eds.) ISWC 2016. LNCS, vol. 9981, pp. 20–36. Springer, Cham (2016). doi:10.1007/978-3-319-46523-4_2
Cyganiak, R.: A relational algebra for SPARQL. Digital Media Systems Laboratory HP Laboratories Bristol. HPL-2005-170, vol. 35 (2005)
Hölsch, J., Grossniklaus, M.: An algebra and equivalences to transform graph patterns in neo4j. In: EDBT/ICDT 2016 Workshops: EDBT Workshop on Querying Graph Structured Data (GraphQ) (2016)
Krause, C., Johannsen, D., Deeb, R., Sattler, K.-U., Knacker, D., Niadzelka, A.: An SQL-based query language and engine for graph pattern matching. In: Echahed, R., Minas, M. (eds.) ICGT 2016. LNCS, vol. 9761, pp. 153–169. Springer, Cham (2016). doi:10.1007/978-3-319-40530-8_10
Li, C., Chang, K.C.-C., et al.: RankSQL: query algebra and optimization for relational top-k queries. In: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data. ACM (2005)
Marton, G.S.J.: Formalizing opencypher graph queries in relational algebra. Published online on FTSRG archive (2017)
Pérez, J., Arenas, M., Gutierrez, C.: Semantics and complexity of SPARQL. In: Cruz, I., Decker, S., Allemang, D., Preist, C., Schwabe, D., Mika, P., Uschold, M., Aroyo, L.M. (eds.) ISWC 2006. LNCS, vol. 4273, pp. 30–43. Springer, Heidelberg (2006). doi:10.1007/11926078_3
Prud, E., et al.: SPARQL query language for RDF. Citeulike Online Archive (2006)
Rodriguez, M.A.: The gremlin graph traversal machine and language (invited talk). In: Proceedings of the 15th Symposium on Database Programming Languages, Pittsburgh, PA, USA (2015)
Rodriguez, M.A., Neubauer, P.: The graph traversal pattern. In: Graph Data Management Techniques and Applications. IGI Global (2011)
Rodriguez, M.A., Neubauer, P.: A path algebra for multi-relational graphs. In: Workshops Proceedings of the 27th International Conference on Data Engineering, ICDE 2011 (2011)
Thakkar, H.: Towards an open extensible framework for empirical benchmarking of data management solutions: LITMUS. In: Blomqvist, E., Maynard, D., Gangemi, A., Hoekstra, R., Hitzler, P., Hartig, O. (eds.) ESWC 2017. LNCS, vol. 10250, pp. 256–266. Springer, Cham (2017). doi:10.1007/978-3-319-58451-5_20
van Rest, O., Hong, S., et al.: PGQL: a property graph query language. In: Proceedings of the Fourth International Workshop on Graph Data Management Experiences and Systems. ACM (2016)
Acknowledgments
This work is supported by the EU H2020 WDAqua ITN (GA: 642795).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Thakkar, H., Punjani, D., Auer, S., Vidal, ME. (2017). Towards an Integrated Graph Algebra for Graph Pattern Matching with Gremlin. In: Benslimane, D., Damiani, E., Grosky, W., Hameurlain, A., Sheth, A., Wagner, R. (eds) Database and Expert Systems Applications. DEXA 2017. Lecture Notes in Computer Science(), vol 10438. Springer, Cham. https://doi.org/10.1007/978-3-319-64468-4_6
Download citation
DOI: https://doi.org/10.1007/978-3-319-64468-4_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-64467-7
Online ISBN: 978-3-319-64468-4
eBook Packages: Computer ScienceComputer Science (R0)