Installation

The Neo4j Graph Data Science (GDS) library is delivered as a plugin to the Neo4j Graph Database. The plugin needs to be installed into the database and configured.

GDS Sessions is the new fully managed, on-demand analytics-as-a-service offering in Neo4j Aura.

Neo4j Data Science Sandbox is a free, cloud-based instance of Neo4j with GDS Community Edition preinstalled.

Neo4j AuraDS is the fully managed version of Neo4j GDS Enterprise Edition which does not require any installation.

Installation methods

You can install the GDS library in different ways depending on your Neo4j deployment.

  • If you are new to Neo4j, a convenient option to get started is to install the Neo4j Desktop application first. On Neo4j Desktop you can install the GDS library directly from the UI.

  • If you use any edition of the Neo4j Server (Community or Enterprise), you need to install the GDS library manually as explained in the Neo4j Server section.

  • If you run Neo4j in a Docker container, you need to configure the GDS library as a Neo4j Docker plugin.

  • If you run Neo4j in a cluster, you can follow the same instructions for the Neo4j Server with some additional considerations.

  • If you run Neo4j in a Kubernetes cluster, you can add GDS to the Neo4j Helm chart deployments.

GDS Enterprise Edition

The Enterprise Edition (EE) of the library requires a license key as well. You can find more details on requesting and configuring a license key in the GDS Enterprise Edition section.

GDS EE includes Apache Arrow for advanced graph import and export capabilities. Arrow can be enabled and configured as detailed in the Apache Arrow guide.

Verifying the installation

To verify your installation, run the gds.version() function in the Neo4j Browser:

RETURN gds.version();

To list all available procedures, call the gds.list() procedure:

CALL gds.list();

If you have installed GDS EE, call the gds.isLicensed() function and check that the returned value is true:

RETURN gds.isLicensed();

For more details, you can call the gds.license.state() procedure:

CALL gds.license.state();

Additional configuration

In order to make use of certain features of the GDS library, additional configuration may be necessary. For example, exporting graphs to CSV files requires the configuration parameter gds.export.location to be set to the folder in which exported graphs are to be stored.

You can find the list of all the configuration options here. Refer to the installation methods for details on how to edit a Neo4j database configuration depending on the Neo4j deployment.

Graph Data Science on MacOS

If you are running MacOS (x86 or ARM), it is currently required to add the following configuration entry to neo4j.conf:

server.jvm.additional=-Djol.skipHotspotSAAttach=true