Starting with the just released version 2.0, the free database ArangoDB has become a distributed database. The sharding option newly implemented in this release allows horizontal distribution of big data within a server cluster, and hence complements the replication features of the previous release.
The database administrator configures a cluster of servers and organises the distribution of the application documents via the integrated web interface.
This achieves two different improvements: Firstly, one can store more data than would have been possible on a single server, and secondly, one can distribute the read and write load among multiple machines. The actual distribution of the individual documents to particular servers works via a flexible scheme. The administrator is free to either let ArangoDB do the distribution by itself, or to select one or more relevant attributes – for example, a web shop's order data can be distributed between the servers depending on the client name.
"Only very few applications – at their current stage of expansion – need sharding," explains Martin Schönert, Lead Architect at ArangoDB. Nevertheless, popular demand for sharding is huge. Every company wants its application architecture to withstand becoming the internet's next mega success.
ArangoDB belongs to an elite group of alternative databases which are able to deal with graphs as well as with documents. Queries are carried out via an SQL-like query language or via a REST interface. The REST interface is extensible by Javascript code, thus providing lean, semantically speaking APIs for applications.
ArangoDB is available for download for Mac OS X, Windows, multiple Linux variations, and as source code.