RRDtool绘图——数据定义问答

by:ysuncn(欢迎转载,请注明原创信息)


下边是rrdtool用于作图而给出的三种数据定义:

DEF:<vname>=<rrdfile>:<ds-name>:<CF>[:step=<step>][:start=<time>][:end=<time>][:reduce=<CF>]

    此命令从RRD文件中取出数据,虚拟名vname可以在脚本范围内使用。

    VDEF:vname=RPN expression

      VDEF命令根据RPN语句返回一个值和(或)时间,当你在另一个RPN中使用这个vname时,直接用值来代换。

      CDEF:vname=RPN expression

        CDEF命令在内存中创建一组新的数据,RPN指令用来构建数学公式,得到的vname可以象DEF定义的变量一样使用。

        问题主要针对DEF,后两个是构建于DEF定义的vname之上的。

        问:对于某个DS(变量)可能有不同时间粒度的多个档案,作图是RRDtool取哪一个呢?

        答:默认情况下,满足两个条件的RRA才能被选中:1、包含正确的DS(变量);2、RRA的 时间粒度(分辨率)合适。时间粒度可以用--step重置,默认数据的时间间隔是和作图的间隔一样,你可以通过修改起止时间来更改。如果数据的分辨率高于 图形的,数据进一步聚集,在DEF中定义的RRA的CF可以用来降低数据密度(:reduce=<CF>)。

        问:作图的起止时间和图片尺寸是不是随意定的?
         
        答:可以随意定,但要做出理想的图,还是有些讲究的。图片尺寸400×200指水平方向有400个象素,竖直方向200个象素,理想情况下图中每个象素点与RRA中的CDP一致,这样你可以根据CDP的时间粒度和图片水平象素来确定作图的时间跨度。 例如:你的RRD有个RRA,分辨率 是每个CDP 1800秒,你建的图是400象素宽,跨度就应该是400×1800秒。

        问:RRA的构建中时间粒度和保存的CDP数有没有规定?
         
        答: 看你要做什么样的图来定义RRA,如果数据库每5分钟获得数据,你想要5分钟时间粒度,一整天的图,那么就是
        RRA:AVERAGE:0.5:1:288
        注意到288意味着保存了288个CDP,要是画图,最佳的水平尺寸是288象素,如果你做400的图,可想而知没有足够的数据,一个CDP就不只是一个象素了,图会有很多平的地方。所以多数人保存的笔数设为400+,不妨600吧。换句话说:你就别主观去定时间跨度了,时间跨度由水平象素和时间粒度的乘积算出来的,不应该是你定的,你要定的是时间粒度和图的尺寸。

        • 0
          点赞
        • 2
          收藏
          觉得还不错? 一键收藏
        • 1
          评论
        评论 1
        添加红包

        请填写红包祝福语或标题

        红包个数最小为10个

        红包金额最低5元

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

        抵扣说明:

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

        余额充值