Table des matières
Persistance RDB
RDB Snapshot
Avantages et inconvénients de RDB
Persistance AOF
Format de fichier AOF
Avantages et inconvénients de la persistance AOF
La différence entre RDB et AOF
Conclusion
Maison base de données Redis Persistance Redis : introduction et différences entre RDB et AOF

Persistance Redis : introduction et différences entre RDB et AOF

Jun 20, 2023 pm 11:55 PM
redis aof rdb

Redis est une base de données non relationnelle principalement basée sur le stockage en mémoire, ce qui permet à Redis de bien fonctionner dans des scénarios avec une concurrence élevée et des exigences élevées en matière de vitesse de lecture et d'écriture. Cependant, étant donné que Redis stocke les données en mémoire, après une panne ou un redémarrage du serveur, les données précédemment stockées dans la mémoire seront effacées et les données ne seront pas conservées, ce qui peut entraîner de graves problèmes de perte de données. Afin de résoudre ce problème, Redis propose un mécanisme de persistance, utilisant principalement deux stratégies : RDB et AOF. Cet article présentera en détail les mécanismes de persistance RDB et AOF de Redis, ainsi que leurs différences.

Persistance RDB

Le mécanisme de persistance RDB consiste à stocker les données dans la mémoire actuelle de Redis dans un fichier disque. Ce fichier disque peut être un instantané (instantané) ou plusieurs instantanés stockés régulièrement par Redis. Le fichier est enregistré. sur le disque afin que le fichier d'instantané puisse être utilisé pour restaurer les données dans la mémoire du serveur après le redémarrage du serveur Redis.

RDB Snapshot

Lorsque la persistance RDB est sélectionnée, Redis écrira les données à l'heure actuelle sur le disque sous la forme d'un instantané. Ce processus est compressé, Redis peut écrire plusieurs instantanés et l'intervalle entre chaque instantané peut être défini via le fichier de configuration Redis.conf.

Dans Redis.conf, nous pouvons trouver les informations de configuration suivantes :

# 快照持久化相关配置设置
save 900 1  ## 900秒(15分钟)之内至少发生1次数据变更,持久化快照
save 300 10  ## 300秒(5分钟)之内至少发生10次数据变更,持久化快照
save 60 10000  ## 60秒之内至少发生10000次数据变更,持久化快照
Copier après la connexion

La configuration ci-dessus indique que toutes les 15 minutes dans Redis, ou lorsqu'il y a 10 ou 10 000 opérations d'ajout et de suppression de données dans Redis, Redis enregistrera automatiquement les données dans mémoire sur disque.

La méthode d'instantané RDB peut efficacement éviter la perte de données après un temps d'arrêt de Redis et peut également être utilisée pour la sauvegarde de données et à d'autres fins. Cependant, si Redis plante ou redémarre et que les données du dernier fichier d'instantané n'existent pas ou sont incomplètes, les données seront perdues, il est donc recommandé de ne pas définir la durée de l'instantané trop longue.

Avantages et inconvénients de RDB

Avantages de RDB :

  1. La méthode de persistance RDB est basée sur des instantanés, qui peuvent garantir efficacement l'intégrité et la disponibilité des données.
  2. La méthode de persistance RDB a une taille de fichier relativement petite et est facile à stocker.
  3. La méthode de persistance RDB convient à la sauvegarde de données à grande échelle, à la migration et à d'autres scénarios.

Inconvénients de RDB :

  1. La méthode de persistance RDB utilise un seul fichier pour stocker les données. Chaque écriture doit écraser le fichier précédent, ce qui est sujet à la perte de données.
  2. La fréquence de persistance du RDB est déterminée par le temps et la fréquence de modification des données. Une durée trop longue ou une faible fréquence de modification des données entraînera une perte de données.

Persistance AOF

La persistance AOF (Append Only File) consiste à stocker la commande d'écriture sous la forme d'ajout du fichier d'écriture. Au redémarrage du service, Redis effectuera la récupération des données selon les commandes stockées dans ce fichier. La méthode de persistance AOF peut garantir le stockage permanent des données même si Redis est en panne ou redémarré, les données peuvent être récupérées.

Format de fichier AOF

Le format de fichier AOF est un fichier journal de données qui est ajouté au fichier pour chaque opération d'écriture. Chaque ligne d'enregistrement du fichier journal stocke une commande Redis, qui est une transaction Redis complète. Cette transaction sera ajoutée à la fin du fichier journal AOF.

En mode de persistance AOF, Redis écrira chaque nouvelle commande dans le fichier du disque sous forme d'écriture d'ajout, de sorte que la taille du fichier AOF augmente constamment. Lorsque le fichier AOF dépasse la limite de taille prédéfinie, Redis déclenchera automatiquement la réécriture du fichier AOF. Ce processus nettoiera les données expirées dans la base de données et les convertira en un instantané pour le stockage. Le but de la réécriture du fichier AOF est de compresser la taille du fichier AOF, afin d'éviter de réduire les performances de Redis en raison de fichiers AOF trop volumineux.

Avantages et inconvénients de la persistance AOF

Avantages de la méthode de persistance AOF :

  1. Le mécanisme de la méthode de persistance AOF est basé sur l'enregistrement de commandes, qui peut restaurer plus précisément l'historique et la chronologie des modifications de données.
  2. Les fichiers AOF peuvent être enregistrés dans plusieurs fichiers différents. Cette fonctionnalité peut éviter le problème de réduction des performances de lecture et d'écriture causée par un seul fichier trop volumineux.
  3. La méthode de persistance AOF est très adaptée aux statistiques et au traitement des journaux.

Inconvénients de la méthode de persistance AOF :

  1. Les fichiers AOF sont plus volumineux que les fichiers d'instantanés et occupent donc plus de capacité de stockage.
  2. La persistance AOF nécessite plus de ressources système car les commandes doivent être enregistrées dans des fichiers.
  3. La réécriture de fichiers AOF est un processus consommateur de performances, et ce processus affectera les performances de lecture et d'écriture de Redis.

La différence entre RDB et AOF

  1. RDB est une sauvegarde complète, tandis qu'AOF est une sauvegarde incrémentielle.
  2. Par défaut, Redis utilise la persistance RDB et la persistance AOF doit être activée manuellement.
  3. En mode de persistance AOF, Redis enregistrera chaque opération de commande d'écriture et ajoutera de nouveaux enregistrements d'écriture à la fin du journal. En mode de persistance RDB, Redis écrira un instantané des données dans l'état actuel en mémoire sur le disque.
  4. La méthode de persistance AOF est plus sécurisée et fiable, mais la capacité des fichiers AOF est relativement plus grande, tandis que la capacité des fichiers RDB est relativement plus petite.

Conclusion

Le mécanisme de persistance de Redis est conçu pour éviter la perte de données lorsque Redis tombe en panne ou redémarre. La persistance RDB et la persistance AOF sont deux stratégies proposées par Redis. Leur principale différence réside dans la manière d'enregistrer les données et la capacité du fichier de stockage. Lorsque nous utilisons Redis pour le traitement des données, nous pouvons choisir différentes méthodes de persistance en fonction de nos besoins réels, afin que Redis puisse mieux fonctionner en matière de stockage et de récupération de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment construire le mode Cluster Redis Comment construire le mode Cluster Redis Apr 10, 2025 pm 10:15 PM

Le mode Redis Cluster déploie les instances Redis sur plusieurs serveurs grâce à la rupture, à l'amélioration de l'évolutivité et de la disponibilité. Les étapes de construction sont les suivantes: Créez des instances de redis étranges avec différents ports; Créer 3 instances Sentinel, Moniteur Redis Instances et basculement; Configurer les fichiers de configuration Sentinel, ajouter des informations d'instance Redis de surveillance et des paramètres de basculement; Configurer les fichiers de configuration d'instance Redis, activer le mode de cluster et spécifier le chemin du fichier d'informations de cluster; Créer un fichier nœuds.conf, contenant des informations de chaque instance redis; Démarrez le cluster, exécutez la commande CREATE pour créer un cluster et spécifiez le nombre de répliques; Connectez-vous au cluster pour exécuter la commande d'informations de cluster pour vérifier l'état du cluster; faire

Comment effacer les données redis Comment effacer les données redis Apr 10, 2025 pm 10:06 PM

Comment effacer les données Redis: utilisez la commande flushall pour effacer toutes les valeurs de clé. Utilisez la commande flushdb pour effacer la valeur clé de la base de données actuellement sélectionnée. Utilisez SELECT pour commuter les bases de données, puis utilisez FlushDB pour effacer plusieurs bases de données. Utilisez la commande del pour supprimer une clé spécifique. Utilisez l'outil Redis-CLI pour effacer les données.

Comment utiliser la commande redis Comment utiliser la commande redis Apr 10, 2025 pm 08:45 PM

L'utilisation de la directive Redis nécessite les étapes suivantes: Ouvrez le client Redis. Entrez la commande (Verbe Key Value). Fournit les paramètres requis (varie de l'instruction à l'instruction). Appuyez sur Entrée pour exécuter la commande. Redis renvoie une réponse indiquant le résultat de l'opération (généralement OK ou -err).

Comment utiliser Redis Lock Comment utiliser Redis Lock Apr 10, 2025 pm 08:39 PM

L'utilisation des opérations Redis pour verrouiller nécessite l'obtention du verrouillage via la commande setnx, puis en utilisant la commande Expire pour définir le temps d'expiration. Les étapes spécifiques sont les suivantes: (1) Utilisez la commande setnx pour essayer de définir une paire de valeurs de clé; (2) Utilisez la commande Expire pour définir le temps d'expiration du verrou; (3) Utilisez la commande del pour supprimer le verrouillage lorsque le verrouillage n'est plus nécessaire.

Comment lire la file d'attente redis Comment lire la file d'attente redis Apr 10, 2025 pm 10:12 PM

Pour lire une file d'attente à partir de Redis, vous devez obtenir le nom de la file d'attente, lire les éléments à l'aide de la commande LPOP et traiter la file d'attente vide. Les étapes spécifiques sont les suivantes: Obtenez le nom de la file d'attente: Nommez-le avec le préfixe de "Fitre:" tel que "Fitre: My-Quyue". Utilisez la commande LPOP: éjectez l'élément de la tête de la file d'attente et renvoyez sa valeur, telle que la file d'attente LPOP: My-Queue. Traitement des files d'attente vides: si la file d'attente est vide, LPOP renvoie NIL et vous pouvez vérifier si la file d'attente existe avant de lire l'élément.

Comment implémenter le redis sous-jacent Comment implémenter le redis sous-jacent Apr 10, 2025 pm 07:21 PM

Redis utilise des tables de hachage pour stocker les données et prend en charge les structures de données telles que les chaînes, les listes, les tables de hachage, les collections et les collections ordonnées. Redis persiste les données via des instantanés (RDB) et ajoutez les mécanismes d'écriture uniquement (AOF). Redis utilise la réplication maître-esclave pour améliorer la disponibilité des données. Redis utilise une boucle d'événement unique pour gérer les connexions et les commandes pour assurer l'atomicité et la cohérence des données. Redis définit le temps d'expiration de la clé et utilise le mécanisme de suppression paresseux pour supprimer la clé d'expiration.

Comment lire le code source de Redis Comment lire le code source de Redis Apr 10, 2025 pm 08:27 PM

La meilleure façon de comprendre le code source redis est d'aller étape par étape: familiarisez-vous avec les bases de Redis. Sélectionnez un module ou une fonction spécifique comme point de départ. Commencez par le point d'entrée du module ou de la fonction et affichez le code ligne par ligne. Affichez le code via la chaîne d'appel de fonction. Familiez les structures de données sous-jacentes utilisées par Redis. Identifiez l'algorithme utilisé par Redis.

Comment faire du message middleware pour redis Comment faire du message middleware pour redis Apr 10, 2025 pm 07:51 PM

Redis, en tant que Message Middleware, prend en charge les modèles de consommation de production, peut persister des messages et assurer une livraison fiable. L'utilisation de Redis comme Message Middleware permet une faible latence, une messagerie fiable et évolutive.

See all articles