Comment puis-je résoudre un problème de fichier de sauvegarde Redis (.rdb) dont la taille est inférieure à la métrique BytesUsedForCache du cluster ElastiCache pour Redis que j’ai moi-même créé ?

Lecture de 3 minute(s)
0

Je souhaite résoudre un problème de fichier de sauvegarde Redis (.rdb) dont la taille est inférieure à la métrique BytesUsedForCache du cluster ElastiCache pour Redis que j’ai moi-même créé ?

Résolution

La métrique BytesUsedForCache inclut les octets correspondant à tous les usages, y compris la taille réelle des clés, les en-têtes et la fragmentation de la mémoire. De plus, les clés expirées consomment également de la mémoire jusqu’à ce que Redis les supprime de manière asynchrone, passive ou active. Pour en savoir plus, consultez la page EXPIRE du site Web Redis.

ElastiCache utilise des processus de sauvegarde avec ou sans embranchement qui déchargent toutes les clés du disque pour créer votre fichier .rdb. Il se peut que votre fichier .rdb soit plus petit que la métrique BytesUsedForCache, car il n’utilise pas de pointeurs ni de clés expirées. Le fichier n’inclut pas non plus la fragmentation de la mémoire, les métadonnées et les tampons.

Par exemple, supposons que votre cluster Redis affiche une valeur de 15 Gio pour BytesUsedForCache. Si votre sauvegarde a été lancée à la suite de nombreuses demandes de lecture et d’écriture, la taille du cache peut être comprise entre 10 et 12 Gio. Cela est dû au fait que la sauvegarde n’inclut pas les clés expirées, les pointeurs, la fragmentation de la mémoire, les métadonnées et les tampons.

Pour vérifier l’intégrité des données de votre sauvegarde, utilisez les commandes Redis Keyspace ou DBSIZE. Pour en savoir plus, consultez les pages Keyspace et DBSIZE du site Web Redis. Comparez le nombre de clés du cluster d’origine et du cluster restauré aux valeurs du fichier .rdb. Assurez-vous qu’aucune action d’insertion, de suppression ou d’éviction de clé n’a eu lieu entre la création et la restauration de l’instantané. Pour en savoir plus, consultez la page Why does my replica have a different number of keys than its master instance? du site Web Redis.

Remarque : la taille du cache dans les sauvegardes ElastiCache est basée sur le paramètre Redis used_memory défini au moment de l’instantané. Il s’agit d’une estimation de la taille du cache non compressé. Pour en savoir plus, consultez la page INFO du site Web Redis. Si vous exportez un instantané de sauvegarde vers Amazon Simple Storage Service (Amazon S3), la taille du fichier sérialisé compressé est exportée.

Informations connexes

Instantané et restauration

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 10 mois