Neo4j.rb is a JRuby graph database based on Neo4j and Lucene.

This brings the power of Neo4j to Ruby developers, and the project website claims that Neo4j.rb integration with Rails is “seamless.” We covered Neo4j and other graph databases previously.

The key features include:

  • Domain Modeling – use the language of a graph (nodes/relationship/properties) to express your domain !
  • Schema Less and Efficient storage of Semi Structured Information
  • No O/R mismatch – very natural to map a graph to an Object Oriented language like Ruby.
  • Performance
  • Embedded Database – no database tier, easier to install, test, deploy and configure. It is run in the same process as your application.
  • Express Queries as Traversals
  • Fast deep traversal instead of slow SQL queries that span many table joins.
  • Very natural to express graph related problem with traversals (recommendation engine, find shortest parth etc..)
  • Seamless integration with Ruby on Rails.
  • ACID Transaction with rollbacks support.

You can find other ways to use Ruby to work with Neo4j here.

klint finley