Database Reference
In-Depth Information
Designed for scalability
In order to deal with the OLTP workload, Neo4j obviously needs to be able to
support critical scalability, high availability, and fault-tolerance requirements.
Creating clusters of database server instances that work together to achieve the
goals stated before typically solves this problem. Neo4j's Enterprise Edition,
therefore, features a clustering solution that has been proven to support even
the most challenging workloads.
Neo4j high availability architecture
As you can see from the preceding diagram, the Neo4j clustering solution is a
master-slave clustering solution. In a particular cluster, each server instance of
the cluster will perform the following steps:
• Hold the entire dataset of the database. All servers hold the same data
and therefore can respond to all query requests.
• Comply with a master-slave consistency scheme. This means that, in case
ofpotentialconlictingdatainthedatabase,the Master server instance will
decide what would be right data to keep and persist. If at some point, the
cluster would lose its master, the remaining cluster member instances would
run a master election algorithm (in Neo4j's case, based on Paxos) that allows
them to quickly choose a new master.
 
Search WWH ::




Custom Search