Introduction à la méthode AOF
AOF (Append Only File) est une technique de persistance dans Redis qui journalise chaque opération d'écriture dans un fichier journal. Contrairement à la méthode RDB qui crée des instantanés périodiques, AOF enregistre les commandes au fur et à mesure de leur exécution.
Avantages et inconvénients
Avantages : La sécurité des données est améliorée par rapport à RDB, car les opérations sont loguées de manière plus granulaire. En cas de panne, la perte de données est minimale.
Inconvénients : Les performances peuvent être affectées, car chaque écriture entraîne une synchronisation avec le disque, ce qui augmente la latence par rapport aux snapshots RDB.
Étapes de configuraton
Pour activer AOF, modifiez le fichier de configuration Redis (redis.conf). Recherchez et ajustez les paramètres suivants :
# Activer AOF (changer 'no' en 'yes')
appendonly yes
# Nom du fichier journal (par défaut : appendonly.aof)
appendfilename "appendonly.aof"
# Stratégie de synchronisation
appendfsync always
# appendfsync everysec
# appendfsync no
La stratégie always synchronise les données sur le disque à chaque modification, offrant une sécurité maximale. everysec synchronise une fois par seconde, tandis que no laisse le système d'exploitation gérer la synchronisation.
Exemple pratique
Après avoir configuré AOF, redémarrez le serveur Redis pour appliquer les changements :
# Arrêter et relancer Redis
sudo systemctl restart redis-server
# Vérifier l'état
redis-cli ping
Insérez quelques données dans Redis :
redis-cli SET donnees1 "valeur_initiale"
redis-cli SET donnees2 "valeur_secondaire"
Après l'arrêt propre du serveur (redis-cli shutdown), vérifiez la présence du fichier AOF dans le répertoire de données de Redis (par exemple, /var/lib/redis). Un fichier nommé appendonly.aof devrait apparaître.
Test de récupération de données
Pour simuler une récupération, déplacez le fichier AOF vers un autre emplacement, par exemple /home/utilisateur/, puis redémarrez Redis sans le fichier. Les données seront absentes :
# Déplacer le fichier AOF
sudo mv /var/lib/redis/appendonly.aof /home/utilisateur/
# Redémarrer Redis et vérifier
redis-cli KEYS *
Restaurez les données en copiant le fichier AOF de sauvegarde vers le répertoire Redis et en redémarrant le service :
# Copier le fichier de sauvegarde
sudo cp /home/utilisateur/appendonly.aof /var/lib/redis/
# Redémarrer et vérifier la récupération
redis-cli KEYS *
Les clés précédemment créées devraient réapparaître, démontrant l'efficacité de la sauvegarde AOF pour la restauration des données.