Les précisions de stockages
Graphite, comme toute les bases de métrologie, stocke ses données avec diverses précisions: plus les données sont éloignées, moins elles sont précises, et ce afin de gagner en performance et surtout espace disque.
Définition des précisions de stockage
La définition des différentes précisions se font via le fichier /opt/graphite/conf/storage-schemas.conf.
Il va s'organiser en bloc. Chacun va avoir:
- une règle de pattern d'application. Attention: vu que les métriques sont stockés sous forme de uuid dans Graphite, seuls les noms de métriques seront utilisables ici, pas les noms d'hôtes ou de checks
- une priorité, plus la valeur est haute, moins il est prioritaire
- une règle de retentionrétention: suite de couple précision:durée, qui donne la précision d'un point, et la durée de stockage pour cette précision.
Par exemple:
| Code Block | ||
|---|---|---|
| ||
[ma_precision] pattern = .* retentions = 60s:7d,300s:30d,3600s:180d,86400s:650d |
Va appliquer pour tous les métriques la règle de stockage suivante:
- un point toutes les 60s, sur 7jours7 jours
- un point toutes les 5min, sur 30jours30 jours (
- un point par heure, sur 6mois6 mois
- un point par jour, sur 2 ans
A noter qu'un point coûte 12octets12 octets:
- 4 pour la date ( taille d'un int32 )
- 8 pour la valeur ( taille d'un double64 )
Ici un fichier créé avec cette retention rétention aura donc la taille:
- 60s:7d:
- nombres de points: 7j7 j * 86400s / 60s = 10080 points
- taille= 12o * 10080 = 120ko
- 300s:30d:
- nombre de points : 30j*86400 / 300s = 8640 points
- taille = 12o * 8640 = 103Ko
- 3600s:180d:
- nombre de points : 180j180 j * 86400 / 3600s = 4320points
- taille = 12o * 4320 = 52Ko
- 86400s:650d
- nombre de points : 650j650 j * 86400 / 86400s = 650 points
- taille = 12o * 650 = 8Ko
Soit une Taille totale = 283Ko, par métrique pressente sur le disque.
| Info | ||
|---|---|---|
| ||
Attention: il est important de noter que la précision d'un métrique est prise en compte à la création de ce dernier. Un changement de la configuration de Graphite ne va pas redimensionner tous les métriques présents, mais seulement les nouveaux. |