[rrd-users] How are the updates to an RRD file written to disk?

Andy Fleming afleming at kanren.net
Fri Oct 1 16:59:29 CEST 2010

This is actually a followup to a question one of my co-workers posted 
last week.  I think what I was really wanting to know might have gotten 
lost in the translation.  I'm not really worried about memory or CPU, 
but rather Disk I/O.  I got burned bad before when a former co-worker 
went graph crazy.

When an existing RRD file is updated, it is of course the same size file 
before and after the update.  However, how is the file actually 
updated/written.  Is it the case that only the new value is written in 
the file, overwriting the previous value and some sort of pointer updated.


Is the entire RRD file re-written each time its updated?  Beyond how, 
how about when a consolidation occurs?  I realize this might depend on 
version of RRD tool, how its compiled, OS, etc, but hopefully you all 
can give me a little insight.

I realize that a lot of you are saying rrdcache helps, but when working 
within a product with a support contract (even if its open source), 
sometimes one has to wait till the vendor implements it.  I think in 
this case since we are using Zenoss Enterprise with a support contract, 
I'm going to have to do any tuning, etc via the OS and Disk Sub-System 
for now and not count on being able to use rrdcache.

Thanks for any thoughts or insights you all might have.


Andy Fleming - RHCE
Sr Systems Administrator
Kansas Research and Education Network
afleming at kanren.net
Office: 785-856-9800 x 201

  - Advanced Network Solutions for the Research and Education Community

More information about the rrd-users mailing list