4 ms·
You aré looping for neo4j. It is beautiful.
by elviejo 15y ago
You aré looping for neo4j. It is beautiful.
- derefr 15y agoI'm not quite sure; I was imagining something with a small C API like SQLite's (which can usually be incorporated into anything), whereas Neo4j requires the JVM. This means, for example, that if I want to write a Ruby app that interacts with the graph database, it has to become a JRuby app. I suppose a service-based architecture could avoid this (where only the process interacting with the graph has to be run on the JVM), but that defeats the whole purpose of using a database library rather than a client-server database. I suppose it works well enough for languages that are already founded on the JVM, such as Clojure—but that doesn't make it universally portable to systems that don't even have a JVM implementation (such as iOS), in the way that SQLite is.
- elviejo 15y agoIf you want to write a Ruby App you just use Neo4j with their Rest API. You are right in all the other points though.
- floppydisk 15y agoI've used neo4j for a project a while ago. Once you got past the documentation, it was cool to work on and see data transactions happening without having to write code for processing RDBMS data. I haven't looked at it or used it in a while so I can't speak to their current state, but when I used it, they had a bit of a learning curve for getting up to speed. Particularly, some of their code examples were a little off so I had to spend a couple of days researching to figure out why the project compiled but nothing ended up in the database.
- espeed 15y agoNeo4j has recently added support for two new query languages -- Gremlin and Cypher. Gremlin is a domain specific scripting/traversal language written in Groovy, and you can include a Gremlin script in whatever language you're writing code in just like you can include an SQL script in your code. Cypher is brand new and experimental.