The Neo4j Aura Cloud Service graph database is architected to provide 24x7 availability. Behind the scenes, Neo4j Aura runs a 3 node Causal Cluster graph database. Each aura node runs in its own container.
Therefore, when viewing the Aura database METRICS page, it shows the AVERAGE CPU Usage (%) for the 3 Causal Cluster nodes. Note that most access patterns, will translate to the 3 database nodes having similar CPU usage.
Aura instances are sized to have double the disk size compared to the allocated memory.
In reality, instances have at least 4x disk storage to memory to ensure enough disk capacity for loading large data dumps.
Neo4j Aura team monitors actual disk usage and has alarms set for certain thresholds. When necessary, the Neo4j Aura team will send alerts to customers who are about to use up all their database storage capacity.
Out Of Memory Errors
The above error is thrown when the JVM cannot allocate memory for an object, and no more memory could be made available by the garbage collector.
Most often, there are 2 methods to solve this problem:
- Use a larger AuraDB instance size. (use the resize function on the Aura Console)
- Put less workload on the AuraDB.
Neo4j databases run on the Java platform making memory usage more complex to understand. We suggest reading the article, Understanding memory consumption, which includes explanations of Operating System memory usage and Java Virtual Machine (JVM) memory usage.
Garbage Collection Time
Objects in Java are allocated in heap memory inside the JVM. Java’s garbage collector will go through the heap and mark objects that are in use by the JVM. Later, the garbage collector reclaims unmarked memory.
When Garbage Collection takes too long, that means the JVM memory size of AuraDB is not big enough to cope with the current workload and the database's performance will degrade.
Page Cache Evictions
This chart displays the number of times data in memory is being replaced. A spike can mean your workload is exceeding the database's available OS memory, and you may notice a degradation in performance or query execution errors. Consider resizing your instance upward to improve performance if this metric remains high.