[rrd-users] CFúX - How does it consolidate?
scott.list
scott.list at mlec.net
Mon Jul 29 23:26:50 MEST 2002
Greetings:
Can someone offer some help or insight on how the MAX CF does it's
thing at a more detailed level. I've listed below the pertinant info
and my understandings of each where applicable:
My sample RRD has step of 60 seconds. It gets fed data in the
neighborhood of 60 seconds (+- 2 sec). Heartbeat of 180 secs and is
not missing any data in this example - no unknown datapoints.
DS type is GAUGE
RRA is set up with
consolidation function CF = MAX
steps = 5 (consolidated data point built from 5 primary data points
(5 samples, ~= 5 minutes)).
In a typical set of primary data fed at very close to 60 seconds:
i.e.:
121
121
124
125
128
rrdtool fetch shows for that consolidated data point a value of
1027974000: 1.2648333333e+02
(rounded and graphed at 126)
I get a graphed value of 126 (not the MAX of the set which was 128 in
this case).
I understand how an AVG CF needs to be interpolated to fit the exact
time sequences of the actual primary datapoints in the rrd, but for
MAX, how does rrd do the interpolation? How does it look at the set
of data fed and come up with 126.483333?
In the example above, is rrdtool assuming there is a linear decrease
of the value between 128 and 125 during the times those 2 data were
fed-in and determined that it was 126.4 at the exact time of the
actual primary data point? That would have to put the 128 WAY early
(30sec) and I'm pretty sure that's not happening.
It seems to me that for the MAX consolodation, rrdtool should find the
max value within the two actual datapoints and use them as is, with no
interpolation since it is a MAX we (I) want.
For simplicity, let say time itself just started and the rrd interval
was between the 2 timestamps of 1000 and 1300; a 300 second interval.
At time 1002 we add 121 (this was a "late" entry for previous
interval)
at 1059 we add 121
at 1122 we add 124
at 1179 we add 125
at 1240 we add 126
at 1301 we add 128
I assume rrd is fitting the 1301 value back to 1300 using some
interpolation. But how exactly?
Thanks very much for the time to help/explain.
Scott
--
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