Erwin
Erwin

Reputation: 111

Difference between graph database: Neo4j & AllegroGraph

What is the difference between these two graph databases: Neo4j and AllegroGraph? Which is better for Java Web programming?

Upvotes: 6

Views: 7026

Answers (5)

Matt Browne
Matt Browne

Reputation: 12419

One other consideration is the licenses. AllegroGraph's free edition can be used as long as you have fewer than 50 million triples. See http://www.franz.com/agraph/allegrograph/ag_commercial_edition.lhtml

Neo4j is free as long as your project uses the community edition; only if you modify the Neo4j source you must open-source the modifications. The basic license terms can be found on their home page: http://neo4j.org/

Upvotes: 6

curtosis
curtosis

Reputation: 69

In addition to SPARQL, AllegoGraph allows you to write Prolog rules and queries. For complex query logic, it's much more expressive than SPARQL.

There are some examples in the Java client tutorial: http://www.franz.com/agraph/support/documentation/v4/java-tutorial/java-tutorial-40.html

Upvotes: 1

David
David

Reputation: 5214

I chose AllegroGraph over Neo4j because of its support for SPARQL queries. It seemed to me that the Neo4j approach of traversing a graph is less tidy, especially for more complex retrieval operations.

...and no, I have no affiliation with either organisation.

Upvotes: 6

Mike H
Mike H

Reputation: 100

AllegroGraph has a java client library which supports 2 standard java semantic API's: Jena and Sesame. The client source is EPL on github. AG supports sparql, transactions, reasoning, geospatial, temporal, and graph analysis. There are no extra features specifically for web apps, but it would fit into any framework as a library.

(I work for Franz.)

Upvotes: 5

nawroth
nawroth

Reputation: 4361

If you have no reason to choose RDF + SPARQL (which both products support), Neo4j provides a clean Java API for manipulating a property graph (nodes + relationships + properties on both). For web applications, I wrote up an example using Spring Framework, which also exists in a simplified version as a workshop.

Disclaimer: Obviously I'm on the Neo4j team, and I don't have any in-depth knowledge regarding AllegroGraph.

Upvotes: 8

Related Questions