2
votes

Hi since I'm fairly new to ArangoDB I have a couple of question regarding clustering and replications. It seems that the documentation is not really clear on those topics:

  1. What is the purpose of having a cluster in ArangoDB since the replication is not enabled but default and thus the failover would not make any sense there. Is the idea to have a shared data store all instances in the cluster should have access to?

  2. Since the replication model can be either sync or async what about the replication factor on a collection. So the replication needs to configured on each database individually, and the idea to set the replication factor on the collection level? My understanding is that changing the replication factor on the collection level would make the replication to be sync, but what if the database replication is in an async mode?

1

1 Answers

4
votes
  1. Really? https://www.arangodb.com/why-arangodb/cluster. The idea is that you may gain both performance through distributing work load on coordinators, distributing your huge database over multiple db servers and gain fail-safety and resilience towards hardware failures and networking issues. You may even go on to replicated entire clusters in different data centers.
  2. The replication factor is not defined over the database but on the collection level. When you deploy a collection in a clustered database you define replication factor and number of shards as optional parameters. All system collections are deployed with replication factor 2.