[rrd-users] Scaling rrd tables for best performance

Simon Hobson linux at thehobsons.co.uk
Thu Dec 6 16:18:18 CET 2007

Eduardo M. Bragatto wrote:

>I can have each server information store on a "server.rrd" file, like:
>server1.rrd, server2.rrd, etc...
>Or have it split among several rrd files for the same server, like:
>server1_cpu.rrd, server1_mem.rrd, server1_network.rrd,
>server1_generic.rrd, server2_cpu.rrd, etc...

 From a simple practicality perspective, the latter would be quite 
hard to maintain. Each time you add or delete a server you will have 
to redefine your rrd and change the collection routines to suit. 
Also, you cannot update DSs independently in one rrd.

So as a minimum, you would probably be best keeping one rrd per 
server. Also, since the number of data volumes/partitions/filesystems 
is likely to vary between servers, I'd personally be inclined to have 
a separate rrd for each so that the rrds are of a standard format.

If you are graphing multiple systems on one graph then I suspect 
there isn't too much difference in memory requirements between 
opening one big rrd and multiple smaller rrds with the same 
information. However, if you want to graph an individual system, then 
I find it hard to imagine opening/processing a big rrd (and using 
only part of it's data) to be more efficient than opening/processing 
a smaller one.

More information about the rrd-users mailing list