Motivation
One of the major changes in ArangoDB 2.2 was the introduction of the
write-ahead log (abbreviated WAL).
The introduction of the WAL changed how documents are stored internally in
ArangoDB. A lot of things have been changed for it under the hood, and it has
been a lot of work to implement it.
During the implementation, we refactored some code parts and made them
considerably faster. From these changes we expected a positive effect on the
database performance. But due to the fact that shape information is now also
saved in the write-ahead log, there may also be some negative effect.
We developers were of course very interested in seeing the net effects, so
we ran some tests for a few use cases. We compared ArangoDB 2.1.2 (still without
the WAL) with ArangoDB 2.2.1 (with the WAL). The results are interesting.