RRDtool官方版是比较好用的开源数据库,RRDtool官方版能够帮助使用者对对收到的数据进行计算,例如前后两个数据的变化程度(rate of change),并存储该结果。RRDtool最新版根据时间这条精准线路,来通过点点对应,将数据绘制成例图的数据库工具,对于科学实验、数据分析等等需要一定绘图要求的行业,比较有帮助!
软件说明
RRDtool官方版代表 “Round Robin Database tool” ,作者同时也是 MRTG 软件的发明人。
所谓的“Round Robin” 其实是一种存储数据的方式,使用固定大小的空间来存储数据,并有一个指针指向最新的数据的位置。我们可以把用于存储数据的数据库的空间看成一个圆,上面有很多刻度。这些刻度所在的位置就代表用于存储数据的地方。所谓指针,可以认为是从圆心指向这些刻度的一条直线。指针会随着数据的读写自动移动。要注意的是,这个圆没有起点和终点,所以指针可以一直移动,而不用担心到达终点后就无法前进的问题。在一段时间后,当所有的空间都存满了数据,就又从头开始存放。这样整个存储空间的大小就是一个固定的数值。所以RRDtool 就是使用类似的方式来存放数据的工具, RRDtool 所使用的数据库文件的后缀名是'.rrd。
·首先 RRDtool 存储数据,扮演了一个后台工具的角色。但同时 RRDtool 又允许创建图表,这使得RRDtool看起来又像是前端工具。其他的数据库只能存储数据,不能创建图表。
·RRDtool 的每个 rrd 文件的大小是固定的,而普通的数据库文件的大小是随着时间而增加的。
其他数据库只是被动的接受数据, RRDtool 可以对收到的数据进行计算,例如前后两个数据的变化程度(rate of change),并存储该结果。
·RRDtool 要求定时获取数据,其他数据库则没有该要求。如果在一个时间间隔内(heartbeat)没有收到值,则会用 UNKN (unknow)代替,其他数据库则不会这样。
安装说明
1.安装yum源
[root@node1 ~]# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[root@node1 ~]# rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
2.同步时间
[root@node1 ~]# ntpdate 202.120.2.101
3.下载rrdtool的RPM包
[root@node1 ~]# wget ftp://195.220.108.108/linux/centos/6.4/os/x86_64/Packages/rrdtool-1.3.8-6.el6.x86_64.rpm
4.yum安装rrdtool
[root@node1 ~]# yum -y localinstall --nogpgcheck rrdtool-1.3.8-6.el6.x86_64.rpm
5.查看一下安装文件
[root@node1 ~]# rpm -qa | grep rrdtool
rrdtool-1.3.8-6.el6.x86_64
[root@node1 ~]# rpm -ql rrdtool
/usr/bin/rrdcgi
/usr/bin/rrdtool#命令行工具
/usr/bin/rrdupdate
/usr/lib64/librrd.so.4#下面是库文件
/usr/lib64/librrd.so.4.0.7
/usr/lib64/librrd_th.so.4
/usr/lib64/librrd_th.so.4.0.7
/usr/share/man/man1/bin_dec_hex.1.gz#下面是帮助文档
/usr/share/man/man1/cdeftutorial.1.gz
/usr/share/man/man1/rpntutorial.1.gz
/usr/share/man/man1/rrd-beginners.1.gz
/usr/share/man/man1/rrdbuild.1.gz
/usr/share/man/man1/rrdcgi.1.gz
/usr/share/man/man1/rrdcreate.1.gz
/usr/share/man/man1/rrddump.1.gz
/usr/share/man/man1/rrdfetch.1.gz
/usr/share/man/man1/rrdfirst.1.gz
/usr/share/man/man1/rrdgraph.1.gz
/usr/share/man/man1/rrdgraph_data.1.gz
/usr/share/man/man1/rrdgraph_examples.1.gz
/usr/share/man/man1/rrdgraph_graph.1.gz
/usr/share/man/man1/rrdgraph_rpn.1.gz
/usr/share/man/man1/rrdinfo.1.gz
/usr/share/man/man1/rrdlast.1.gz
/usr/share/man/man1/rrdlastupdate.1.gz
/usr/share/man/man1/rrdresize.1.gz
/usr/share/man/man1/rrdrestore.1.gz
/usr/share/man/man1/rrdthreads.1.gz
/usr/share/man/man1/rrdtool.1.gz
/usr/share/man/man1/rrdtune.1.gz
/usr/share/man/man1/rrdtutorial.1.gz
/usr/share/man/man1/rrdupdate.1.gz
/usr/share/man/man1/rrdxport.1.gz
/usr/share/rrdtool
6.查看一下命令行工具
[root@node1 ~]# rrdtool -h
RRDtool 1.3.8 Copyright 1997-2009 by Tobias Oetiker
Compiled Aug 21 2010 10:57:18
Usage: rrdtool [options]command command_options
Valid commands: create, update, updatev, graph, graphv, dump, restore,
last, lastupdate, first, info, fetch, tune,
resize, xport
RRDtool is distributed under the Terms of the GNU General
Public License Version 2. (www.gnu.org/copyleft/gpl.html)
For moreinformation
readthe RRD manpages
更新日志
Bug修复
*更新了Makefile,以将所有需要的文件正确地包含到发行版tar中
*清理了编译器警告
*在MinGW环境中改进的编译
*使用rrdcached 修复不存在的RRD文件上的segfault
*修复rrdtool xport 的边界处理,文档编制和检查
*修复了gprint中json / xml 的%s /%S单位自动缩放
*优化的PDP计算