SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
Graph Query Language Task Force
first year update
Peter Boncz
boncz@cwi.nl
GraphQL Background
The GraphQL task force of LDBC studies query
languages for graph data management systems, and
specifically those systems storing so-called Property
Graph data.
This query language should cover the needs of the
most important use-cases for such systems, including
(at least) the LDBC's own social network benchmark's
Interactive and Business Intelligence workloads.
GraphQL TF Composition
‱ Renzo Angles, Universidad de Talca
‱ Marcelo Arenas, PUC Chile - task force lead
‱ Pablo Barceló, Universidad de Chile
‱ Peter Boncz, Vrije Universiteit Amsterdam
‱ George Fletcher, Eindhoven University of Technology
‱ Irini Fundulaki, FORTH
‱ Claudio Gutierrez, Universidad de Chile
‱ Tobias Lindaaker, Neo Technology
‱ Marcus Paradies, SAP
‱ Raquel Pau, UPC
‱ Arnau Prat, UPC / Sparsity
‱ Tomer Sagi, HP Labs
‱ Oskar van Rest, Oracle Labs
‱ Hannes Voigt, TU Dresden
‱ Yinglong Xia, Huawei America
GraphQL Mission
the goals of the GraphQL task force are the following:
‱ to devise a list of desired features and functionalities of
such a query language
‱ to evaluate a number of existing languages, in particular
Cypher, and possibly Gremlin v3, SPARQL and SQL in this
respect and identify possible problems in these.
‱ The result should be a better understanding of the design
space and state-of-the-art.
‱ The target is to achieve this within one year. In a second
phase, we can develop proposals for changes to existing
query languages, or even a new query language..
GraphQL Log (14/28)
2015-06-08 wiki, data model
2015-06-22 data model
2015-07-06 data model
2015-07-22 case study: SPARQL 1.1
2015-08-03 case study: Cypher
2015-08-17 case study: PGQL
2015-08-31 theory: Regular Path Queries
2015-09-28 case study: Sparksee API
2015-10-12 case study: Gremlin
2015-10-26 survey on history of graph query languages
2015-11-16 survey on history of graph query languages
2015-11-23 case study: “graphs at a time” proposal sigmod2008
2015-12-07 case studies: conceptual schemas (i), and composability (ii)
2015-12-21 summary so far, attention for LDBC SNB query requirements
GraphQL Log (28/28)
2016-01-11 (i) LDBC TUC use case overview, (ii) types (graphs, tables, paths)
2016-01-25 case sudies: type systems in Cypher and PGQL
2016-02-01 meta-discussion: wiki pages for graph data model, functionalities
2016-02-15/02-29/03-07 generate more examples and functionalities
2016-03-14 case study: graph pattern matching & binding tables
2016-03-22 discussion: binding tables  without schema
2016-04-04 proposal: reachability queries
2016-04-18 discussion: shortest path queries  monotone top-k with constraints
2016-05-09 proposal: RPQs with regular expression with memory (REM)
2016-05-23 proposal: relational graph query processing (aka Peter’s brain dump)
2016-05-30 proposal: constraints on paths
2016-06-06 discussion: Peter’s brain dump conclusions
2016-06-20 proposal: data type transformations
Decision: Property Graph Data Model
In the following definition, we assume the existence of the following sets:
‱ L is an infinite set of (node and edge) labels;
‱ P is an infinite set of property names;
‱ V is an infinite set of literals (actual values).
Moreover, we assume that SET(X) is the set of all finite subsets of a given set X. Then a
property graph is a tuple G = (N, E, ρ, λ, σ), where:
‱ nodes: N is a finite set of nodes;
‱ edges: E is a finite set of edges such that N and E have no elements in common;
ρ : E → (N × N) is a total function;
‱ labels: λ : (N U E) → SET(L) is a total function;
‱ properties:
σ : (N U E) × P → V is a partial function.
We decided not to define a schema (expected properties and their types, given a label)
The Type Discussion
What are the types needed in the graph query language, apart from the basic
types (such as string and integer)?
‱ It has been argued that GRAPH and TABLE should be types in the languages.
‱ It has also been argued that a type PATH should be included in the language.
‱ Do we need to consider only simple paths?
‱ Do we need to consider sets of objects? E.g. return a set of graphs.
‱ Do we need to include lists of objects? E.g. a path could be a list of vertexes.
Discussion: Shortest Paths Functionality
‱ shortest paths (hops), and/or weighted shortest path
– weight function: monotone sum (only then Dijkstra)
‱ path constraints (and implications for efficiency)
– Constraints on what? Just {edge,vertex} properties on the path?
– Or full-blown subqueries? Constraints involving the path so far?
‱ query embedding of shortest paths
– single shortest paths (between one source and destination)
– Or: all pair shortest paths
– Or: bulk shortest paths (between many src,dst combinations, eg delivered by subquery)
‱ What to return:
– The distance / total weight?
– Or the shortest path? What if multiple path with the same cost exist? Return ,ultiple or one,
and if so, how to make this deterministic?
‱ top-N shortest paths – a natural extension of shortest paths (N=1)
– Best N paths for each src,dst pair.
– Is this useful functionality? Some use cases cast doubt on this
optional
Relational Graph Querying
Idea: “seeing graphs in tables”
‱ G =(V,E) with
– V denoting a table of vertexes, with
‱ one non-null unique key column V.key
‱ nullable columns V.p_i holding vertex properties p_i;
– E denoting a table of edges with
‱ columns E.from and E.to holding non-null values from the domain of V.key
‱ nullable columns E.p_j holding edge properties p_j
– We can use non-NF1 tables for multi-valued properties
– There are two foreign key constraints
‱ E.from  V.key
‱ E.to  V.key
ALTER TABLE E ADD GRAPH KEYS (mykey)
EDGE (from) TO (to)
REFERENCES V(key)
Example SQL Extension
On to cheapest weight path queries:
SELECT v1, v2, CHEAPEST SUM(e:distance) score, ..
FROM .. (introducing v1 and v2 here) ..
WHERE v1.key REACHES v2.key OVER E e EDGE E_from,E_to
ORDER BY ..
‱ Rule: if a CHEAPEST SUM(X:) predicate is used in the SELECT list, this must match
a REACHES..OVER X condition in the WHERE, in which case we do not only ask to
filter where paths exists, but also compute the cheapest cost of all such paths (this
cost is bound to score).
‱ The parameter to SUM(X:expr) can be a complex expr, in which (only) binding
variable X can play a role. Note that it may be used to access edge properties.
‱ Note we avoid binding a variable to the space of all possible paths in this syntax.
‱ Restricting bindings of e to only the edges on the single-cheapest path (for each
v1,v2) is healthy as I have become convinced that top-N paths only produce
meaningless results on real data, with N>1
Decisions: Relational Graph Querying
(1) Using tables to represent vertexes, edges, and paths
‱ Accepted.
(2) Using nested tables to represent paths
‱ Accepted.
(3) Constructing edge sets from subqueries, i.e., having compositionality of queries
‱ Accepted
(4) Restricting to monotone sums for weighted shortest path functions (accepted)
‱ Accepted
(5) Using a black box approach to shortest paths that avoids exposing all path bindings
‱ No conclusion yet
(6) It is a worthwhile/positive endeavor to consider extending SQL, in addition to
design of native graph QL.
‱ Accepted to do a coupled joint study of two languages.
Computable Path Constraints: REM
Proposal gets a lot of expressive power out of the efficiently computable family
Proposal is criticized for being hard to understand by non-expert users
Composable Graph Patterns
Composable Graph Patterns
Composable Graph Patterns
Decisions: Composable Path Patterns
The graph query language should allow for..
(1) (node-selecting) reachability RPQs
‱ Accepted.
(2) k-shortest path finding RPQs (i.e, path-selecting queries)
‱ Accepted.
(3) constraining both edge labels and properties of vertices and edges along paths.
‱ Rejected.
(4) comparing data values (labels/properties) along paths
‱ Accepted.
(5) translation of all PQs to REMs ("queries should be executable in polynomial time“)
‱ Accepted.
6) Specifying min+max repetition on Kleene stars
‱ Accepted.
Discussion & Outlook
‱ Did we achieve our year#1 objectives?
– We got close.
– Some really great people in the TF. Good atmosphere.
‱ Modus Operandi of GraphQL TF
– Not easy to structure such a multi-faceted discussion
– Linear decision points?
‱ Future
– More {discussions, case studies, functionalities, *}
– A language proposal document
‱ One proposal, or two (native + SQL extension)?

Mais conteĂșdo relacionado

Mais procurados

R programming language: conceptual overview
R programming language: conceptual overviewR programming language: conceptual overview
R programming language: conceptual overviewMaxim Litvak
 
Programming Languages - Functional Programming Paper
Programming Languages - Functional Programming PaperProgramming Languages - Functional Programming Paper
Programming Languages - Functional Programming PaperShreya Chakrabarti
 
Poio API: a CLARIN-D curation project for language documentation and language...
Poio API: a CLARIN-D curation project for language documentation and language...Poio API: a CLARIN-D curation project for language documentation and language...
Poio API: a CLARIN-D curation project for language documentation and language...Peter Bouda
 
I20191007
I20191007I20191007
I20191007TMU, Japan
 
1.3 introduction to R language, importing dataset in r, data exploration in r
1.3 introduction to R language, importing dataset in r, data exploration in r1.3 introduction to R language, importing dataset in r, data exploration in r
1.3 introduction to R language, importing dataset in r, data exploration in rSimple Research
 
How to get started with R programming
How to get started with R programmingHow to get started with R programming
How to get started with R programmingRamon Salazar
 
R programming for data science
R programming for data scienceR programming for data science
R programming for data scienceSovello Hildebrand
 
Towards advanced data retrieval from learning objects repositories
Towards advanced data retrieval from learning objects repositoriesTowards advanced data retrieval from learning objects repositories
Towards advanced data retrieval from learning objects repositoriesValentina Paunovic
 
R programming presentation
R programming presentationR programming presentation
R programming presentationAkshat Sharma
 
Chapter 11: Object Oriented Programming Part 2
Chapter 11: Object Oriented Programming Part 2Chapter 11: Object Oriented Programming Part 2
Chapter 11: Object Oriented Programming Part 2Nicole Ryan
 
RDataMining slides-r-programming
RDataMining slides-r-programmingRDataMining slides-r-programming
RDataMining slides-r-programmingYanchang Zhao
 
Expressive Query Answering For Semantic Wikis
Expressive Query Answering For  Semantic WikisExpressive Query Answering For  Semantic Wikis
Expressive Query Answering For Semantic WikisJie Bao
 
Programming Logic and Design: Working with Data
Programming Logic and Design: Working with DataProgramming Logic and Design: Working with Data
Programming Logic and Design: Working with DataNicole Ryan
 
R programming Fundamentals
R programming  FundamentalsR programming  Fundamentals
R programming FundamentalsRagia Ibrahim
 
Apl – a programming language
Apl – a programming languageApl – a programming language
Apl – a programming languageBryan Wilson
 

Mais procurados (20)

R programming language: conceptual overview
R programming language: conceptual overviewR programming language: conceptual overview
R programming language: conceptual overview
 
An Intoduction to R
An Intoduction to RAn Intoduction to R
An Intoduction to R
 
Programming Languages - Functional Programming Paper
Programming Languages - Functional Programming PaperProgramming Languages - Functional Programming Paper
Programming Languages - Functional Programming Paper
 
Poio API: a CLARIN-D curation project for language documentation and language...
Poio API: a CLARIN-D curation project for language documentation and language...Poio API: a CLARIN-D curation project for language documentation and language...
Poio API: a CLARIN-D curation project for language documentation and language...
 
R Programming
R ProgrammingR Programming
R Programming
 
Class ppt intro to r
Class ppt intro to rClass ppt intro to r
Class ppt intro to r
 
I20191007
I20191007I20191007
I20191007
 
1.3 introduction to R language, importing dataset in r, data exploration in r
1.3 introduction to R language, importing dataset in r, data exploration in r1.3 introduction to R language, importing dataset in r, data exploration in r
1.3 introduction to R language, importing dataset in r, data exploration in r
 
How to get started with R programming
How to get started with R programmingHow to get started with R programming
How to get started with R programming
 
R programming for data science
R programming for data scienceR programming for data science
R programming for data science
 
Towards advanced data retrieval from learning objects repositories
Towards advanced data retrieval from learning objects repositoriesTowards advanced data retrieval from learning objects repositories
Towards advanced data retrieval from learning objects repositories
 
R programming
R programmingR programming
R programming
 
R programming
R programmingR programming
R programming
 
R programming presentation
R programming presentationR programming presentation
R programming presentation
 
Chapter 11: Object Oriented Programming Part 2
Chapter 11: Object Oriented Programming Part 2Chapter 11: Object Oriented Programming Part 2
Chapter 11: Object Oriented Programming Part 2
 
RDataMining slides-r-programming
RDataMining slides-r-programmingRDataMining slides-r-programming
RDataMining slides-r-programming
 
Expressive Query Answering For Semantic Wikis
Expressive Query Answering For  Semantic WikisExpressive Query Answering For  Semantic Wikis
Expressive Query Answering For Semantic Wikis
 
Programming Logic and Design: Working with Data
Programming Logic and Design: Working with DataProgramming Logic and Design: Working with Data
Programming Logic and Design: Working with Data
 
R programming Fundamentals
R programming  FundamentalsR programming  Fundamentals
R programming Fundamentals
 
Apl – a programming language
Apl – a programming languageApl – a programming language
Apl – a programming language
 

Semelhante a 8th TUC Meeting - Peter Boncz (CWI). Query Language Task Force status

From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...
From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...
From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...Anita Graser
 
Lisp, An Introduction.ppt
Lisp, An Introduction.pptLisp, An Introduction.ppt
Lisp, An Introduction.pptLuis Soza
 
intro.ppt
intro.pptintro.ppt
intro.pptLuis Soza
 
An Introduction to Scala - Blending OO and Functional Paradigms
An Introduction to Scala - Blending OO and Functional ParadigmsAn Introduction to Scala - Blending OO and Functional Paradigms
An Introduction to Scala - Blending OO and Functional ParadigmsMiles Sabin
 
Can programming be liberated from the von neumann style?
Can programming be liberated from the von neumann style?Can programming be liberated from the von neumann style?
Can programming be liberated from the von neumann style?Oriol LĂłpez Massaguer
 
A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...
A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...
A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...Jose Quesada (hiring)
 
Large-scale Recommendation Systems on Just a PC
Large-scale Recommendation Systems on Just a PCLarge-scale Recommendation Systems on Just a PC
Large-scale Recommendation Systems on Just a PCAapo KyrölÀ
 
Matplotlib Review 2021
Matplotlib Review 2021Matplotlib Review 2021
Matplotlib Review 2021Bhaskar J.Roy
 
Matplotlib_Complete review_2021_abridged_version
Matplotlib_Complete review_2021_abridged_versionMatplotlib_Complete review_2021_abridged_version
Matplotlib_Complete review_2021_abridged_versionBhaskar J.Roy
 
An early look at the LDBC Social Network Benchmark's Business Intelligence wo...
An early look at the LDBC Social Network Benchmark's Business Intelligence wo...An early look at the LDBC Social Network Benchmark's Business Intelligence wo...
An early look at the LDBC Social Network Benchmark's Business Intelligence wo...GĂĄbor SzĂĄrnyas
 
Clojure - An Introduction for Lisp Programmers
Clojure - An Introduction for Lisp ProgrammersClojure - An Introduction for Lisp Programmers
Clojure - An Introduction for Lisp Programmerselliando dias
 
Data Analytics with R and SQL Server
Data Analytics with R and SQL ServerData Analytics with R and SQL Server
Data Analytics with R and SQL ServerStéphane Fréchette
 
The Road to Lambda - Mike Duigou
The Road to Lambda - Mike DuigouThe Road to Lambda - Mike Duigou
The Road to Lambda - Mike Duigoujaxconf
 
The SPARQL Anything project
The SPARQL Anything projectThe SPARQL Anything project
The SPARQL Anything projectEnrico Daga
 
Lecture 1 (bce-7)
Lecture   1 (bce-7)Lecture   1 (bce-7)
Lecture 1 (bce-7)farazahmad005
 
High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)Jose Luis Lopez Pino
 
Data Processing over very Large Relational Databases
Data Processing over very Large Relational DatabasesData Processing over very Large Relational Databases
Data Processing over very Large Relational Databaseskvaderlipa
 

Semelhante a 8th TUC Meeting - Peter Boncz (CWI). Query Language Task Force status (20)

From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...
From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...
From Simple Features to Moving Features and Beyond? at OGC Member Meeting, Se...
 
intro.ppt
intro.pptintro.ppt
intro.ppt
 
Lisp, An Introduction.ppt
Lisp, An Introduction.pptLisp, An Introduction.ppt
Lisp, An Introduction.ppt
 
intro.ppt
intro.pptintro.ppt
intro.ppt
 
An Introduction to Scala - Blending OO and Functional Paradigms
An Introduction to Scala - Blending OO and Functional ParadigmsAn Introduction to Scala - Blending OO and Functional Paradigms
An Introduction to Scala - Blending OO and Functional Paradigms
 
Can programming be liberated from the von neumann style?
Can programming be liberated from the von neumann style?Can programming be liberated from the von neumann style?
Can programming be liberated from the von neumann style?
 
A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...
A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...
A full Machine learning pipeline in Scikit-learn vs in scala-Spark: pros and ...
 
Large-scale Recommendation Systems on Just a PC
Large-scale Recommendation Systems on Just a PCLarge-scale Recommendation Systems on Just a PC
Large-scale Recommendation Systems on Just a PC
 
Matplotlib Review 2021
Matplotlib Review 2021Matplotlib Review 2021
Matplotlib Review 2021
 
Matplotlib_Complete review_2021_abridged_version
Matplotlib_Complete review_2021_abridged_versionMatplotlib_Complete review_2021_abridged_version
Matplotlib_Complete review_2021_abridged_version
 
An early look at the LDBC Social Network Benchmark's Business Intelligence wo...
An early look at the LDBC Social Network Benchmark's Business Intelligence wo...An early look at the LDBC Social Network Benchmark's Business Intelligence wo...
An early look at the LDBC Social Network Benchmark's Business Intelligence wo...
 
Clojure - An Introduction for Lisp Programmers
Clojure - An Introduction for Lisp ProgrammersClojure - An Introduction for Lisp Programmers
Clojure - An Introduction for Lisp Programmers
 
Data Analytics with R and SQL Server
Data Analytics with R and SQL ServerData Analytics with R and SQL Server
Data Analytics with R and SQL Server
 
The Road to Lambda - Mike Duigou
The Road to Lambda - Mike DuigouThe Road to Lambda - Mike Duigou
The Road to Lambda - Mike Duigou
 
The SPARQL Anything project
The SPARQL Anything projectThe SPARQL Anything project
The SPARQL Anything project
 
Essentials of R
Essentials of REssentials of R
Essentials of R
 
Lecture 1 (bce-7)
Lecture   1 (bce-7)Lecture   1 (bce-7)
Lecture 1 (bce-7)
 
semantic web & natural language
semantic web & natural languagesemantic web & natural language
semantic web & natural language
 
High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)High-level languages for Big Data Analytics (Presentation)
High-level languages for Big Data Analytics (Presentation)
 
Data Processing over very Large Relational Databases
Data Processing over very Large Relational DatabasesData Processing over very Large Relational Databases
Data Processing over very Large Relational Databases
 

Mais de LDBC council

8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...
8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...
8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...LDBC council
 
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...LDBC council
 
8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics Engine
8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics Engine8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics Engine
8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics EngineLDBC council
 
8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...
8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...
8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...LDBC council
 
8th TUC Meeting – Marcus Paradies (SAP) Social Network Benchmark
8th TUC Meeting – Marcus Paradies (SAP) Social Network Benchmark8th TUC Meeting – Marcus Paradies (SAP) Social Network Benchmark
8th TUC Meeting – Marcus Paradies (SAP) Social Network BenchmarkLDBC council
 
8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...
8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...
8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...LDBC council
 
Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...
Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...
Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...LDBC council
 
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...LDBC council
 
8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...
8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...
8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...LDBC council
 
8th TUC Meeting -
8th TUC Meeting - 8th TUC Meeting -
8th TUC Meeting - LDBC council
 
8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...
8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...
8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...LDBC council
 
8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...
8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...
8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...LDBC council
 
8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...
8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...
8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...LDBC council
 
LDBC 8th TUC Meeting: Introduction and status update
LDBC 8th TUC Meeting: Introduction and status updateLDBC 8th TUC Meeting: Introduction and status update
LDBC 8th TUC Meeting: Introduction and status updateLDBC council
 
LDBC 6th TUC Meeting conclusions
LDBC 6th TUC Meeting conclusionsLDBC 6th TUC Meeting conclusions
LDBC 6th TUC Meeting conclusionsLDBC council
 
Parallel and incremental materialisation of RDF/DATALOG in RDFOX
Parallel and incremental materialisation of RDF/DATALOG in RDFOXParallel and incremental materialisation of RDF/DATALOG in RDFOX
Parallel and incremental materialisation of RDF/DATALOG in RDFOXLDBC council
 
MODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service SelectionMODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service SelectionLDBC council
 
E-Commerce and Graph-driven Applications: Experiences and Optimizations while...
E-Commerce and Graph-driven Applications: Experiences and Optimizations while...E-Commerce and Graph-driven Applications: Experiences and Optimizations while...
E-Commerce and Graph-driven Applications: Experiences and Optimizations while...LDBC council
 
LDBC SNB Benchmark Auditing
LDBC SNB Benchmark AuditingLDBC SNB Benchmark Auditing
LDBC SNB Benchmark AuditingLDBC council
 
Social Network Benchmark Interactive Workload
Social Network Benchmark Interactive WorkloadSocial Network Benchmark Interactive Workload
Social Network Benchmark Interactive WorkloadLDBC council
 

Mais de LDBC council (20)

8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...
8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...
8th TUC Meeting - Juan Sequeda (Capsenta). Integrating Data using Graphs and ...
 
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...8th TUC Meeting -  Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
8th TUC Meeting - Zhe Wu (Oracle USA). Bridging RDF Graph and Property Graph...
 
8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics Engine
8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics Engine8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics Engine
8th TUC Meeting – Yinglong Xia (Huawei), Big Graph Analytics Engine
 
8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...
8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...
8th TUC Meeting – George Fletcher (TU Eindhoven), gMark: Schema-driven data a...
 
8th TUC Meeting – Marcus Paradies (SAP) Social Network Benchmark
8th TUC Meeting – Marcus Paradies (SAP) Social Network Benchmark8th TUC Meeting – Marcus Paradies (SAP) Social Network Benchmark
8th TUC Meeting – Marcus Paradies (SAP) Social Network Benchmark
 
8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...
8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...
8th TUC Meeting - Sergey Edunov (Facebook). Generating realistic trillion-edg...
 
Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...
Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...
Weining Qian (ECNU). On Statistical Characteristics of Real-Life Knowledge Gr...
 
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
8th TUC Meeting | Lijun Chang (University of New South Wales). Efficient Subg...
 
8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...
8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...
8th TUC Meeting - Eugene I. Chong (Oracle USA). Balancing Act to improve RDF ...
 
8th TUC Meeting -
8th TUC Meeting - 8th TUC Meeting -
8th TUC Meeting -
 
8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...
8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...
8th TUC Meeting - David Meibusch, Nathan Hawes (Oracle Labs Australia). Frapp...
 
8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...
8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...
8th TUC Meeting - Martin Zand University of Rochester Clinical and Translatio...
 
8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...
8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...
8th TUC Meeting - Tim Hegeman (TU Delft). Social Network Benchmark, Analytics...
 
LDBC 8th TUC Meeting: Introduction and status update
LDBC 8th TUC Meeting: Introduction and status updateLDBC 8th TUC Meeting: Introduction and status update
LDBC 8th TUC Meeting: Introduction and status update
 
LDBC 6th TUC Meeting conclusions
LDBC 6th TUC Meeting conclusionsLDBC 6th TUC Meeting conclusions
LDBC 6th TUC Meeting conclusions
 
Parallel and incremental materialisation of RDF/DATALOG in RDFOX
Parallel and incremental materialisation of RDF/DATALOG in RDFOXParallel and incremental materialisation of RDF/DATALOG in RDFOX
Parallel and incremental materialisation of RDF/DATALOG in RDFOX
 
MODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service SelectionMODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service Selection
 
E-Commerce and Graph-driven Applications: Experiences and Optimizations while...
E-Commerce and Graph-driven Applications: Experiences and Optimizations while...E-Commerce and Graph-driven Applications: Experiences and Optimizations while...
E-Commerce and Graph-driven Applications: Experiences and Optimizations while...
 
LDBC SNB Benchmark Auditing
LDBC SNB Benchmark AuditingLDBC SNB Benchmark Auditing
LDBC SNB Benchmark Auditing
 
Social Network Benchmark Interactive Workload
Social Network Benchmark Interactive WorkloadSocial Network Benchmark Interactive Workload
Social Network Benchmark Interactive Workload
 

Último

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 

Último (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

8th TUC Meeting - Peter Boncz (CWI). Query Language Task Force status

  • 1. Graph Query Language Task Force first year update Peter Boncz boncz@cwi.nl
  • 2. GraphQL Background The GraphQL task force of LDBC studies query languages for graph data management systems, and specifically those systems storing so-called Property Graph data. This query language should cover the needs of the most important use-cases for such systems, including (at least) the LDBC's own social network benchmark's Interactive and Business Intelligence workloads.
  • 3. GraphQL TF Composition ‱ Renzo Angles, Universidad de Talca ‱ Marcelo Arenas, PUC Chile - task force lead ‱ Pablo BarcelĂł, Universidad de Chile ‱ Peter Boncz, Vrije Universiteit Amsterdam ‱ George Fletcher, Eindhoven University of Technology ‱ Irini Fundulaki, FORTH ‱ Claudio Gutierrez, Universidad de Chile ‱ Tobias Lindaaker, Neo Technology ‱ Marcus Paradies, SAP ‱ Raquel Pau, UPC ‱ Arnau Prat, UPC / Sparsity ‱ Tomer Sagi, HP Labs ‱ Oskar van Rest, Oracle Labs ‱ Hannes Voigt, TU Dresden ‱ Yinglong Xia, Huawei America
  • 4. GraphQL Mission the goals of the GraphQL task force are the following: ‱ to devise a list of desired features and functionalities of such a query language ‱ to evaluate a number of existing languages, in particular Cypher, and possibly Gremlin v3, SPARQL and SQL in this respect and identify possible problems in these. ‱ The result should be a better understanding of the design space and state-of-the-art. ‱ The target is to achieve this within one year. In a second phase, we can develop proposals for changes to existing query languages, or even a new query language..
  • 5. GraphQL Log (14/28) 2015-06-08 wiki, data model 2015-06-22 data model 2015-07-06 data model 2015-07-22 case study: SPARQL 1.1 2015-08-03 case study: Cypher 2015-08-17 case study: PGQL 2015-08-31 theory: Regular Path Queries 2015-09-28 case study: Sparksee API 2015-10-12 case study: Gremlin 2015-10-26 survey on history of graph query languages 2015-11-16 survey on history of graph query languages 2015-11-23 case study: “graphs at a time” proposal sigmod2008 2015-12-07 case studies: conceptual schemas (i), and composability (ii) 2015-12-21 summary so far, attention for LDBC SNB query requirements
  • 6. GraphQL Log (28/28) 2016-01-11 (i) LDBC TUC use case overview, (ii) types (graphs, tables, paths) 2016-01-25 case sudies: type systems in Cypher and PGQL 2016-02-01 meta-discussion: wiki pages for graph data model, functionalities 2016-02-15/02-29/03-07 generate more examples and functionalities 2016-03-14 case study: graph pattern matching & binding tables 2016-03-22 discussion: binding tables  without schema 2016-04-04 proposal: reachability queries 2016-04-18 discussion: shortest path queries  monotone top-k with constraints 2016-05-09 proposal: RPQs with regular expression with memory (REM) 2016-05-23 proposal: relational graph query processing (aka Peter’s brain dump) 2016-05-30 proposal: constraints on paths 2016-06-06 discussion: Peter’s brain dump conclusions 2016-06-20 proposal: data type transformations
  • 7. Decision: Property Graph Data Model In the following definition, we assume the existence of the following sets: ‱ L is an infinite set of (node and edge) labels; ‱ P is an infinite set of property names; ‱ V is an infinite set of literals (actual values). Moreover, we assume that SET(X) is the set of all finite subsets of a given set X. Then a property graph is a tuple G = (N, E, ρ, λ, σ), where: ‱ nodes: N is a finite set of nodes; ‱ edges: E is a finite set of edges such that N and E have no elements in common; ρ : E → (N × N) is a total function; ‱ labels: λ : (N U E) → SET(L) is a total function; ‱ properties: σ : (N U E) × P → V is a partial function. We decided not to define a schema (expected properties and their types, given a label)
  • 8. The Type Discussion What are the types needed in the graph query language, apart from the basic types (such as string and integer)? ‱ It has been argued that GRAPH and TABLE should be types in the languages. ‱ It has also been argued that a type PATH should be included in the language. ‱ Do we need to consider only simple paths? ‱ Do we need to consider sets of objects? E.g. return a set of graphs. ‱ Do we need to include lists of objects? E.g. a path could be a list of vertexes.
  • 9. Discussion: Shortest Paths Functionality ‱ shortest paths (hops), and/or weighted shortest path – weight function: monotone sum (only then Dijkstra) ‱ path constraints (and implications for efficiency) – Constraints on what? Just {edge,vertex} properties on the path? – Or full-blown subqueries? Constraints involving the path so far? ‱ query embedding of shortest paths – single shortest paths (between one source and destination) – Or: all pair shortest paths – Or: bulk shortest paths (between many src,dst combinations, eg delivered by subquery) ‱ What to return: – The distance / total weight? – Or the shortest path? What if multiple path with the same cost exist? Return ,ultiple or one, and if so, how to make this deterministic? ‱ top-N shortest paths – a natural extension of shortest paths (N=1) – Best N paths for each src,dst pair. – Is this useful functionality? Some use cases cast doubt on this
  • 10. optional Relational Graph Querying Idea: “seeing graphs in tables” ‱ G =(V,E) with – V denoting a table of vertexes, with ‱ one non-null unique key column V.key ‱ nullable columns V.p_i holding vertex properties p_i; – E denoting a table of edges with ‱ columns E.from and E.to holding non-null values from the domain of V.key ‱ nullable columns E.p_j holding edge properties p_j – We can use non-NF1 tables for multi-valued properties – There are two foreign key constraints ‱ E.from  V.key ‱ E.to  V.key ALTER TABLE E ADD GRAPH KEYS (mykey) EDGE (from) TO (to) REFERENCES V(key)
  • 11. Example SQL Extension On to cheapest weight path queries: SELECT v1, v2, CHEAPEST SUM(e:distance) score, .. FROM .. (introducing v1 and v2 here) .. WHERE v1.key REACHES v2.key OVER E e EDGE E_from,E_to ORDER BY .. ‱ Rule: if a CHEAPEST SUM(X:) predicate is used in the SELECT list, this must match a REACHES..OVER X condition in the WHERE, in which case we do not only ask to filter where paths exists, but also compute the cheapest cost of all such paths (this cost is bound to score). ‱ The parameter to SUM(X:expr) can be a complex expr, in which (only) binding variable X can play a role. Note that it may be used to access edge properties. ‱ Note we avoid binding a variable to the space of all possible paths in this syntax. ‱ Restricting bindings of e to only the edges on the single-cheapest path (for each v1,v2) is healthy as I have become convinced that top-N paths only produce meaningless results on real data, with N>1
  • 12. Decisions: Relational Graph Querying (1) Using tables to represent vertexes, edges, and paths ‱ Accepted. (2) Using nested tables to represent paths ‱ Accepted. (3) Constructing edge sets from subqueries, i.e., having compositionality of queries ‱ Accepted (4) Restricting to monotone sums for weighted shortest path functions (accepted) ‱ Accepted (5) Using a black box approach to shortest paths that avoids exposing all path bindings ‱ No conclusion yet (6) It is a worthwhile/positive endeavor to consider extending SQL, in addition to design of native graph QL. ‱ Accepted to do a coupled joint study of two languages.
  • 13. Computable Path Constraints: REM Proposal gets a lot of expressive power out of the efficiently computable family Proposal is criticized for being hard to understand by non-expert users
  • 17. Decisions: Composable Path Patterns The graph query language should allow for.. (1) (node-selecting) reachability RPQs ‱ Accepted. (2) k-shortest path finding RPQs (i.e, path-selecting queries) ‱ Accepted. (3) constraining both edge labels and properties of vertices and edges along paths. ‱ Rejected. (4) comparing data values (labels/properties) along paths ‱ Accepted. (5) translation of all PQs to REMs ("queries should be executable in polynomial time“) ‱ Accepted. 6) Specifying min+max repetition on Kleene stars ‱ Accepted.
  • 18. Discussion & Outlook ‱ Did we achieve our year#1 objectives? – We got close. – Some really great people in the TF. Good atmosphere. ‱ Modus Operandi of GraphQL TF – Not easy to structure such a multi-faceted discussion – Linear decision points? ‱ Future – More {discussions, case studies, functionalities, *} – A language proposal document ‱ One proposal, or two (native + SQL extension)?