Mostly for my own documentation purposes. This is how you do the math to calculate database sizes when you change the steps to something other than the default in smokeping.
#########################
*** Database ***
step = 30
pings = 20
# consfn mrhb steps total
AVERAGE 0.5 1 20160 #7-day worth 30-second avg
AVERAGE 0.5 10 8640 #30-day worth 5-minute avg
AVERAGE 0.5 30 38400 #400-day worth 15-minute avg
MIN 0.5 10 8640
MAX 0.5 10 8640
MIN 0.5 30 38400
MAX 0.5 30 38400
#########################
Math here:
step x #ofSteps x Y = length of database in seconds
(#ofSteps is a multiple of your step adding up to how granular you want
your data to be. In my case 30s=1, 2m=4, 5m=10, etc)
To calculate for 7 days worth of 30 second averages:
30 x 1 x Y = 7days x 24h/day x 60m/hour x 60s/min
(translated to)
30 x 1 x Y = 7 x 24 x 60 x 60
(30 x Y = 604800) or (Y = 604800/30) or 20160