Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3183713.3190654acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
research-article

G-CORE: A Core for Future Graph Query Languages

Published: 27 May 2018 Publication History

Abstract

We report on a community effort between industry and academia to shape the future of graph query languages. We argue that existing graph database management systems should consider supporting a query language with two key characteristics. First, it should be composable, meaning, that graphs are the input and the output of queries. Second, the graph query language should treat paths as first-class citizens. Our result is G-CORE, a powerful graph query language design that fulfills these goals, and strikes a careful balance between path query expressivity and evaluation complexity.

References

[1]
2017. Cypher for Apache Spark. (2017). https://github.com/opencypher/ cypher-for-apache-spark
[2]
2017. The openCypher Project. (2017). http://www.openCypher.org
[3]
Serge Abiteboul, Richard Hull, and Victor Vianu. 1995. Foundations of Databases. Addison-Wesley.
[4]
AgensGraph - The Performance-Driven Graph Database. 2017. (2017). http: //www.agensgraph.com/
[5]
Amazon Neptune - Fast, reliable graph database build for cloud. 2017. (2017). https://aws.amazon.com/neptune/
[6]
Renzo Angles. 2012. A comparison of current graph database models. In 4rd Int. Workshop on Graph Data Management: Techniques and Applications.
[7]
Renzo Angles, Marcelo Arenas, Pablo Barceló, Peter A. Boncz, George H. L. Fletcher, Claudio Gutierrez, Tobias Lindaaker, Marcus Paradies, Stefan Plantikow, Juan F. Sequeda, Oskar van Rest, and Hannes Voigt. 2017. G-CORE: A Core for Future Graph Query Languages. CoRR abs/1712.01550 (2017). http://arxiv.org/ abs/1712.01550
[8]
Renzo Angles, Marcelo Arenas, Pablo Barceló, Aidan Hogan, Juan L. Reutter, and Domagoj Vrgoc. 2017. Foundations of Modern Query Languages for Graph Databases. Comput. Surveys 50, 5 (2017).
[9]
Renzo Angles, Peter Boncz, Josep Larriba-Pey, Irini Fundulaki, Thomas Neumann, Orri Erling, Peter Neubauer, Norbert Martinez-Bazan, Venelin Kotsev, and Ioan Toma. 2014. The Linked Data Benchmark Council: A Graph and RDF Industry Benchmarking Effort. SIGMOD Record 43, 1 (May 2014), 27--31.
[10]
Renzo Angles and Claudio Gutierrez. 2008. Survey of graph database models. ACM Computing Surveys (CSUR) 40, 1 (2008), 1--39.
[11]
ArangoDB - Native multimodel database. 2017. (2017). https://arangodb.com/
[12]
Pablo Barceló, Leonid Libkin, Anthony W. Lin, and Peter T. Wood. 2012. Expressive Languages for Path Queries over Graph-Structured Data. TODS 37, 4, Article 31 (Dec. 2012), 46 pages.
[13]
Pablo Barceló Baeza. 2013. Querying graph databases. In Proc. of the 32nd Symposium on Principles of Database Systems (PODS). ACM, 175--188.
[14]
Blazegraph. 2017. (2017). https://www.blazegraph.com/
[15]
Cypher - Graph Query Language. 2017. (2017). http://neo4j.com/developer/ cypher-query-language/
[16]
DataStax Enterprise Graph. 2017. (2017). https://www.datastax.com/products/ datastax-enterprise-graph
[17]
Anton Dries, Siegfried Nijssen, and Luc De Raedt. 2009. A Query Language for Analyzing Networks. In Proc. of the 18th ACM Conference on Information and Knowledge Management (CIKM). ACM, 485--494.
[18]
Orri Erling, Alex Averbuch, Josep Larriba-Pey, Hassan Chafi, Andrey Gubichev, Arnau Prat, Minh-Duc Pham, and Peter Boncz. 2015. The LDBC Social Network Benchmark: Interactive Workload. In SIGMOD2015. ACM, 619--630.
[19]
Nadime Francis, Alastair Green, Paolo Guagliardo, Leonid Libkin, Tobias Lindaaker, Victor Marsault, Stefan Plantikow, Mats Rydberg, Petra Selmer, and Andrés Taylor. 2018. Cypher: An Evolving Query Language for Property Graphs. In ACM SIGMOD International Conference on Management of Data (SIGMOD 2018).
[20]
Gremlin - A graph traversal language. 2017. (2017). https://github.com/tinkerpop/ gremlin
[21]
Steve Harris and Andy Seaborne. 2013. SPARQL 1.1 Query Language - W3C Recommendation. https://www.w3.org/TR/sparql11-query/. (March 21 2013).
[22]
Alexandru Iosup, Tim Hegeman, Wing Lung Ngai, Stijn Heldens, Arnau PratPérez, Thomas Manhardt, Hassan Chafi, Mihai Capotǎ, Narayanan Sundaram, Michael Anderson, Ilie Gabriel Tǎnase, Yinglong Xia, Lifeng Nai, and Peter Boncz. 2016. LDBC Graphalytics: A Benchmark for Large-scale Graph Analysis on Parallel and Distributed Platforms. PVLDB 9, 13 (Sept. 2016), 1317--1328.
[23]
JanusGraph - Distributed graph database. 2017. (2017). http://janusgraph.org/
[24]
Venelin Kotsev, Orri Erling, Atanas Kiryakov, Irini Fundulaki, and Vladimir Alexiev. 2017. The Semantic Publishing Benchmark v2.0. (2017). github.com/ ldbc/ldbc_spb_bm_2.0/blob/master/doc/LDBC_SPB_v2.0.docx
[25]
Alberto O. Mendelzon and Peter T. Wood. 1995. Finding Regular Simple Paths in Graph Databases. SIAM J. Comput. 24, 6 (1995), 1235--1258.
[26]
Microsoft Azure Cosmos DB. 2017. (2017). https://docs.microsoft.com/en-us/ azure/cosmos-db/introduction
[27]
Neo4j. 2017. The Neo4j Developer Manual v3.3. (2017).
[28]
The openCypher implementer's group. 2017. Property Graph Model. (2017). https://github.com/opencypher/openCypher/blob/master/docs/ property-graph-model.adoc
[29]
Oracle. 2017. Oracle Big Data Spatial and Graph. (2017). http://www.oracle.com/ technetwork/database/database-technologies/bigdata-spatialandgraph/
[30]
Oracle. 2017. PGQL 1.1 Specification. (2017). http://pgql-lang.org/spec/1.1/
[31]
OrientDB - Multi-Model Database. 2017. (2017). http://orientdb.com/
[32]
Jorge Pérez, Marcelo Arenas, and Claudio Gutierrez. 2009. Semantics and complexity of SPARQL. ACM Trans. Database Syst. 34, 3 (2009), 16:1--16:45.
[33]
Stefan Plantikow, Martin Junghanns, Petra Selmer, and Max Kießling. 2017. Cypher and Spark: Multiple Graphs and More in openCypher. (2017). https: //www.youtube.com/watch?v=EaCFxDxhtsI
[34]
Eric Prud'hommeaux and Andy Seaborne. 2008. SPARQL Query Language for RDF - W3C Recommendation. https://www.w3.org/TR/rdf-sparql-query/. (2008).
[35]
Juan L. Reutter, Miguel Romero, and Moshe Y. Vardi. 2017. Regular Queries on Graph Databases. Theory Comput. Syst. 61, 1 (2017), 31--83.
[36]
Marko A. Rodriguez and Peter Neubauer. 2010. Constructions from Dots and Lines. Bulletin of the American Society for Information Science and Technology 36, 6 (Aug. 2010), 35--41.
[37]
Nicholas P Roth, Vasileios Trigonakis, Sungpack Hong, Hassan Chafi, Anthony Potter, Boris Motik, and Ian Horrocks. 2017. PGX.D/Async: A Scalable Distributed Graph Pattern Matching Engine. (2017).
[38]
Michael Rudolf, Marcus Paradies, Christof Bornhövd, and Wolfgang Lehner. 2013. The Graph Story of the SAP HANA Database. In BTW, Vol. 13. 403--420.
[39]
Martin Sevenich, Sungpack Hong, Oskar van Rest, Zhe Wu, Jayanta Banerjee, and Hassan Chafi. 2016. Using domain-specific languages for analytic graph databases. Proceedings of the VLDB Endowment 9, 13 (2016), 1257--1268.
[40]
Sparksee - Scalable high-performance graph database. 2017. (2017). http://www. sparsity-technologies.com/#sparksee
[41]
Stardog - The Knowledge Graph Platform for the Enterprise. 2017. (2017). http: //www.stardog.com/
[42]
TigerGraph - The First Native Parallel Graph. 2017. (2017). https://www. tigergraph.com/
[43]
Titan - Distributed Graph Database. 2017. (2017). http://titan.thinkaurelius.com/
[44]
Oskar van Rest, Sungpack Hong, Jinha Kim, Xuming Meng, and Hassan Chafi. 2016. PGQL: a property graph query language. In GRADES2016. ACM, 7.
[45]
Moshe Y. Vardi. 1982. The Complexity of Relational Query Languages (Extended Abstract). In STOC. 137--146.
[46]
Hannes Voigt. 2017. Declarative Multidimensional Graph Queries, Patrick Marcel and Esteban Zimányi (Eds.). Business Intelligence -- 6th European Summer School, eBISS 2016, Tours, France, July 3--8, 2016, Tutorial Lectures 280, 1--37.
[47]
Peter T. Wood. 2012. Query languages for graph databases. SIGMOD Record 41, 1 (2012), 50--60.

Cited By

View all
  • (2024)LM-SRPQ: Efficiently Answering Regular Path Query in Streaming GraphsProceedings of the VLDB Endowment10.14778/3641204.364121417:5(1047-1059)Online publication date: 1-Jan-2024
  • (2024)Implementation Strategies for Views over Property GraphsProceedings of the ACM on Management of Data10.1145/36549492:3(1-26)Online publication date: 30-May-2024
  • (2024)Distinct Shortest Walk Enumeration for RPQsProceedings of the ACM on Management of Data10.1145/36516012:2(1-22)Online publication date: 14-May-2024
  • Show More Cited By

Recommendations

Reviews

Jaroslav Pokorny

With a description of the G-CORE language, designed by the Linked Data Benchmark Council (LDBC) Graph Query Language Task Force, this paper presents a standardization proposal of a graph query language for property graphs. In section 1, the authors focus on three main challenges to existing graph query languages: "composability," "paths as first-class citizens," and "capture the core of available languages." By composability the authors mean that "graphs are the input and the output of queries." Their approach addresses the third challenge by taking "the successful functionalities of current [graph query] languages ... to develop the next generation of graph languages. Section 2 discusses the second challenge and defines an extended path property graph (PPG) model. PPGs allow for multi-valued properties and stored paths. Paths have an identity and can also have labels. Queries on paths are also enabled. The core section (3) "demonstrate[s] and explain[s] the main features of the G-CORE language," for example, returning a graph for every query, matching and filtering, multi-graph queries and joins, dealing with multi-valued properties, constructions that respect identities, graph aggregations, treatment of path, existential subqueries, views and optional matching, weighted shortest paths, and the use of graph patterns. All constructs are explained in examples. In section 4, the authors "provide a formal definition of the syntax and semantics of [G-CORE]." A complexity analysis is also considered here. The authors prove that "evaluating [a query, q ] over an input PPG G can be computed in polynomial time," that is, G-CORE is tractable. In section 5, the authors "show how G-CORE is extended to handle tabular data." This approach is in accordance with today's trends to integrate heterogeneous data and to develop polyglot databases. Section 6 presents related works, that is, the most important industrial graph database products represented by their graph query languages, Gremlin, Cypher, and PGQL. The authors "describe the main differences among G-CORE [and these languages]." Finally, in the conclusion, one more use is emphasized: G-CORE could be used as a base for integrating many graph-oriented data models and approaches to querying graphs. The notions defined in the paper are specified in the usual denotational way, which provides the needed clarity and preciseness. A lot of representative examples increase the paper's readability. Without doubt, the paper offers interesting, valuable, and useful information for those interested in graph query languages.

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGMOD '18: Proceedings of the 2018 International Conference on Management of Data
May 2018
1874 pages
ISBN:9781450347037
DOI:10.1145/3183713
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 27 May 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. graph data models
  2. graph databases
  3. graph query languages

Qualifiers

  • Research-article

Conference

SIGMOD/PODS '18
Sponsor:

Acceptance Rates

SIGMOD '18 Paper Acceptance Rate 90 of 461 submissions, 20%;
Overall Acceptance Rate 785 of 4,003 submissions, 20%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)104
  • Downloads (Last 6 weeks)15
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

Cited By

View all
  • (2024)LM-SRPQ: Efficiently Answering Regular Path Query in Streaming GraphsProceedings of the VLDB Endowment10.14778/3641204.364121417:5(1047-1059)Online publication date: 1-Jan-2024
  • (2024)Implementation Strategies for Views over Property GraphsProceedings of the ACM on Management of Data10.1145/36549492:3(1-26)Online publication date: 30-May-2024
  • (2024)Distinct Shortest Walk Enumeration for RPQsProceedings of the ACM on Management of Data10.1145/36516012:2(1-22)Online publication date: 14-May-2024
  • (2024)MWP: Multi-Window Parallel Evaluation of Regular Path Queries on Streaming GraphsProceedings of the ACM on Management of Data10.1145/36392602:1(1-26)Online publication date: 26-Mar-2024
  • (2024)From Shapes to Shapes: Inferring SHACL Shapes for Results of SPARQL CONSTRUCT QueriesProceedings of the ACM Web Conference 202410.1145/3589334.3645550(2064-2074)Online publication date: 13-May-2024
  • (2024)Multithreading Heterogeneous Graph AggregationIEEE Transactions on Knowledge and Data Engineering10.1109/TKDE.2023.3320127(1-15)Online publication date: 2024
  • (2024)Towards View Management in Graph Databases2024 IEEE 40th International Conference on Data Engineering Workshops (ICDEW)10.1109/ICDEW61823.2024.00053(355-359)Online publication date: 13-May-2024
  • (2024)Path Querying in Graph Databases: A Systematic Mapping StudyIEEE Access10.1109/ACCESS.2024.337197612(33154-33172)Online publication date: 2024
  • (2024)A Logical Approach to Graph DatabasesJournal of Logical and Algebraic Methods in Programming10.1016/j.jlamp.2024.100997(100997)Online publication date: Jun-2024
  • (2024)Reasoning on property graphs with graph generating dependenciesInformation Sciences: an International Journal10.1016/j.ins.2024.120675672:COnline publication date: 1-Jun-2024
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media