3 ms·
Working with both RDF and Cypher queries, graphs could definitely do with some improvements in the language area for more complex queries.
by tanepiper 4y ago
Working with both RDF and Cypher queries, graphs could definitely do with some improvements in the language area for more complex queries.
- college_physics 4y agoYep. Mainstream adoption of "graph thinking" is hindered by not having an SQL like idiom that is widely implemented and can handle most use cases. There are good candidates of course, but it does not feel like anything will settle anytime soon. Maybe because there is no killer app based on a graph database that will just pick an ad-hoc winner.
- syntaxfree 4y agoWhat, whatever is demoed by Neo4J in their playground is awesome, I used it for just a couple of days but could pull up convoluted queries off DBPedia (producers who worked with artists who were born in countries who have orange in their flag, things like that). The basic uses of SQL are indeed easy to learn, but quickly you find out that many types of nested queries are no-nos.
- college_physics 4y agoThe reason might be that the sort of flexibility that graph models provide for queries is only critical at the exploration phase for power users. 'In production' things can be organized or approximated within the relational database toolkit. It is also true that "linked data" is still the exception rather than the norm.
- syntaxfree 4y agoA parallel reply is that the field of “omics” (genomics, proteomics, interactomics…) has long embraced graphs as their primary mathematical tool.
- college_physics 4y agoI have deep respect for how the fields around medicine and biosciences embrace information technologies. Maybe it goes with their territory, being serious and for the long term rather than the "fake it till you make" type cultures and continuous churn and hypes that you see elsewhere. You can see the impact e.g. in the R ecosystem where a good chunk of packages is bio related or the fact that the only user-friendly ontology tool (protege) and the main example of good use of related graph concepts is from bioinformatics
- j-pb 4y agoI wouldn't exactly call protege user friendly. But this reminds me of a joke we told in our working group: "SNOMED can't tell you whats wrong with you when you're sick, but it can infer that your "Toe bone is connected to your foot bone" a whopping 2 million times a second."
- tommiegannert 4y agoAs someone working on a graph/object database, would you mind elaborating on what your paint points are?
- tanepiper 4y agoA lot of footguns and performance optimising mostly. For triples it would be around reifying and ranking (with RDF-Star helps with but doesn't solve) and the SPARQL syntax still feels like a esotetic syntax at times. Cypher is OK, but doesn't really follow any existing paradigms, and LPGs can be a massive footgun without a semantic layer since you can pretty much throw any property on a node type. Federation over named graphs, or different sources as well.
- crabbone 4y agoI know that AllegroGraph offered a Prolog(-like) language, but never got around to using it. Unfortunately, I never used a graph database in a commercial setting, so I don't have much practical experience beyond just toy projects. Since it seems like you are using this in a commercial setting, did you have any experience with Prolog as a query language?