Neo4j Wiki から

This is a component that offers implementations of common graph algorithms on top of Neo4j. It is mostly focused around finding paths, like finding the shortest path between two nodes, but it also contains a few different centrality measures, like betweenness centrality for nodes. The initial implementation was part of a master thesis project, so for a more advanced theoretical background the report should be available.


[edit] Including it into your project

You need to make sure that the jar file for this component is in your classpath (just like Neo4j). The easiest way to achieve this is to use Maven. Just add this to your pom.xml:


...and it should be available, ready to use!

[edit] Overview

There exists a number of algorithms and more are being added. To get a complete overview including the latest changes and documentation of algorithm complexities please see the API. Also, if we don't have the algorithm you would like, feel free to contact us.

[edit] Path finding algorithms

The Neo4j Graph Algorithms package contains the following algorithms for finding paths:

[edit] Centrality algorithms and graph measures

In this family of algorithms we have:

Further, some of these might be done in parallel.

All of these compute measures of centrality, computing a value for each node. The exceptions are diameter and radius, since they give one value/measure for an entire network.

[edit] Other algorithms

There also exists an algorithm to find all simple paths between two nodes.

Neo4j のサイト