max19931 / timesplicedb

Fast storage engine for time series data

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

About

Fast storage engine for time series data

License:Other


Languages

Language:JavaScript 53.6%Language:C 24.4%Language:Perl 14.2%Language:C++ 2.3%Language:XS 2.3%Language:HTML 2.2%Language:M4 0.4%Language:Makefile 0.4%Language:CSS 0.1%