1st: I&#39;m a huge fan of rrd. Thanks Tobias!<br>2nd: After hearing some various gripes about rrd from colleagues, I came upon this reasoning for a metrics collection project who started with RRD as its data store, then found a lack and so created its own:<br>

<br><a href="http://graphite.wikidot.com/">http://graphite.wikidot.com/</a><br><br>Their reasons for not using rrd is, (from <a href="http://graphite.wikidot.com/faq#toc8">http://graphite.wikidot.com/faq#toc8</a>) - <br>
<br>
&quot;The first reason is that RRD is designed under the assumption that data
will always be inserted into the database on a regular basis, and this
assumption causes RRD behave undesirably when given irregularly
occurring data. Graphite was built to facilitate visualization of
various application metrics that do not always occur regularly, like
when an uncommon request is handled and the latency is measured and
sent to Graphite. Using RRD, the data gets put into a temporary area
inside the database where it is not accessible until the current time
interval has passed _and_ another value is inserted into the database
for the following interval. If that does not happen within an allotted
period of time, the original data point will get overwritten and is
lost. Now for some metrics, the lack of a value can be correctly
interpreted as a value of zero, however this is not the case for
metrics like latency because a zero indicates that work was done in
zero time, which is different than saying no work was done. Assuming a
zero value for latency also screws up analysis like calculating the
average latency, etc.&quot; <br><br>Is this still the case? IIRC, missing data due to irregularity isn&#39;t an issue, given the right resolution in the definitions, right? <br clear="all"><br>-- <br>John <br><br>