java rrd 读取_RRD插入值的计算方式

b99c472bcf4878625ac138d19dbb5140.gif

正常情况:

设:正常每5秒更新一次,HB=10,分别在第1个5秒时更新值1,第2个5秒时更新值2……

这样每次PDP都有值:

887457305: 1.0000000000e+00

887457310: 2.0000000000e+00

887457315: 3.0000000000e+00

887457320: 4.0000000000e+00

887457325: 5.0000000000e+00

887457330: 6.0000000000e+00

887457335: 7.0000000000e+00

887457340: 8.0000000000e+00

设:第2、3次更新没有到来,4来时,距上一次更新已经过去15秒>HB,直接将第2、3、4次的PDP置为无效:

(这时就算在3和4之间再有值被插入结果也是一样,这是因为插入的值都将使HB超时,3值都将无效,同时此值也会被抛弃,不会影响4值的计算)

887457305: 1.0000000000e+00

887457310: nan

887457315: nan

887457320: nan

887457325: 5.0000000000e+00

887457330: 6.0000000000e+00

887457335: 7.0000000000e+00

887457340: 8.0000000000e+00

设:4值晚一秒到来,即21秒,另,4和5之间有多个值:24秒的2,25秒的5(如小图):

它是按照权重计算的:4*1/5 + 2*3/5 + 5*1/5 = 3

887457305: 1.0000000000e+00

887457310: nan

887457315: nan

887457320: nan

887457325: 3.0000000000e+00

887457330: 6.0000000000e+00

887457335: 7.0000000000e+00

887457340: 8.0000000000e+00

程序如下:

#!/bin/bash

rm -f ./1.rrd

ep="Jan 1, 1970 UTC"

start=`date -d "$ep+887457300 seconds" +%s`

echo $start

# create

rrdtool create ./1.rrd "

--start `expr $start` --step 5 "

DS:t1:GAUGE:10:U:U "

RRA:AVERAGE:0.5:1:43200

# add data

rrdtool update ./1.rrd `expr $start + 5`:1

#rrdtool update ./1.rrd `expr $start + 10`:2

rrdtool update ./1.rrd `expr $start + 18`:3

rrdtool update ./1.rrd `expr $start + 21`:4

rrdtool update ./1.rrd `expr $start + 2`:2

rrdtool update ./1.rrd `expr $start + 25`:5

rrdtool update ./1.rrd `expr $start + 30`:6

rrdtool update ./1.rrd `expr $start + 35`:7

rrdtool update ./1.rrd `expr $start + 40`:8

echo "***begin fetch***"

s2=0

rrdtool fetch ./1.rrd AVERAGE "

-r 5 --start `expr $start + $s2` --end `expr $start + $s2 + 60`

有兴趣可以访问下我的生活博客:qqmovie.qzone.com

posted on 2008-09-17 21:15 我爱佳娃 阅读(663) 评论(0)  编辑  收藏 所属分类: 工具使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值