Neo4j in the Cloud

From Neo4j Wiki
Jump to: navigation, search

Every Neo4j instance in itself is a non-distributed database. Clustering, High Availability and Online Backup are add-on components that manage distribution and consistency over several live or offline node spaces.

Contents

Hosting

Amazon (using EBS volumes)

In order to run Neo4j on an AMI, you should

  • install everything you need onto a base AMI, then make your own
  • mount a volume on your server onto some mount point, e.g. /mnt/vol1, then
  • format it with ext3 (ext4 has been found to have slower Disk IO)
    mkfs.ext3 /mnt/vol1
    ln -s /mnt/vol1 /home/neo/var

Now, there are two easy scenarios to get a graph onto the Volume:

Run Neo4j on the AMI itself and copy or use Online Backup to backup the running graph onto the external disk.

This might run fastest (should be tested in your setup) but will result in a setup where the graph may be erased upon restarting the server, as there is no guarantee for volatile data on the AMI to be preserved. You will need some means of starting Neo4j with the backed-up graph in that situation.

Run on the external volume by pointing out the mounted and symlinked path in Neo4j

new EmbeddedGraphDatabase("/home/neo/var")

Then, of course, you would need to run backups etc as described above, but your graph will be preserved over different runs and restarts of your server.

Personal tools