License model of GDS

We are discussing license model of Neo4j with sales team. One comment came was that GDS is separately licensed component.

As far as the developer edition is concerned, we are able to simply install the plugin and proceed.

Has anybody used GDS in production? Is it licensed version?

There is an enterprise and a community edition of GDS. The community edition is free and available on our download center (or desktop, or github); Enterprise edition is licensed separately.

GDS community edition has all the algorithms, but has a four core limitation for calculations, which has significant impacts on performance for very large data sets (there are a few other differentiators, like RBAC integration and the availability of customer support). Here's the section of our docs that covers it:

GDS uses the same GPL v3 license as the core database, as well.


Is it possible to use Neo4j enterprise with GDS community edition? We don't have a big dataset, and the acquired license has only support for 4 cores

Yes, you can run GDS community edition on a Neo4j enterprise database (although we do not recommend running GDS on the leader of a cluster).

The primary differences will be:

  • CE is limited to a max of 4 cores for computations
  • CE does not respect RBAC in your Neo4j EE database
  • Enterprise Memory Compression is not available (shouldn't be a problem with small data sets)
  • Model catalog limited to 3 models, no persistence / publishing capabilities,
  • No support from the Neo4j customer support team for CE users

You'll still have access to all the algorithms, and should be fine for a small data set.

1 Like

Thank you Alicia! Great, seems like we can try with CE and see if it can give us what we want.
Just another question by "CE does not respect RBAC..." do you mean that any user can access a graph saved in the graph catalog in the session and that any user can access all of the three models that could be saved, even if this users have different access permissions?

For RBAC, it's primarily that:

  • GDS won't be aware of fine grained access control on data. So if you have a user who's role does not permit them to view a node label, they would still be able to load it into the in-memory graph and write to it via GDS
  • You won't have access to the admin role for interacting with / dropping other users graphs, but you should still see that in-memory graphs are bound to specific users.
  • You won't have the admin role for interacting with other user's trained models - but you also aren't able to persist models, so it becomes less important.
1 Like