Scalability

ArangoDB is a distributed database supporting multiple data models,and can thus be scaled horizontally, that is, by using many servers,typically based on commodity hardware. This approach not only delivers performance as well as capacity improvements, but also achievesresilience by means of replication and automatic fail-over. Furthermore,one can build systems that scale their capacity dynamically up and down automatically according to demand.

One can also scale ArangoDB vertically, that is, by usingever larger servers. There is no built in limitation in ArangoDB,for example, the server will automatically use more threads ifmore CPUs are present.

However, scaling vertically has the disadvantage that thecosts grow faster than linear with the size of the server, andnone of the resilience and dynamical capabilities can be achieved in this way.

In this chapter we explain the distributed architecture of ArangoDB anddiscuss its scalability features and limitations: