Embedded, disk-based, fully transactional Java persistence engine that stores data structures in graphs rather than in tables.
It's "white-board" friendly.
"In many cases, if you can formulate what you're working on as a graph problem, you're (at least) halfway to a solution."
- Magnus Lie Hetland
Source: Python Algorithms: Mastering Basic Algorithms in the Python Language
- Released February 2010
- Rod Johnson (of Spring fame) on Board of Directors
select distinct uf3.* from t_user_friend uf1 inner join t_user_friend uf2 on uf1.user_1 = uf2.user_2 inner join t_user_friend uf3 on uf2.user_1 = uf3.user_2 where uf1.user_1 = ?
- Enterprise
- Community
- Embedded
Community Edition:
- Linux (Debian based):
apt-get install neo4j
- OSX:
brew install neo4j
- Windows: ?
- Java code
- REST
- Cypher (more SQL-like)
- Gremlin
$curl http://localhost:7474/db/data/node/18957/properties/name
"Brad Pitt"
Graphical traversal language written in Groovy. It's declarative, domain-specific language (like SQL).
Degrees to Kevin Bacon
- Seven Databases in Seven Weeks
- Neo4j In Action