+ All Categories
Home > Documents > An overview of the recent history of Graph Query …...An overview of the recent history of Graph...

An overview of the recent history of Graph Query …...An overview of the recent history of Graph...

Date post: 08-Aug-2020
Category:
Upload: others
View: 6 times
Download: 0 times
Share this document with a friend
22
An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker [email protected]
Transcript
Page 1: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

An overview of the recent history of Graph Query Languages

Narrated by Tobias Lindaaker

[email protected]

Page 2: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

Once upon a time…

~2000

Page 3: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Precursors to Cypher

2001

Page 4: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Precursors to Cypher

2001 2007

Page 5: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Precursors to Cypher

Embedded Java API

2001 2007

Page 6: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Precursors to Cypher

Embedded Java API

2001 2007 2009

Page 7: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Precursors to Cypher

Embedded Java API HTTP API

server model

2001 2007 2009 2010

Page 8: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Precursors to Cypher

Embedded Java API HTTP API

server model

2001 2007 2009

Custom code deployment

2010

Page 9: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Precursors to Cypher

Embedded Java API HTTP API

server model

2001 2007 2009

Custom code deployment

2011 (July)

First release of Cypher

2010

Page 10: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

The Origin of Cypher

Page 11: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

(query)--[MODELED_AS]--->(drawing) ^ | | | [IMPLEMENTS] [TRANSLATED_TO] | | | v (code)<-[IN_COMMENT_OF]-(ascii art)

The Origin of Cypher

Page 12: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

(query)--[MODELED_AS]--->(drawing) ^ | | | [IMPLEMENTS] [TRANSLATED_TO] | | | v (code)<-[IN_COMMENT_OF]-(ascii art)

MATCH (query)-[:MODELED_AS]->(drawing), (code)-[:IMPLEMENTS]->(query), (drawing)-[:TRANSLATED_TO]->(ascii_art) (ascii_art)-[:IN_COMMENT_OF]->(code) WHERE query.id = {query_id} RETURN code.source

The Origin of Cypher

Page 13: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

v1: Read Only

START john=node:Person(name="John") MATCH (john)-[:KNOWS]-(friend)-[:KNOWS]-(foaf) WHERE NOT (john)-[:KNOWS]-(foaf) RETURN foaf

July 2011 (neo4j 1.4)

Page 14: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

v2: Graph write no update of search structures

START john=node:Person(name="John") MATCH (john)-[:KNOWS]-(friend)-[:KNOWS]-(foaf) WHERE NOT (john)-[:KNOWS]-(foaf) AND NOT (john)-[:RECOMMENDATION]->(foaf)

CREATE (john)-[:RECOMMENDATION]->(foaf)

RETURN foaf

Oct 2012 (neo4j 1.8)

Page 15: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

Neo4j 2.0: labels and proper indexes Cypher “feature complete”

MATCH (john:Person{name:"John"}), (john)-[:KNOWS]-(friend)-[:KNOWS]-(foaf) WHERE NOT (john)-[:KNOWS]-(foaf) MERGE (john)-[:RECOMMENDATION]->(foaf)

(neo4j 2.0) Dec 2013

Page 16: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

Oracle PGQL 2015

Page 17: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

LDBC Query Language Task Force started June 2015

Page 18: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

openCypher announced October 2015

Page 19: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

LDBC QL TF starts designing G-CORE 2016

Page 20: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

SQL Property Graph Ad-Hoc starts 2017

Page 21: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

LDBC QL TF finishes G-CORE paper November 2017

Page 22: An overview of the recent history of Graph Query …...An overview of the recent history of Graph Query Languages Narrated by Tobias Lindaaker tobias@neo4j.com Once upon a time…

Formal semantics of Cypher published SIGMOD 2018


Recommended