Wednesday, June 30, 2010

Neo4j development news

The development of the Neo4j graph database speeds up more and more and it's time to track some of the news! This post will focus on some of the contributions from the core team, while I leave the wealth of contributions from other community members for a later post.

Videos

We've created a page containing videos. At the moment there's:

  • Robert Scoble interviewing Emil Eifrem
  • Getting started with Neo4j screencast
  • Getting started with Neoclipse screencast

Head over to watch the videos: neo4j.org/doc/video/

Screenshots

It's great fun to visualize graph data models, so the team collected some images on a web page. At the moment there are social networks, road networks, product/category hierarchies and some more examples. Please comment on what you'd like to see in there!

Take a look at the screenshots here: neo4j.org/doc/screenshots/

road network

Event feed and other feeds

To make it easier to keep track on upcoming Neo4j events, we've set up a feed (web version). This is intended for all Neo4j events, not only those initiated by the Neo4j team members. Just get in touch if you're going to do a Neo4j presentation/workshop/whatever.

While at it, we also created a few other feeds, found at: neo4j.org/community/feeds/. At the moment you'll find for example Neo4j questions and commits from contributing projects. Expect more feeds to be added there soon!

The new traversal framework

The new traversal framwork has been integrated into the kernel, and is ready to try out. The best starting point at the moment is the apidocs, but there's also some information on the wiki. You can read up on the mailing list discussions on this topic, and this thread too.

The new event framework

Neo4j is getting a new event framework as well, which is documented on the wiki and in the apidocs. There's been quite some mailing list discussions on this topic.

REST API news

General information on the REST API is found at the component site and in the wiki.

Monitoring: JMX support

Neo4j now has JMX support, so that you can connect to it using JConsole:

jconsole

It exposes for example cache sizes:

cache sizes

More information in the Monitoring and Deployment wiki page.

Graph algorithms

Design and performance of the graph-algo component has been improved. Read up on it on its component site.

The component contains implementations of common graph algoritms like shortest paths, all paths, all simple paths, Dijkstra and A* etc.

Indexing

You can now index array properties as well, where every item in the array will be indexed.

Configurable block size

In special cases it may be useful to create a Neo4j database with other block size settings than the defaults. Head over to the configuration wiki page for the details. Note that these settings can only be applied at database creation.