Neptune Lab Mode - Amazon Neptune

Neptune Lab Mode

You can use Amazon Neptune lab mode to enable new features that are in the current Neptune engine release, but that aren't yet ready for production use and aren't enabled by default. This lets you try out these features in your development and test environments.


This feature is available starting with Release (2019-10-15).

Using Neptune Lab Mode

Use the neptune_lab_mode DB cluster parameter to enable or disable features. You do this by including (feature name)=enabled or (feature name)=disabled in the value of the neptune_lab_mode parameter in the DB Cluster Parameter group.

For example, in this engine release you might set the neptune_lab_mode parameter to Streams=disabled, ReadWriteConflictDetection=enabled.

For information about how to edit the DB cluster parameter group for your database, see Editing a Parameter Group. Note that you cannot edit the default DB cluster parameter group; if you are using the default group, you must create a new DB cluster parameter group before you can set the neptune_lab_mode parameter.


At present, if you supply the wrong lab-mode parameters or your request fails for another reason, you may not be notified of the failure. You should always verify that a lab-mode change request has succeeded by calling the status API as shown below:

curl -G https://your-neptune-endpoint:port/status

The status results include lab-mode information which will show whether or not the changes you requested were made:

{ "status" : "healthy", "startTime" : "Tue Oct 20 22:03:05 UTC 2020", "dbEngineVersion" : "", "role" : "writer", "gremlin" : {"version":"tinkerpop-3.4.1"}, "sparql" : {"version":"sparql-1.1"}, "labMode" : { "NeptuneML" : "disabled", "DFEQueryEngine" : "disabled", "ObjectIndex" : "disabled", "Streams" : "disabled", "ReadWriteConflictDetection" : "enabled" } }

The following features are currently accessed using lab mode:

Enabling Neptune ML

You can enable Neptune's experimental Neptune machine learning by setting NeptuneML=enabled in the neptune_lab_mode DB cluster parameter, or you can disable it by setting NeptuneML=disabled (the default).

Setting NeptuneML to enabled enables the query engine used by Neptune ML, and setting it to disabled enables the previous engine.

The Neptune DFE alternative query engine


This feature is available starting in Neptune engine release

You can enable the new experimental Neptune DFE engine by setting DFEQueryEngine=enabled in the neptune_lab_mode DB cluster parameter, or you can disable it by setting DFEQueryEngine=disabled (the default). You can also set DFEQueryEngine=viaQueryHint to indicate that the DFE engine will be enabled, but will only be used when the useDFE query hint is present and set to true.


When the DFE is enabled, DFE data statistics are also enabled.

The OSGP index

Neptune can now maintain a fourth index, namely the OSGP index, which is useful for data sets having a large number of predicates (see Enabling an OSGP Index).


This feature is available starting in Neptune engine release

You can enable an OSGP index in a new, empty Neptune DB cluster by setting ObjectIndex=enabled in the neptune_lab_mode DB cluster parameter. An OSGP index can only be enabled in a new, empty DB cluster.

By default, the OSGP index is disabled.


If you disable an enabled OSGP index by setting ObjectIndex=disabled after data has been added to the cluster, data will enter an inconsistent state. Rather than disable the index, move the data to a new DB cluster in which the OSGP index has not been enabled.

Formalized Transaction Semantics

Neptune has updated the formal semantics for concurrent transactions (see Transaction Semantics in Neptune).

Use ReadWriteConflictDetection as the name in the neptune_lab_mode parameter that enables or disables formalized transaction semantics.

By default, formalized transaction semantics are already enabled. If you want to revert to the earlier behavior, include ReadWriteConflictDetection=disabled in the value set for the DB Cluster neptune_lab_mode parameter.