Persistance AOF
L’illustration montre comment Redis fonctionne avec l’AOF. Une commande client est d’abord exécutée en mémoire pour un accès rapide aux données, puis la commande est écrite dans un fichier sur le disque afin d’assurer une récupération fiable des données en cas de défaillance.
Fonctionnement de l’AOF
Lorsque le mode AOF est activé, chaque commande d’écriture envoyée au serveur est enregistrée dans un fichier. Lors du redémarrage de Redis, les commandes du fichier AOF sont lues et utilisées pour restaurer le jeu de données.
Avec le temps, ce fichier peut devenir très volumineux car il contient tout l’historique des modifications de clés. Pour y remédier, Redis réécrit périodiquement le fichier, supprimant les commandes inutiles et ne conservant que l’état actuel de chaque clé. Par exemple, si l’on utilise une clé nommée total et que l’on modifie sa valeur plusieurs fois, le fichier AOF d’origine pourrait ressembler à ceci :
set total 5
set total 20
set total 45
set total 100
Après la réécriture, Redis ne conservera que la dernière valeur pour la clé :
set total 100
Lorsque Redis ajoute une nouvelle commande au fichier AOF, le système d'exploitation la sauvegarde d'abord dans un tampon avant de l'écrire sur le disque à des intervalles spécifiques. En cas de coupure de courant, les données encore présentes dans le tampon peuvent être perdues. Pour réduire ce risque, Redis vide le tampon chaque seconde par défaut. Il est possible de le configurer pour écrire les données sur le disque immédiatement après chaque commande, mais cela ralentit considérablement les opérations.
Comment activer l'AOF
Pour activer l'AOF, modifier le fichier redis.conf avec les paramètres suivants :
appendonly yes # enable AOF mode
appendfilename "appendonly.aof" # specify the log file name
Lors de la configuration de l'AOF dans Redis, il est possible de choisir la fréquence de synchronisation des données sur le disque. Ce paramètre influence à la fois la performance système et la fiabilité :
appendfsync always– synchronisation après chaque opération (plus lent mais le plus fiable) ;appendfsync everysec– synchronisation toutes les secondes (équilibre optimal entre performance et durabilité) ;appendfsync no– les données restent en mémoire jusqu'à ce qu'elles soient vidées par le système (rapide mais risqué).
Différence entre AOF et RDB
Configuration de la persistance combinée
Il est possible d'activer à la fois RDB et AOF simultanément afin de combiner leurs avantages. Cette méthode offre une sauvegarde fiable (RDB) tout en réduisant la perte de données (AOF).
save 300 10 # RDB: save every 5 minutes if there are 10 changes
appendonly yes # enable AOF
appendfsync everysec # sync to disk every second
Résumé
La persistance dans Redis établit un équilibre entre la performance et la fiabilité des données, permettant de choisir l’approche la mieux adaptée à vos besoins. Si votre priorité est la haute performance, le RDB est le choix idéal. En revanche, si la minimisation de la perte de données est essentielle, l’AOF est plus approprié. Pour ceux qui exigent une fiabilité maximale, l’utilisation conjointe des deux méthodes offre les meilleurs résultats.
1. Quelle méthode de persistance Redis minimise la perte de données ?
2. Quand faut-il utiliser à la fois la persistance RDB et AOF dans Redis ?
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 3.33
Persistance AOF
Glissez pour afficher le menu
L’illustration montre comment Redis fonctionne avec l’AOF. Une commande client est d’abord exécutée en mémoire pour un accès rapide aux données, puis la commande est écrite dans un fichier sur le disque afin d’assurer une récupération fiable des données en cas de défaillance.
Fonctionnement de l’AOF
Lorsque le mode AOF est activé, chaque commande d’écriture envoyée au serveur est enregistrée dans un fichier. Lors du redémarrage de Redis, les commandes du fichier AOF sont lues et utilisées pour restaurer le jeu de données.
Avec le temps, ce fichier peut devenir très volumineux car il contient tout l’historique des modifications de clés. Pour y remédier, Redis réécrit périodiquement le fichier, supprimant les commandes inutiles et ne conservant que l’état actuel de chaque clé. Par exemple, si l’on utilise une clé nommée total et que l’on modifie sa valeur plusieurs fois, le fichier AOF d’origine pourrait ressembler à ceci :
set total 5
set total 20
set total 45
set total 100
Après la réécriture, Redis ne conservera que la dernière valeur pour la clé :
set total 100
Lorsque Redis ajoute une nouvelle commande au fichier AOF, le système d'exploitation la sauvegarde d'abord dans un tampon avant de l'écrire sur le disque à des intervalles spécifiques. En cas de coupure de courant, les données encore présentes dans le tampon peuvent être perdues. Pour réduire ce risque, Redis vide le tampon chaque seconde par défaut. Il est possible de le configurer pour écrire les données sur le disque immédiatement après chaque commande, mais cela ralentit considérablement les opérations.
Comment activer l'AOF
Pour activer l'AOF, modifier le fichier redis.conf avec les paramètres suivants :
appendonly yes # enable AOF mode
appendfilename "appendonly.aof" # specify the log file name
Lors de la configuration de l'AOF dans Redis, il est possible de choisir la fréquence de synchronisation des données sur le disque. Ce paramètre influence à la fois la performance système et la fiabilité :
appendfsync always– synchronisation après chaque opération (plus lent mais le plus fiable) ;appendfsync everysec– synchronisation toutes les secondes (équilibre optimal entre performance et durabilité) ;appendfsync no– les données restent en mémoire jusqu'à ce qu'elles soient vidées par le système (rapide mais risqué).
Différence entre AOF et RDB
Configuration de la persistance combinée
Il est possible d'activer à la fois RDB et AOF simultanément afin de combiner leurs avantages. Cette méthode offre une sauvegarde fiable (RDB) tout en réduisant la perte de données (AOF).
save 300 10 # RDB: save every 5 minutes if there are 10 changes
appendonly yes # enable AOF
appendfsync everysec # sync to disk every second
Résumé
La persistance dans Redis établit un équilibre entre la performance et la fiabilité des données, permettant de choisir l’approche la mieux adaptée à vos besoins. Si votre priorité est la haute performance, le RDB est le choix idéal. En revanche, si la minimisation de la perte de données est essentielle, l’AOF est plus approprié. Pour ceux qui exigent une fiabilité maximale, l’utilisation conjointe des deux méthodes offre les meilleurs résultats.
1. Quelle méthode de persistance Redis minimise la perte de données ?
2. Quand faut-il utiliser à la fois la persistance RDB et AOF dans Redis ?
Merci pour vos commentaires !