[rrd-users] Question about RRDTool ..

Simon Hobson linux at thehobsons.co.uk
Thu Mar 20 13:03:29 CET 2008

Jean-Yves Avenard wrote:

>I'm rather disappointed with the current behaviour.
>While doing normalisation makes sense if you want to collect data such
>as traffic on an interface , when collecting discrete value it doesn't
>make sense.
>I would have preferred if it consider the data entered to be the value
>for the interval define by the period. And if you try to retrieve the
>value within an interval it gives you the exact same data as it was

But rrd is designed for a very specific function - to store 
rates<period>. It can be made to "sort of store discrete values" by 
managing your data to avoid normalisation, but that is not what it's 
designed to do.

If all you want is to store a set of numbers, then other sorts of 
databases may be a better choice.

>  >  weeks, and low res data for a year or two. In this case, you are
>>   storing your highest resolution data for a full year - so there is
>>   little point storing the other rras.
>Ok, my understanding was at follow (and that's also what the RRD
>tutorials were doing: keep the full data for a long time).
>1-I keep all the data, because this is precisely what I want. And RRD
>is much easier to setup than a mysql database
>2-the various RRAs are used to pre-calculate the most common data I'm
>going to use. As soon as I enter a new data, the various RRAs are
>calculated to speed up the retrieval at a later stage.
>>   You do NOT have to store the 3 hours data for the full year in order
>>   to have the other consolidations available.
>I *DO* want to store all the data :)
>but not to do the other consolidations performed by RRD... I just want
>to keep them because I like keeping the full history.
>>   The only gain you get here is that by carefully selecting your
>>   graphing periods/sizes, you can avoid query-time consolidation of the
>>   data and improve graphing speeds. Since you aren't even specifying
>>   start and end times, you certainly aren't taking advantage of this
>>   optimisation.
>I see. So it's only used to save time when retrieving the data or
>drawing graph....
>Well, my original aim was to keep record of all the data for a full year.
>I guess RRD is slightly overkill for what I want to do.

It's probably the wrong tool for your job !

 From memory, the tutorials don't keep a years worth of hi-res data. 
At work I have an rrd with 510 data series, each with average and max 
consolidations. To keep 5 minute samples of all that lot would 
require a huge database, take a lot of porcessing to graph, and 
wouldn't be very useful to us. We only keep 5 minute data for 2 days, 
then 1/2 hour data for 14 days, 2 hour data for 60 days, and 24 hour 
data for 2 years. The graphs are carefully designed so that there is 
no conversion required from stored datapoints to pixels - ie it's 
"one sample to one pixel" which minimises the processing required to 
generate graphs.

The upside is that graphing is quick, the storage requirements are 
huge, and it covers 99.9% of what we want. The downside is that if an 
event happens, then we only have 2 days before the detail data is 
gone - but then by that time it's history and we wouldn't normally be 

More information about the rrd-users mailing list