ArangoDB Manual Pages

Administrating ArangoDB



Mostly Memory/Durability

Database documents are stored in memory-mapped files. Per default, these memory-mapped files are synced frequently - storing all documents securely at once (durability).

AppendOnly/MVCC

Instead of overwriting existing documents, a completely new version of the document is generated. The two benefits are:

  • Objects can be stored coherently and compactly in the main memory.
  • Objects are preserved-isolated writing and reading transactions allow accessing these objects for parallel operations.

The system collects obsolete versions as garbage, recognizing them as forsaken. Garbage collection is asynchronous and runs parallel to other processes.

Configuration


collection.properties()
Returns an object containing all collection properties.

  • waitForSync: If true creating a document will only return after the data was synced to disk.
  • journalSize : The size of the journal in bytes.

collection.properties(properties)
Changes the collection properties. properties must be a object with one or more of the following attribute(s):

  • waitForSync: If true creating a document will only return after the data was synced to disk.
  • journalSize : The size of the journal in bytes.

Note that it is not possible to change the journal size after the journal or datafile has been created. Changing this parameter will only effect newly created journals. Also note that you cannot lower the journal size to less then size of the largest document already stored in the collection.

Examples

Read all properties

arango> db.examples.properties()
{ "waitForSync" : false, "journalSize" : 33554432 }

Change a property

arango> db.examples.properties({ waitForSync : false })
{ "waitForSync" : false, "journalSize" : 33554432 }