Live data from Hacker News

Graph query languages: Cypher vs. Gremlin vs. nGQL

nebula-graph.io

11–20 of 66 posts

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#12
I use cypher most days over the last few years and I like it because it's a complete level of abstraction over the database.

In gremlin and this new nGQL, the whole notion of "INSERT," implies that the graph is just a representation over top of a relational db, and power users should understand RDBMS concepts articulated in SQL queries first with this novel and cute graph thingy after for managers. It's like asking Excel users to understand and care about pointer arithmetic.

Gremlin leverages some peoples mental sunk costs in SQL, where cypher is very verbose, but lets me reason purely about my graph model without hacking over the implementation. The others aren't bad, but the people who will be using graphs won't be DBAs.

In this sense, cypher/Neo4j isn't a competitor to noSQL and rdbms products, it's a competitor to spreadsheets, where the majority of people actually get work done themselves, instead of specifying it and having others engineer it.

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#13
post #4

Is anybody still using SPARQL?

Yes, it is still really well alive but does not benefit from marketing money, so it flies under the radar. A new version SPARQL1.2 is currently under work through a working group in W3C to address some of the limitations of the current version.

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#14

Sorry, but this article fails big time: no mention at all of SPARQL. For application developers, having access to general public Knowledge Graphs like DBPedia and WikiData can be a very good resource. While I am also a big fan of more general graph databases like Neo4J, not even mentioning SPARQL is such a HUGE OMISSION that I have to suspect some commercially motivated bias in this article. The decision of which gra…

I assume it's not mentioned because it's not one of the Query Languages mentioned as part of the standardisation project.

  'GQL is an upcoming International Standard language for property graph querying that is currently being created. 
  The idea of a standalone graph query language to complement SQL was raised by ISO SC32/ WG3 members in early 2017, and is echoed in the GQL manifesto of May 2018. 

  GQL supporters aim to develop a rock-solid next-generation declarative graph query language that builds on the foundations of SQL and integrates proven ideas from the existing openCypher, PGQL, GSQL, and G-CORE 
  languages. The proposed SQL:2020 Property Graph Query Extensions already build on these existing languages.'
https://www.gqlstandards.org/home

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#15
post #3

I rather like Cypher, easy to get into with the (node)-[edge]->(node) construction, difficult in the middle (until you realise that WITH is very different to SQL's), then a delight. Gremlin, so they let Java's horrible camelCase leak into their syntax? Oh my ...

If you have any opinions on GraphQL vs Cypher, I’d really appreciate it!

Context: In web app usage scenario the tooling available for GraphQL seems more popular (with react libraries) than Cypher.

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#16

Sorry, but this article fails big time: no mention at all of SPARQL. For application developers, having access to general public Knowledge Graphs like DBPedia and WikiData can be a very good resource. While I am also a big fan of more general graph databases like Neo4J, not even mentioning SPARQL is such a HUGE OMISSION that I have to suspect some commercially motivated bias in this article. The decision of which gra…

How are DBPedia & WikiData useful for application developers? As a reference or for actual integration into applications?

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#17

Sorry, but this article fails big time: no mention at all of SPARQL. For application developers, having access to general public Knowledge Graphs like DBPedia and WikiData can be a very good resource. While I am also a big fan of more general graph databases like Neo4J, not even mentioning SPARQL is such a HUGE OMISSION that I have to suspect some commercially motivated bias in this article. The decision of which gra…

Is there any SPARQL implementation that returns results under 10 seconds on a big dataset? Because, I never found a public SPARQL endpoint that gives remotely acceptable response time.

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#18

I use cypher most days over the last few years and I like it because it's a complete level of abstraction over the database. In gremlin and this new nGQL, the whole notion of "INSERT," implies that the graph is just a representation over top of a relational db, and power users should understand RDBMS concepts articulated in SQL queries first with this novel and cute graph thingy after for managers. It's like asking E…

I was really attracted to graph databases mainly for the ability to do joins in effectively constant time rather than O(log N) time.

But then I realized that sharding and localizing data can accomplish roughly the same thing.

Also the graph database doesn’t have to duplicate data so much for joins, saving on memory.

If you are going to have a huge dataset, build your data as RDMBS first and then make a cache in a graph database.

I say this only because graph databases are not mainstream yet.

Re: Graph query languages: Cypher vs. Gremlin vs. nGQL

#20
post #3

I rather like Cypher, easy to get into with the (node)-[edge]->(node) construction, difficult in the middle (until you realise that WITH is very different to SQL's), then a delight. Gremlin, so they let Java's horrible camelCase leak into their syntax? Oh my ...

If you have any opinions on GraphQL vs Cypher, I’d really appreciate it! Context: In web app usage scenario the tooling available for GraphQL seems more popular (with react libraries) than Cypher.

Completely different use case and purpose.

Cypher is a graph query language.

GraphQL is an API query language to query tree like structures (trees...), nothing to do with graphs actually.

Post reply on HN