timesplicedb
timesplicedb copied to clipboard
Fast storage engine for time series data
timesplicedb is a storage engine for timeseries data
It is similar to rrdtool in that, but with some key differences:
-
Never throw away data
-
Never mangle data on insert
Instead it stores all data at the resolution you specified when you created the file. Then you can request ranges and apply aggregation functions on them on the fly. Retrieval of a range is O(1), aggregation of a range is O(n) where n is the requested objects. Insertion is O(1).
On my macbook pro, with a full year worth of data it takes around 3 ms to aggregate it into any given number of buckets.
To pick up a random hour and aggregate it into 10 minute chunks takes less than 0.1 ms
WARNING
None of the aggregation functions have been tested extensively, getting floating point exceptions and bad data back is still very possible
NOTE
$ cd timesplicedb $ aclocal && autoreconf -i && autoconf && automake -a $ ./configure && make $ sudo make install
I hange out on freenode #timesplicedb