[rrd-users] Re: Interpolation with the 'LAST' CF

Alex van den Bogaerdt alex at ergens.op.het.net
Tue Mar 11 13:15:44 MET 2003

On Tue, Mar 11, 2003 at 11:47:29AM -0000, Darren Kelly wrote:

> I'm having a problem understanding the LAST CF.

> If I'm using 'LAST' then, for any given interval, I'm interested in the last
> number recorded. Why interpolate multiple data points together? If we get
> two data points in the same interval, shouldn't we just discard the earlier
> data point? Is that not the very definition of the LAST CF?

RRDtool doesn't work with random intervals.  It will work with rates in
normalized intervals.

Step 1:  Compute a rate.
Step 2:  Normalize this rate.
Step 3:  Store this rate in an RRA, using a CF.

LAST (or any other [C]onsolidation [F]unction) doesn't work with values.
They work with rates.  Note the word "consolidation".  It comes to
play when any number of PDPs are used to build a CDP.

What you're looking for is something that is active while building
a PDP.  By design this isn't something that RRDtool does.  You can
have a front-end that performs this task; RRDtool is not a front-end.

This being said, you can have what you ask, even using RRDtool.  The
trick is to get your numbers unmodified into the "step three" part.
Simple: have a step size of just one second.  "--step 1".  This means
each normalized rate is valid during just one second.  Take 300 of
these intervals together and use that to build one CDP, it will take
the last known rate and store this into the RRA.

HOWEVER, look at this:

time 12:01  update  100
time 12:04  update  125
time 12:06  update  150

What is the last known rate inbetween the interval from 12:00 to 12:05 ?

At 12:04 RRDtool will know the last to be 125.  At 12:05 RRDtool isn't
even activated.  At 12:06 you enter rate 150 into RRDtool and provided
that "heartbeat" allows for this, the rate you enter (150) will be valid
from 12:04 to 12:06.  This means the last known rate from 12:00 to 12:05
will become 150 and NOT 125.

Unless you enter something at exactly 12:05, RRDtool will not remember
125 as the last rate entered.  If you can't update at 12:05, you can't
have what you want.

You don't have to give the command at 12:05 by the way.  You can execute
the command at, say, 12:06 yet tell RRDtool the rate was 125 at 12:05.
This is a front-end telling RRDtool what to do.

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.


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
WebAdmin    http://www.ee.ethz.ch/~slist/lsg2.cgi

More information about the rrd-users mailing list