[rrd-developers] new features in RRDtool: add/delete DSs and RRAs in existing RRD base

Alex van den Bogaerdt alex at ergens.op.het.net
Sat May 10 11:54:41 CEST 2008

On Fri, May 09, 2008 at 07:25:45PM +0200, Tobias Oetiker wrote:
> Hi Bigunyak,
> the 'problem' is that the on-disk data format of rrdtool does not
> lend it sels to adding and removing data sources ... all that can
> be done sensibly is to reqrite the file in its new structure ...

Which will be faster than the dump-edit-restore procedure.
But who really needs that?

> another thing people often ask is to changeing the step size of an
> archive ... it would be an interesting task to write a rrdtool
> re-sampling mechanism which is able to alter the step size of an
> existing archive while keeping the data as intact as possible ...

Averages won't be a problem, but how to deal with minimum,maximum and last?
One thing's for sure: without the original input, any change will be
guesswork except for the special case where the new step size is a
whole integer times the old step size.

E.g. LAST:

Consider 300 seconds per interval, being changed into 200 seconds
per interval. Each time the rate was 0 for the larger part of the
interval, except at the end (0,0...0,1,1},{0,0...0,1,1} -> 1,1.
Result: 600 seconds rate 1, in two intervals.  The sensible thing
to do would to change this into 3 intervals of 200 seconds, also
with rate 1: 1,1 -> 1,1,1.

But, with the original input available, the sensible thing to do
would be to change this into two intervals with rate 0 and one
with rate 1: {0,..,0},{0,..,1,1,0,0...,0},{0,..,0,1,1} -> 0,0,1

E.g. MAX:

The same input as above would result in 1,1 being changed into 1,1,1
but with the original input available the result would be 0,1,1.

(0,0...0,1,1},{0,0...0,1,1} -> 1,1 -> 1,1,1.
{0,..,0},{0,..,1,1,0,0...,0},{0,..,0,1,1} -> 0,1,1

I think you would be opening a can of worms.

More information about the rrd-developers mailing list