Search code examples
neo4jgraph-databasesorientdb

Neo4j vs OrientDB object mapping options vs Tinkerpop Frames


We are starting a new social startup and from what I learned so far graph database is the way to go, I am currently trying to figure out which one to use. I started comparing OrientDB and Neo4j, we are writing in Java and object-graph mapping is important for us.

I started with Tinkerpop Frames (for easy migration in the future) but it seems that there is only one way mapping (maybe I am missing something) from the graph to an object, also the mapping is only with interfaces (it's more like defining a schema with interfaces rather than having your application objects mapped to the graph - again maybe I'm missing something :/ ).

Because I can't use Tinkerpop I need to choose one specific DB (migration will be harder :/ ), I saw that OrientDB uses reflection and neo4j has jo4neo which uses annotations, I am currently leaning towards jo4neo because it is more familiar and without reflection seems faster (I havn't tested this yet)

I would love hearing any input on this, maybe I missed something with Frames, really any input would help


Solution

  • If you want to use jo4neo, that project is pretty outdated. I would go with http://www.springsource.org/spring-data/neo4j for annotation driven OGM.