https://oss.oetiker.ch/rrdtool/doc/index.en.html
https://oss.oetiker.ch/rrdtool/
RRDtool (轮替型数据库工具, round-robin database tool) 旨在处理时间序列资料,例如网络带宽、温度或CPU负载。 资料储存在环形缓冲区为基底的数据库中,因此系统储存占用量随时间保持恒定。不同于循环制的计算机科学概念。
也包括以图形格式提取循环资料的工具。 绑定编程语言Perl、Python、Ruby、Tcl、PHP和Lua。有一个独立且完整的Java实施称为rrd4j。
https://zh.wikipedia.org/zh-cn/RRDtool
https://github.com/oetiker/rrdtool-1.x
https://oss.oetiker.ch/rrdtool/
RRDTool 是一套监测工具,可用于存储和展示被监测对象随时间的变化情况。比如,我们在 Windows 电脑上常见的内存和 CPU 使用情况:
RRD 全称是 Round Robin Database ,即「环型数据库」。顾名思义,它是一种循环使用存储空间的数据库,适用于存储和时间序列相关的数据。
RRD 数据库在被创建的时候就已经定义好了大小,当空间存储满了以后,又从头开始覆盖旧的数据,所以和其他线性增长的数据库不同,RRD 的大小可控且不用维护。
你可以把 RRD 理解为一个有时间刻度的圆环,每个刻度上可以存储一个数值,同时有一个从圆心指向最新存储值的指针。
可以想象,随着时间推移,指针会绕着圆心一直移动下去,当它指向下一个刻度后,就可以在那个位置上存储一个新的数值。但是,指针只能绕一个方向前进,假设你存储了时刻3的监测值,那就不能再存储时刻2的监测值了。
https://www.jianshu.com/p/b925b1584ab2