Using Neo4J
I was listening to a podcast from Software Engineering Radio about the NoSQL movement and started invesigating tools like Cassandra and Voldemort. Nice projects, but nothing that really spoke to me from a design perspective. Then I discovered Neo4J.
Neo4J is a graph (or network) database. Rather than using the relational model, it stores data as nodes and edges. Nodes can have properties (key/value pairs). Edges are directional and have a type, and they can have properties too.
Hmmm...it sounds like Neo4J works at a logical level. I wonder if I could use it to avoid the overhead of translating my domain model into a physical model. Hmm...no JPA? no JDO? Now that's some leverage I could use! But can it perform well? Does it hold up under load?
I decided to run a few experiments....
- Experiment 1 - out of the box
- Experiment 2 - testing the speed
- Experiment 3 - POJO annotations with jo4neo