Aura Graph Analytics
Aura Graph Analytics is an on-demand ephemeral compute environment for running graph data science workloads.
Aura Graph Analytics is based on sessions. Each session is a standalone Neo4j Aura compute environment that is created when needed and deleted when no longer useful[1], all without any instance management operations. You only need to have Aura API credentials ready before you can start using sessions.
Depending on where your data is, you can use three types of session:
-
Attached: when the data source is a Neo4j AuraDB instance.
-
Self-managed: when the data source is a self-managed Neo4j DBMS.
-
Standalone: when the data source is not based on Neo4j.
Workflow
The typical workflow with Aura Graph Analytics is:
-
Create a session.
-
Load your data into a session via a remote projection (similar to a standard Cypher projection).
-
Run graph algorithms or train machine learning models on the data.
-
Write the results back to the original data source using remote write-back (for attached and self-managed sessions) or a custom method (for standalone sessions).
-
Delete the session.
You can create and use sessions with the Cypher API (a collection of Cypher procedures shown in the Quickstart and, more in detail, in the Cypher API page) or with the Python client (see the overview and the tutorials on attached, self-managed, and standalone sessions).
The Cypher API is available only for sessions attached to AuraDB instances in the Professional, Business Critical, or Virtual Dedicated Cloud plans. Depending on which plan is used, different limitations apply. See Graph analytics in Aura for a comparison. |
Implicit sessions
If you use the Cypher API, you can skip the first and last step by creating a session automatically with the first remote projection.
In this case, the session is deleted when the projected graph is dropped. If additional graphs are projected into the same session, for example via graph filtering, the session is deleted only after all graphs are dropped.
Implicit sessions can still be listed and dropped via the corresponding session management procedures.
Configuration
Session size
When creating a session (either explicitly or via a remote graph projection), you must set the memory
parameter to specify the maximum amount of memory allocated to the process.
A larger size means faster runtime and the ability to process larger volumes of data, but also increased cost.
The supported values are 2GB
, 4GB
, 8GB
, 16GB
, 24GB
, 32GB
, 48GB
, 64GB
, 96GB
, 128GB
, 192GB
, 256GB
, 384GB
, and 512GB
.
The session maximum size can be configured for your whole Aura organization. Check with your organization administrator what your maximum size is. |
Session expiration
When creating a session (either explicitly or via a remote graph projection), you can set an optional ttl
parameter to specify how quickly an inactive session will expire.
The default value for ttl
is 1 hour and the maximum allowed value is 7 days.
An expired session cannot be used to run workloads, does not incur any cost, and will be deleted automatically after 7 days. It can also be deleted through the Aura Console UI.