一、简介
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
2010-11-12 MySQL 依赖另外一个统计出来数据更新表数据的范例