所 谓的“Round Robin” 实际上是一种存储数据的方式,使用固定大小的空间来存储数据,并有一个指针指向最新的数据的位置。咱们能够把用于存储数据的数据库的空间当作一个圆,上面有 不少刻度。这些刻度所在的位置就表明用于存储数据的地方。所谓指针,能够认为是从圆心指向这些刻度的一条直线。指针会随着数据的读写自动移动。要注意的 是,这个圆没有起点和终点,因此指针能够一直移动,而不用担忧到达终点后就没法前进的问题。在一段时间后,当全部的空间都存满了数据,就又从头开始存放。 这样整个存储空间的大小就是一个固定的数值。因此RRDtool 就是使用相似的方式来存放数据的工具, RRDtool 所使用的数据库文件的后缀名是'.rrd。以下图,html
rrd 文件格式大致分为两部分:
1.文件头信息区:数据库
分静态头部,和活动头部两部分。工具
该区域包含一些版本信息和一些于数据存储区相关的一些信息。例如:RRD的版本号,DS数量,DS名称,DS类型,RRA数量,RRA类型,PDP数据区,CDP数据区,最后更新时间,RRA目前更新到的位置等等信息。ui
2.数据存储区:spa
该区域存储了实际的数据。数据的来源是根据在建立RRD文件时DS的类型及相关RRA定义,并经过相关的计算得出的(CF,DST)。注意:数据源(DS)是存储的实体,而RRA是数据存储的载体。在逻辑上,每一个RRA都有全部DS的数据(计算)。 .net
3,文件头部区域(包括:静态头部,DS定义域,RRA定义域,活动头部,PDP数据域,CDP数据域)--------->iii RRA定义域:unix