Amazon Neptune
User Guide (API Version 2017-11-29)

Replication with Amazon Neptune

There are several replication options with Neptune. The following sections explain how and when to choose each technique.

Neptune Replicas

Neptune Replicas are independent endpoints in a Neptune DB cluster, best used for scaling read operations and increasing availability. Up to 15 Neptune Replicas can be distributed across the Availability Zones that a DB cluster spans within an AWS Region. The DB cluster volume is made up of multiple copies of the data for the DB cluster. However, the data in the cluster volume is represented as a single, logical volume to the primary instance and to Neptune Replicas in the DB cluster.

As a result, all Neptune Replicas return the same data for query results with minimal replica lag—usually much less than 100 milliseconds after the primary instance has written an update. Replica lag varies depending on the rate of database change. That is, during periods where a large amount of write operations occur for the database, you might see an increase in replica lag.

Neptune Replicas work well for read scaling because they are fully dedicated to read operations on your cluster volume. Write operations are managed by the primary instance. Because the cluster volume is shared among all DB instances in your DB cluster, minimal additional work is required to replicate a copy of the data for each Neptune Replica.

To increase availability, you can use Neptune Replicas as failover targets. That is, if the primary instance fails, a Neptune Replica is promoted to the primary instance. There is a brief interruption during which read and write requests made to the primary instance fail with an exception, and the Neptune Replicas are rebooted. If your Neptune DB cluster doesn't include any Neptune Replicas, then your DB cluster will be unavailable for the duration it takes your DB instance to recover from the failure event. However, promoting a Neptune Replica is much faster than recreating the primary instance. For high-availability scenarios, we recommend that you create one or more Neptune Replicas. These should be of the same DB instance class as the primary instance and in different Availability Zones for your Neptune DB cluster. For more information on Neptune Replicas as failover targets, see Fault Tolerance for a Neptune DB Cluster.

Note

You can't create an encrypted Neptune Replica for an unencrypted Neptune DB cluster. You can't create an unencrypted Neptune Replica for an encrypted Neptune DB cluster.

For details on how to create a Neptune Replica, see Creating a Neptune Replica Using the Console.

On this page: