Akumuli is a numeric time-series database. The word "akumuli" can be translated from esperanto as "accumulate".
Most open source projects focus on query language and things useful for web-analytics, but they ignore some key characteristics of time series data:
- High write throughput (millions of data-points per second)
- Very late writes can be dropped
- Numeric time-series can be compressed very efficiently
- Periodic time-series can be compressed very efficiently
- Compression is crucial for time-series storage!
- Implements specialized storage engine for time-series data
- Memory mapped and x64 only
- Uses constant amount of disk space (like RRD-tool)
- Crash recovery
- Very high write throughput (about 1M writes per second on single machine)
- Allows unordered writes
- Compressed (specialized compression algorithms for different data elements - timestamps, ids, values)
- Easy to use server software (based on Redis protocol)
- Run
prerequisites.sh
. It will try to do the best thing.
In case automatic script didn't work:
-
Boost:
sudo apt-get install libboost-dev libboost-system-dev libboost-thread-dev libboost-filesystem-dev libboost-test-dev libboost-coroutine-dev libboost-context-dev
-
APR:
`sudo apt-get install libapr1-dev libaprutil1-dev
-
Cmake:
sudo apt-get install cmake
cmake .
make -j