# [rrd-users] Re: Major confusion on RRAs

Alex van den Bogaerdt alex at ergens.op.het.net
Sat Jan 4 17:59:20 MET 2003

```On Sat, Jan 04, 2003 at 12:44:05AM -0600, Leo S. wrote:
>
> Since I think I've somewhat figured it out, but still have questions, let me
> explain what I know first by example.
> Ok, let's say you have an rrd with a 300 second interval that starts at
> 1041573600 and ends at 1041660000,
> which makes a full 24 hours. Then let's say this is the data as follows(this
> is kinda long, sorry):
>
> 1041573600:0
[snip:  for (i=1;i<288;i++) { time=1041573900+i*300;val=i; }
> 1041660000:288

> We'll use the RRA's that were in rrdtutorial:
>
> RRA:AVERAGE:0.5:1:600
> RRA:AVERAGE:0.5:6:700
> RRA:AVERAGE:0.5:24:775
> RRA:AVERAGE:0.5:288:797
> RRA:MAX:0.5:1:600
> RRA:MAX:0.5:6:700
> RRA:MAX:0.5:24:775
> RRA:MAX:0.5:288:797
>
> I'm assuming "RRA:AVERAGE:0.5:1:600 (2 days, 2 hours)" will keep 600 (CDPs),
> 300 second samples, but 24 hours only gives us 288 samples, correct?

It does keep 600 CDPs (entries) of 1 PDP (normalized sample) per CDP.
600 of those 1*300 second intervals results in 600*300=180000 seconds
worth of data.  180000 seconds = 2*86400+2*3600 = 2 days + 2 hours.

> The RRA "RRA:AVERAGE:0.5:6:700 (~12.5 days)" will keep 700 (CDPs), 1500
> second samples, which would give us 57.6 samples in 24 hours, right, right?

it reads 6, not 5.  6*300=1800 not 1500.  48 CDPs (not samples) per 24 hours.

700 CDPs of 6 PDPs each.  Each PDP is 300 seconds -> 700*6*300 = 1260000
seconds -> 14 days 14 hours.  12 days 12 hours is the amount of time in
600 rows (MRTG compatibility) the other 100 rows are there because MRTG
and RRDtool work differently.  MRTG uses both the "daily" and the "weekly"
part of the log file whereas RRDtool needs to get its data from one RRA.

> 1041573600:0 --
> 1041573900:1   |
> 1041574200:2   | - PDPs (?)
> 1041574500:3   |
> 1041574800:4 --

Almost.  0,1,2,3,4 is only 5 PDPs.  You need 6.

>
> (0+1+2+3+4)/5 = 2, so one "RRA:AVERAGE:0.5:6:700" CDP would be 2? Correct?

After correcting the previous error you would get (0+1+2+3+4+5)/6=2.5

Also (and *I* didn't check if this is the case or not) RRDtool won't
take some random PDPs together to build a CDP.  It will build the CDP
such that the end time of the last PDP equals the end time of the CDP
which in itself will be on a boundary such that the time is an integer
multiple of the number of seconds per CDP.

In this case: <end_time> =  <step_size> * <number_of_PDPs_per_CDP> * n
where <step_size> == 300 and <number_of_PDPs_per_CDP> is 6.

> The RRA "RRA:AVERAGE:0.5:24:775" will keep 775 (CDPs), 7200 second samples,
> which would give us 12 samples in 24 hours?!

>  Time for some questions...
>   1: Do the RRAs use data from one another, as in, will the RRA
> RRA:AVERAGE:0.5:24:775 grab CDPs from RRA:AVERAGE:0.5:288:797
>       to come up with it's CDPs?

>   2: Why not just use one RRA for the whole year. Ex:
> RRA:AVERAGE:0.5:1:105120, I understand that it would cause more
>       overhead and a larger RRD, but wouldn't it be more accurate?

Your choice, it will result in a larger RRD and no, it won't be
more accurate unless you don't keep MIN and MAX but do ask for it.

>   3: For the CF MAX, what would be the point of having multiple RRAs, when
> there should be only one MAX in the end? Is that
>       to save overhead and space?

?????

Do you think the maximum for "00:00 to 01:00" should be the same as
the maximum for "01:00 to 02:00" just because there's an RRA with a
resolution of 24 hours?  If so: why?  If not: why T.F. do you think
what you think?

>   4: If I have the RRAs RRA:AVERAGE:0.5:1:228 and RRA:AVERAGE:5:576 and I
> specify more then 24 hours to graph, will it use
>       the first or second RRA? what if I graph more then 10 days, will part
> of the graph be blank?

4,5,6,7,8:

Archives...  Not the round robin archives, the mailing list archives.

>   9: Which brings me to my final question, is there any way at all to make
> sure the updates are done every 5 minutes without
>       updating your time against an atomic clock every 2 seconds? :P

Is there any way to make sure, period?  And why would you want to make sure?

HTH
ALex
--
Much of what looks like rudeness in hacker circles is not intended to give
offence. Rather, it's the product of the direct, cut-through-the-bullshit
communications style that is natural to people who are more concerned about
solving problems than making others feel warm and fuzzy.

http://www.tuxedo.org/~esr/faqs/smart-questions.html

--
Unsubscribe mailto:rrd-users-request at list.ee.ethz.ch?subject=unsubscribe
Help        mailto:rrd-users-request at list.ee.ethz.ch?subject=help
Archive     http://www.ee.ethz.ch/~slist/rrd-users