Fifth openCypher Implementers Meeting (oCIM 5) - 6 March 2019
Date: Wednesday PM, 6 March - Thursday AM, 7 March
This was the fifth face-to-face meeting for people, projects and organizations who are interested in implementing part or whole of the Cypher graph query language, including current implementers.
oCIM is a conference organised by the openCypher project.
Logistics
The fifth oCIM was co-located with the W3C Workshop on Web Standardization for Graph Data (Creating Bridges: RDF, Property Graph and SQL) and was held here in Berlin, Germany on 6 March 2019, starting at just after lunchtime, and ending just before lunchtime on 7 March 2019.
Agenda
If you are unable to hear the audio for the recordings, please download them
Wednesday 6 March PM
Begin: 13:30
Welcome [Recording]
openCypher and GQL
- Update on SQL/PGQ and GQL (Keith Hare, JCC Consulting)
- Existing Languages Working Group (Thomas Frisendal, Graph Data Modelling)
- Preparatory to the commencement of planning for GQL, interested parties – drawn from industry (Neo4j, Oracle, Redis Labs and TigerGraph), the community (a noted data modelling expert and published technical author), and academia (the University of Talca in Chile) – formed an informal working group. We have worked in an incremental fashion on systematically identifying, surveying, analysing and comparing graph query language features, drawn from the existing query languages: Cypher; PGQL; GSQL; SQL PGQ; and G-CORE. The work is envisioned to comprise a catalogue of: the groups of features; to which extent (if at all) these are supported in each language; exemplar syntax; supplementary artifacts to aid in the understanding of the underlying semantics; grammar constructs; and any additional details of interest. The idea is to have this landscape of existing query languages to hand in order to inform the design and development of GQL by virtue of a well-informed work plan and helping to lead to a more robust outcome. Moreover, this will help us to identify areas of consolidation, innovation and opportunities for language interoperation in GQL (for example, with SPARQL). We have used a phased approach, and began by examining the basic feature groups, such as basic querying and operations, and will move onto composable querying and complex patterns in future phases.
- [Slides] [Recording]
- GQL and openCypher: the road ahead (Alastair Green, Neo4j)
- GQL Scope & Features (Stefan Plantikow, Neo4j)
- Graph Query Language: Composition & Co (Romans Kasperovics, SAP)
BREAK: 15:30 - 16:00
Schema and multiple graphs
- Schema in GQL (Hannes Voigt, Neo4j)
- SQL PGQ graph DDL test implementation (Peter Furniss, Neo4j)
- Graph Schema (Alastair Green, Neo4j)
- Multiple graphs and composable queries, exemplified by a live demonstration of CAPS [Cypher for Apache Spark] (Max Kießling, Neo4j)
- Property graph schema definition and table-to-graph mapping in CAPS [Cypher for Apache Spark] (Martin Junghanns, Neo4j)
- An overview of gra.fo (Juan Sequeda, Capsenta)
End: 18:00
Thursday 7 March AM
Begin: 08:45
Arrival and coffee. Talks begin at 09:00.
Path evaluation
- Variable Length Relationship Pattern Extensions (Teon Banek & Marko Budiselić, Memgraph)
- Wouldn’t it be nice if traversing a variable length relationship pattern could be more tunable? There are already some ideas about supporting the so called “regular patterns”. They should behave similarly to how regular expressions behave. Unfortunately, regular patterns can be quite a burden to implement. Most users are happy with a simpler and smaller set of features for controlling the match pattern. This presentation shows how Memgraph extends variable length relationship patterns by giving users what they want while keeping the implementation simple. The extensions cover choosing the traversal strategy (depth-first, breadth-first, shortest path), as well as deciding on which paths to follow.
- [Slides] [Recording]
- Experimental Study of Context-Free Path Query Evaluation Methods (Jochem Kuijpers, Eindhoven University of Technology / Neo4j)
- Context-free path queries extend regular path queries for increased expressiveness. A context-free grammar is used to recognize accepted paths by their label strings, or traces. In this work, we study three context-free path query evaluation methods. We run query workloads on various data sets using these methods and compare their results. In particular, we showcase how these evaluation methods scale as graphs get bigger and queries become larger or more ambiguous.
- [Slides] [Recording]
Lightning talks
- Schema Validation and Evolution for Graph Databases (Eugenia Oshurko, University of Lyon)
- Named Property Graphs (Łukasz Szeremeta, University of Bialystok)
Poster/Demo/Breakout session
BREAK: 10:30 - 11:00
Language interoperability
- Cypher for Gremlin 1.0 release (Dmitry Novikov, Neueda)
- Updates and new features
- Cypher-Gremlin language interoperation
- TCK tools developed for Cypher for Gremlin
- Gremlinator (SPARQL to Gremlin) (Harsh Thakkar, The University of Bonn)
- [Slides] [Recording]
openCypher
- Overview of current CIPs (Cypher Improvement Proposals) (Tobias Lindaaker, Neo4j)
- An overview of CIPs being worked on, and explicit presentation of CIPs for voting
- EXISTS and IS NOT NULL
- SET and REMOVE
- [Recording]
- openCypher artifacts: TCK and grammar (Dmitry Novikov, Neueda & Petra Selmer, Neo4j)
Closing remarks
End: 13:00
Registration
Please email us at info@opencypher.org if you have any questions.