Skip to content
andreasronge edited this page Apr 27, 2012 · 64 revisions

Neo4j.rb is a JRuby wrapper for the Neo4j graph database.

Why ?

  • Whiteboard friendly – you use the language of graph (node, properties and relationship) to describe your domain as you already do on the whiteboard.
  • Seamless integration with Ruby on Rails:
    • Example: rails new myapp -m http://andreasronge.github.com/neo4j/rails.rb
  • 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 or Cypher DSL
    • 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..)
  • ACID Transaction with rollbacks support.