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….