一、简介
RRDtool是指Round Robin Database工具,即环状数据库。从功能上说,RRDtool可用于数据存储+数据展示。著名的网络流量绘图软件MRTG和集群监控系统Ganglia都使用的RRDtool。
数据存储方面,RRDtool采用“Round Robin”模式存储数据。所谓“Round Robin”是一种存储数据的方式,使用固定大小的空间来存储数据,并有指针指向最新的数据的位置。我们可以把用于存储数据的数据库空间看成一个圆,上面有很多刻度,这些刻度所在的位置就代表用于存储数据的地方。所谓指针,可以认为是从圆心指向这些刻度的一条线。指针会随着数据的读写自动移动。要注意的是,这个圆没有起点和终点,所以指针可以一直移动,而不担心到达终点后无法继续写入的问题。在一段时间后,当所有的空间都存满数据,就又从头开始存放。这样整个存储空间的大小就是一个固定的数值。RRDtool所使用数据库文件的后缀名是“.rrd”。
数据展示方面,RRDtool可以看作是一个强大的绘图引擎。下图是其官网(http://oss.oetiker.ch/rrdtool/)上的一张效果图,我们大致了解RRDtool的绘图能力。
二、安装
转自:http://www.cnblogs.com/smallcoderhujin/p/3796599.html
1.通过yum 安装,rrdtool版本1.3.8
#yum install -y rrdtool
#yum install -y gcc #yum install -y rrdtool-python
2.安装最新版本 1.4.7
# wget http://pkgs.repoforge.org/rrdtool/rrdtool-devel-1.4.7-1.el6.rfx.x86_64.rpm # wget http://pkgs.repoforge.org/rrdtool/rrdtool-1.4.7-1.el6.rfx.x86_64.rpm # wget http://pkgs.repoforge.org/rrdtool/perl-rrdtool-1.4.7-1.el6.rfx.x86_64.rpm # wget http://pkgs.repoforge.org/rrdtool/python-rrdtool-1.4.7-1.el6.rfx.x86_64.rpm
安装下列辅助工具
#yum install libdbi ruby xorg-x11-fonts-Type1 -y #yum install perl-Time-HiRes perl-TermReadKey -y
卸载旧版本
# yum erase rrdtool -y
正式安装
# rpm -Uvh perl-rrdtool-1.4.7-1.el6.rfx.x86_64.rpm python-rrdtool-1.4.7-1.el6.rfx.x86_64.rpm rrdtool-1.4.7-1.el6.rfx.x86_64.rpm rrdtool-devel-1.4.7-1.el6.rfx.x86_64.rpm
三、使用Golang操作 RRD
来源:http://www.jingzhaoyang.com/?p=354#more-354
这时候我们可以用下面的第三方库: https://github.com/ziutek/rrd/
参考资料:
RRDtool的用法(结合实例)
http://speakingbaicai.blog.51cto.com/5667326/1323464